[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fjOUMdQ8DULVmoLGNojP7x4rcuhJVtjH7tZfjpEsSA0c":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":34,"analysis":35,"fingerprints":78},"subscription-widget-for-sendgrid","Subscription Widget for SendGrid","1.0","leaderinternet","https:\u002F\u002Fprofiles.wordpress.org\u002Fleaderinternet\u002F","\u003Cp>SG Widget is a Sendgrid Subscription Widget that makes it easy to collect emails on your website. Just add a shortcode to capture emails that get stored in your Sendgrid contact lists.\u003C\u002Fp>\n\u003Cp>The widget is designed specifically for Sendgrid and integrates perfectly with Marketing Campaigns.\u003C\u002Fp>\n\u003Cp>After entering their email address, users will receive a double opt in email to confirm their subscription. The email template can be customsed to match your brand and additional form fields can be added that allows more information to be collected.\u003C\u002Fp>\n\u003Cp>Simple analytics are provided in SG Widget to track the number of subscribers so you can see which widget is performing best.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Designed For SendGrid\u003C\u002Fli>\n\u003Cli>Double Opt In\u003C\u002Fli>\n\u003Cli>Customisable\u003C\u002Fli>\n\u003Cli>Extra Form Fields\u003C\u002Fli>\n\u003Cli>Welcome Emails\u003C\u002Fli>\n\u003Cli>Consent Checkbox\u003C\u002Fli>\n\u003Cli>Analytics\u003C\u002Fli>\n\u003Cli>Compliant\u003C\u002Fli>\n\u003Cli>Multilingual\u003C\u002Fli>\n\u003Cli>Fast\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>How it works:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create an \u003Ca href=\"https:\u002F\u002Fsgwidget.com\" rel=\"nofollow ugc\">SG Widget\u003C\u002Fa> account\u003C\u002Fli>\n\u003Cli>Create a widget in SG Widget\u003C\u002Fli>\n\u003Cli>Enter the widget ID in the shortcode\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Privacy And Security:\u003C\u002Fp>\n\u003Cp>SG Widget \u003Cstrong>does not\u003C\u002Fstrong> store personal data for subscribers that enter their email address.\u003C\u002Fp>\n\u003Cp>Read our \u003Ca href=\"https:\u002F\u002Fsgwidget.com\u002Fprivacy\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fsgwidget.com\u002Fterms\" rel=\"nofollow ugc\">Terms\u003C\u002Fa> for more information.\u003C\u002Fp>\n","SG Widget is a Sendgrid Subscription Widget for collecting emails. Just add a shortcode to capture emails and store them in your Sendgrid Account.",0,277,"2025-05-03T00:05:00.000Z","6.8.5","4.0","7.4",[18,19,20,21,22],"double-opt-in-sendgrid","sendgrid-subscribe-form","sendgrid-subscription-widget","sendgrid-unsubscribe-link","sendgrid-widget","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsubscription-widget-for-sendgrid.1.0.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},1,30,94,"2026-04-05T20:25:22.569Z",[],{"attackSurface":36,"codeSignals":60,"taintFlows":68,"riskAssessment":69,"analyzedAt":77},{"hooks":37,"ajaxHandlers":52,"restRoutes":53,"shortcodes":54,"cronEvents":59,"entryPointCount":30,"unprotectedCount":11},[38,44,48],{"type":39,"name":40,"callback":41,"file":42,"line":43},"action","wp_enqueue_scripts","sg_widget_register_scripts","subscription-widget-for-sendgrid.php",34,{"type":39,"name":45,"callback":46,"file":42,"line":47},"admin_menu","sg_widget_add_admin_menu",145,{"type":39,"name":49,"callback":50,"file":42,"line":51},"admin_init","sg_widget_settings_init",173,[],[],[55],{"tag":56,"callback":57,"file":42,"line":58},"sg_widget","sg_widget_shortcode",142,[],{"dangerousFunctions":61,"sqlUsage":62,"outputEscaping":64,"fileOperations":11,"externalRequests":30,"nonceChecks":11,"capabilityChecks":11,"bundledLibraries":67},[],{"prepared":11,"raw":11,"locations":63},[],{"escaped":65,"rawEcho":11,"locations":66},4,[],[],[],{"summary":70,"deductions":71},"The \"subscription-widget-for-sendgrid\" plugin v1.0 exhibits a generally strong security posture based on the provided static analysis. The absence of dangerous functions, the exclusive use of prepared statements for SQL queries, and proper output escaping for all identified outputs are positive indicators. Furthermore, the plugin has no recorded vulnerability history, which suggests a good track record and potentially a well-maintained codebase.\n\nHowever, there are a few areas that warrant attention. The lack of nonce checks and capability checks, especially given the presence of a shortcode, raises a potential concern. While the static analysis did not identify any exploitable flows or vulnerabilities, the absence of these security mechanisms means that if the shortcode were to handle sensitive data or perform critical actions, it could be susceptible to cross-site request forgery (CSRF) or unauthorized access if not properly handled by the WordPress core or other security layers. The single external HTTP request also presents a potential, albeit low, risk if the target endpoint were compromised or if data were not handled securely during the request.\n\nIn conclusion, the plugin demonstrates good core security practices in areas like SQL and output handling, and its clean vulnerability history is commendable. Nevertheless, the missing nonce and capability checks on the shortcode represent a weakness that could be exploited under certain circumstances, and the external HTTP request should be monitored for secure implementation. Addressing these points would further strengthen the plugin's security.",[72,75],{"reason":73,"points":74},"Missing nonce checks",5,{"reason":76,"points":74},"Missing capability checks","2026-03-17T06:24:41.099Z",{"wat":79,"direct":87},{"assetPaths":80,"generatorPatterns":82,"scriptPaths":83,"versionParams":85},[81],"\u002Fwp-content\u002Fplugins\u002Fsubscription-widget-for-sendgrid\u002Fsubscription-widget-for-sendgrid.php",[],[84],"https:\u002F\u002Fapp.sgwidget.com\u002Fjs\u002Fsg-widget-v2.js",[86],"sg-widget-v2.js?ver=2.0",{"cssClasses":88,"htmlComments":90,"htmlAttributes":91,"restEndpoints":97,"jsGlobals":98,"shortcodeOutput":99},[89],"sg-widget-subscribe-form",[],[92,93,94,95,96],"data-emailerror","data-nameerror","data-checkboxerror","data-customfieldserror","data-token",[],[],[100,101,102],"[sg_widget id=\"","Error: No ID provided for sg_widget shortcode.","Error: Unable to retrieve widget data."]