[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fmnt1qcNJ8rlwlgLKt8oOIS3XfnPTLW4NZ69VNqDsKL0":3},{"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":15,"tags":18,"homepage":19,"download_link":20,"security_score":13,"vuln_count":21,"unpatched_count":21,"last_vuln_date":22,"fetched_at":23,"vulnerabilities":24,"developer":25,"crawl_stats":22,"alternatives":33,"analysis":34,"fingerprints":67},"theme-roulette","Theme Roulette","1.0.9","Adam Silverstein","https:\u002F\u002Fprofiles.wordpress.org\u002Fadamsilverstein\u002F","\u003Cp>Randomly changes your site theme 🙂 Changes theme on the admin side as well, for extra fun! Configurable with filters!\u003C\u002Fp>\n\u003Cp>Chooses from installed themes, and switches to a random one on 50% of page loads (by default). If you have fewer than 50 themes, installs a new theme chosen at random from the top themes on the WordPress.org directory.\u003C\u002Fp>\n\u003Cp>\u003Cem>Filterz!\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>thmr_max_themes_to_install:\u003Cbr \u002F>\nInstalls max 50 themes (over time) by default. Use the ‘thmr_max_themes_to_install’ filter to adjust the maximum number of themese this plugin will install.\u003C\u002Fp>\n\u003Cp>thmr_times_to_switch_out_of_ten:\u003Cbr \u002F>\nSwitches the theme 5 out of 10 loads (50 %) – adjust this setting with the ‘thmr_times_to_switch_out_of_ten’ filter.\u003C\u002Fp>\n\u003Cp>thmr_dont_show_on_admin\u003Cbr \u002F>\nUse the ‘thmr_dont_show_on_admin’ to disable on the admin side (__return_true to turn off).\u003C\u002Fp>\n\u003Cp>WARNING: This plugin may bring your site down – use at your own risk!\u003C\u002Fp>\n","A random theme at random times. Inspired by logout roulette.",10,2804,100,1,"","5.5.18","3.9",[],"http:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftheme-roulette","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ftheme-roulette.1.0.9.zip",0,null,"2026-03-15T10:48:56.248Z",[],{"slug":26,"display_name":7,"profile_url":8,"plugin_count":27,"total_installs":28,"avg_security_score":29,"avg_patch_time_days":30,"trust_score":31,"computed_at":32},"adamsilverstein",7,11810,89,30,86,"2026-04-04T10:02:11.023Z",[],{"attackSurface":35,"codeSignals":55,"taintFlows":62,"riskAssessment":63,"analyzedAt":66},{"hooks":36,"ajaxHandlers":43,"restRoutes":51,"shortcodes":52,"cronEvents":53,"entryPointCount":54,"unprotectedCount":21},[37],{"type":38,"name":39,"callback":40,"file":41,"line":42},"action","init","thmr_init","theme-roulette.php",205,[44,48],{"action":45,"nopriv":46,"callback":45,"hasNonce":46,"hasCapCheck":46,"file":41,"line":47},"thmr_maybe_change_theme",true,55,{"action":45,"nopriv":49,"callback":45,"hasNonce":46,"hasCapCheck":46,"file":41,"line":50},false,56,[],[],[],2,{"dangerousFunctions":56,"sqlUsage":57,"outputEscaping":59,"fileOperations":21,"externalRequests":21,"nonceChecks":14,"capabilityChecks":14,"bundledLibraries":61},[],{"prepared":21,"raw":21,"locations":58},[],{"escaped":21,"rawEcho":21,"locations":60},[],[],[],{"summary":64,"deductions":65},"The \"theme-roulette\" plugin version 1.0.9 exhibits a strong security posture based on the provided static analysis and vulnerability history. The code demonstrates adherence to security best practices, with all identified entry points (AJAX handlers) featuring both nonce and capability checks. The absence of dangerous functions, raw SQL queries, unescaped output, file operations, and external HTTP requests further reinforces its secure design. Taint analysis also yielded no concerning flows, indicating a lack of exploitable data manipulation vulnerabilities within the analyzed code.\n\nThe plugin's vulnerability history is clean, with no known CVEs recorded. This suggests a history of responsible development and timely patching, or perhaps a lack of prior targeting. The complete absence of vulnerabilities, combined with the robust static analysis findings, paints a picture of a well-secured plugin. However, it's important to note that static analysis cannot catch all potential vulnerabilities, especially those that might arise from complex interactions with the WordPress core or other plugins, or those dependent on specific server configurations. The limited attack surface (2 AJAX handlers) also contributes to its perceived security, as there are fewer potential avenues for exploitation.\n\nIn conclusion, \"theme-roulette\" v1.0.9 appears to be a secure plugin. Its design incorporates essential security measures, and its historical record is spotless. While the analysis provides high confidence in its current security, continuous monitoring and updates are always recommended for any software component.",[],"2026-03-16T23:28:58.371Z",{"wat":68,"direct":77},{"assetPaths":69,"generatorPatterns":71,"scriptPaths":72,"versionParams":74},[70],"\u002Fwp-content\u002Fplugins\u002Ftheme-roulette\u002Fassets\u002Fjs\u002Fsrc\u002Ftheme_roulette.js",[],[73],"wp-content\u002Fplugins\u002Ftheme-roulette\u002Fassets\u002Fjs\u002Fsrc\u002Ftheme_roulette.js",[75,76],"theme-roulette?ver=","\u002Fassets\u002Fjs\u002Fsrc\u002Ftheme_roulette.js?ver=",{"cssClasses":78,"htmlComments":79,"htmlAttributes":80,"restEndpoints":81,"jsGlobals":82,"shortcodeOutput":84},[],[],[],[],[83],"thmr_data",[]]