[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fLCbS2FInY_3CiiwDUjNbp9NPA3CqTfBTbZGKHY8NpBQ":3,"$f4Loef4KSC8BiAat25LlK_1hS70fbj1rDT2ejLlLinYU":124,"$fgeCi32CnuTQsZSuMwUmli6CNXvWm1g8XxGdGpszJSgM":129},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":20,"download_link":21,"security_score":22,"vuln_count":23,"unpatched_count":23,"last_vuln_date":24,"fetched_at":25,"discovery_status":26,"vulnerabilities":27,"developer":28,"crawl_stats":24,"alternatives":34,"analysis":35,"fingerprints":106},"message-trigger","Message Trigger","1.1","bravokeyl","https:\u002F\u002Fprofiles.wordpress.org\u002Fbravokeyl\u002F","\u003Cp>Using this plugin we can easily add notifications\u002Fmessages at the top \u002F bottom \u002F after content section of the post.\u003C\u002Fp>\n","Using this plugin we can easily add notifications\u002Fmessages at the top \u002F bottom \u002F after content section of the post.",10,1801,100,1,"2016-01-14T12:00:00.000Z","4.4.34","3.6","",[],"http:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmessage-trigger","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmessage-trigger.1.1.zip",85,0,null,"2026-03-15T15:16:48.613Z","no_bundle",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":22,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},2,4010,30,84,"2026-05-19T21:56:37.947Z",[],{"attackSurface":36,"codeSignals":81,"taintFlows":98,"riskAssessment":99,"analyzedAt":105},{"hooks":37,"ajaxHandlers":77,"restRoutes":78,"shortcodes":79,"cronEvents":80,"entryPointCount":23,"unprotectedCount":23},[38,44,48,53,56,59,63,69,73],{"type":39,"name":40,"callback":41,"file":42,"line":43},"action","add_meta_boxes","mt_add_meta_box","admin\\class-MT_MessageTrigger.php",14,{"type":39,"name":45,"callback":46,"file":42,"line":47},"save_post","mt_save_meta",15,{"type":39,"name":49,"callback":50,"file":51,"line":52},"load-post.php","mt_init","admin\\message-trigger-admin.php",8,{"type":39,"name":54,"callback":50,"file":51,"line":55},"load-post-new.php",9,{"type":39,"name":57,"callback":58,"file":51,"line":47},"admin_menu","mt_plugin_page",{"type":39,"name":60,"callback":61,"file":51,"line":62},"admin_init","mt_admin_init",33,{"type":64,"name":65,"callback":66,"file":67,"line":68},"filter","the_content","mt_add_message","public\\message-trigger-public.php",12,{"type":39,"name":70,"callback":71,"file":67,"line":72},"wp_head","mt_header",25,{"type":39,"name":74,"callback":75,"file":67,"line":76},"wp_footer","mt_footer",26,[],[],[],[],{"dangerousFunctions":82,"sqlUsage":83,"outputEscaping":85,"fileOperations":23,"externalRequests":23,"nonceChecks":14,"capabilityChecks":14,"bundledLibraries":97},[],{"prepared":23,"raw":23,"locations":84},[],{"escaped":86,"rawEcho":86,"locations":87},4,[88,91,93,95],{"file":51,"line":89,"context":90},51,"raw output",{"file":51,"line":92,"context":90},58,{"file":67,"line":94,"context":90},32,{"file":67,"line":96,"context":90},40,[],[],{"summary":100,"deductions":101},"The 'message-trigger' v1.1 plugin exhibits a generally strong security posture based on the provided static analysis and vulnerability history. The complete absence of known CVEs and a clean vulnerability history suggest a mature and well-maintained plugin, or one that has not been a target of significant vulnerability research.  Furthermore, the code analysis reveals no identified dangerous functions, SQL injection risks (all queries use prepared statements), file operations, or external HTTP requests, all of which are positive indicators. The presence of both nonce and capability checks, even with a limited attack surface, demonstrates a commitment to basic security practices.\n\nHowever, there is a notable concern regarding output escaping. With 8 total outputs analyzed, 50% were not properly escaped. This presents a potential Cross-Site Scripting (XSS) vulnerability if any of the unescaped output originates from user-supplied data or other untrusted sources. The lack of any identified Taint Analysis flows is positive, but it's important to remember that static analysis tools may not always identify all potential taint paths, especially in complex scenarios.  The total absence of entry points (AJAX, REST API, shortcodes, cron) is unusual for a functional plugin and could indicate it's either very limited in scope or the analysis did not capture its operational mechanisms fully. If the plugin *does* have functional entry points not detected, those would represent an unknown attack surface. Despite the output escaping concern, the plugin's overall history and other code signals paint a picture of a relatively secure plugin, but the XSS risk should be addressed.",[102],{"reason":103,"points":104},"Half of output is unescaped",5,"2026-03-17T00:45:46.644Z",{"wat":107,"direct":112},{"assetPaths":108,"generatorPatterns":109,"scriptPaths":110,"versionParams":111},[],[],[],[],{"cssClasses":113,"htmlComments":115,"htmlAttributes":116,"restEndpoints":120,"jsGlobals":121,"shortcodeOutput":122},[114,71,75],"mt-notification",[],[117,118,119],"id=\"message-trigger-post\"","id=\"mt_header\"","id=\"mt_footer\"",[],[],[123],"\u003Cdiv id=\"message-trigger-post\" class=\"mt-notification\">",{"error":125,"url":126,"statusCode":127,"statusMessage":128,"message":128},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fmessage-trigger\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":23,"versions":130},[]]