[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fFpyg18W0FlyV2_xov88G9rO7z62_SPZBrVjPkXhRCcA":3,"$f4Y8Q7k-TQhjbe-q7or1rVVVHS_OfcAauyJ6wtmo61Wg":102,"$f-nBJPXxRhtRXHnvEI1mYrhdUA8ryXDEpW49Rfe3M7vA":107},{"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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":15,"requires_php":15,"tags":16,"homepage":17,"download_link":18,"security_score":19,"vuln_count":13,"unpatched_count":13,"last_vuln_date":20,"fetched_at":21,"discovery_status":22,"vulnerabilities":23,"developer":24,"crawl_stats":20,"alternatives":30,"analysis":31,"fingerprints":81},"coppermine-badge-widget","TTC Coppermine Badge Widget","1.0","ljmacphee","https:\u002F\u002Fprofiles.wordpress.org\u002Fljmacphee\u002F","\u003Cp>Create a badge of your most recent Coppermine gallery photos in your sidebar\u003C\u002Fp>\n","Create a badge of your most recent Coppermine gallery photos in your sidebar",10,2852,0,"2007-12-17T23:29:00.000Z","",[],"http:\u002F\u002Fherselfswebtools.com\u002F2007\u002F12\u002Fcoppermine-badge-widget-for-wp.html","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcoppermine-badge-widget.zip",85,null,"2026-04-06T09:54:40.288Z","no_bundle",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":25,"total_installs":26,"avg_security_score":19,"avg_patch_time_days":27,"trust_score":28,"computed_at":29},6,80,30,84,"2026-07-15T06:26:57.638Z",[],{"attackSurface":32,"codeSignals":44,"taintFlows":69,"riskAssessment":70,"analyzedAt":80},{"hooks":33,"ajaxHandlers":40,"restRoutes":41,"shortcodes":42,"cronEvents":43,"entryPointCount":13,"unprotectedCount":13},[34],{"type":35,"name":36,"callback":37,"file":38,"line":39},"action","widgets_init","ttc_coppermine_badge_init","ttc_coppermine_badge_widget.php",156,[],[],[],[],{"dangerousFunctions":45,"sqlUsage":46,"outputEscaping":48,"fileOperations":13,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":68},[],{"prepared":13,"raw":13,"locations":47},[],{"escaped":13,"rawEcho":49,"locations":50},8,[51,54,56,58,60,62,64,66],{"file":38,"line":52,"context":53},51,"raw output",{"file":38,"line":55,"context":53},52,{"file":38,"line":57,"context":53},53,{"file":38,"line":59,"context":53},54,{"file":38,"line":61,"context":53},90,{"file":38,"line":63,"context":53},140,{"file":38,"line":65,"context":53},141,{"file":38,"line":67,"context":53},142,[],[],{"summary":71,"deductions":72},"The 'coppermine-badge-widget' plugin, version 1.0, exhibits a very limited attack surface with no identified entry points in the static analysis. This, combined with the absence of known vulnerabilities and a clean vulnerability history, suggests a potentially robust security posture at first glance. The plugin also utilizes prepared statements for all SQL queries, which is a strong security practice against SQL injection. However, a significant concern arises from the complete lack of output escaping for all eight identified output points. This means that any data rendered by the widget, if it originates from user input or external sources, could be vulnerable to cross-site scripting (XSS) attacks.\n\nThe static analysis did not reveal any dangerous functions, file operations, external HTTP requests, or taint flows, which are positive indicators. The lack of nonce and capability checks across the entire plugin, while mitigated by the absence of AJAX handlers and REST API routes, still represents a potential area for future vulnerability if such features were to be added without proper security considerations. Given the current version and analysis, the primary risk is XSS due to unescaped output. While the plugin has no recorded history of vulnerabilities, this can be attributed to its limited scope and lack of complex features. The absence of critical or high severity issues in static analysis and history is reassuring, but the unescaped output is a notable weakness that needs addressing.",[73,75,78],{"reason":74,"points":49},"All output is unescaped",{"reason":76,"points":77},"No nonce checks present",5,{"reason":79,"points":77},"No capability checks present","2026-03-17T01:29:41.130Z",{"wat":82,"direct":87},{"assetPaths":83,"generatorPatterns":84,"scriptPaths":85,"versionParams":86},[],[],[],[],{"cssClasses":88,"htmlComments":89,"htmlAttributes":90,"restEndpoints":99,"jsGlobals":100,"shortcodeOutput":101},[],[],[91,92,93,94,95,96,97,98],"id=\"ttc_coppermine_badge-title\"","name=\"ttc_coppermine_badge-title\"","id=\"ttc_coppermine_badge-thumbnails\"","name=\"ttc_coppermine_badge-thumbnails\"","id=\"ttc_coppermine_badge-random\"","name=\"ttc_coppermine_badge-random\"","id=\"ttc_coppermine_badge-submit\"","name=\"ttc_coppermine_badge-submit\"",[],[],[],{"error":103,"url":104,"statusCode":105,"statusMessage":106,"message":106},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fcoppermine-badge-widget\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":13,"versions":108},[]]