[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fcQL4M6afiGvdgaI1zqAvVREYm0KjiG1Qkj96KpoQE14":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":18,"tags":19,"homepage":21,"download_link":22,"security_score":23,"vuln_count":24,"unpatched_count":24,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":35,"analysis":36,"fingerprints":239},"weaver-ii-to-weaver-xtreme","Weaver II to Weaver Xtreme","1.1","wpweaver","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpweaver\u002F","\u003Cp>This plugin will non-destructiely convert your Weaver II Themes settings to Weaver Xtreme Theme settings.\u003C\u002Fp>\n\u003Cp>Please read instructions on the Help tab.\u003C\u002Fp>\n\u003Ch3>Copyrights\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Weaver II to Weaver Xtreme is Copyright (c) 2017 by Bruce E. Wampler. It is licensed under GPL Version 2.\u003C\u002Fli>\n\u003C\u002Ful>\n","Weaver II to Weaver Xtreme Settings Converter",300,7093,100,3,"2018-05-13T22:49:00.000Z","4.9.29","4.5","",[20],"weaver-plugins","http:\u002F\u002Fweavertheme.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fweaver-ii-to-weaver-xtreme.1.1.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":29,"total_installs":30,"avg_security_score":31,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},6,19650,88,158,71,"2026-04-05T02:31:58.953Z",[],{"attackSurface":37,"codeSignals":53,"taintFlows":162,"riskAssessment":226,"analyzedAt":238},{"hooks":38,"ajaxHandlers":49,"restRoutes":50,"shortcodes":51,"cronEvents":52,"entryPointCount":24,"unprotectedCount":24},[39,45],{"type":40,"name":41,"callback":42,"file":43,"line":44},"action","admin_menu","wii2wx_add_page","wii2wx_core.php",12,{"type":40,"name":46,"callback":47,"file":43,"line":48},"wp_enqueue_scripts","wii2wx_enqueue_scripts",42,[],[],[],[],{"dangerousFunctions":54,"sqlUsage":63,"outputEscaping":65,"fileOperations":24,"externalRequests":24,"nonceChecks":160,"capabilityChecks":14,"bundledLibraries":161},[55,60],{"fn":56,"file":57,"line":58,"context":59},"unserialize","includes\\wii2wx_admin.php",367,"$wii_settings = unserialize(substr($wii,10));",{"fn":56,"file":57,"line":61,"context":62},894,"$restore = unserialize(substr($contents,10));",{"prepared":24,"raw":24,"locations":64},[],{"escaped":66,"rawEcho":67,"locations":68},7,46,[69,72,74,76,78,80,82,84,86,89,91,93,95,97,99,101,103,105,107,109,111,113,115,117,119,121,123,125,127,129,132,134,136,137,139,141,143,144,145,147,149,151,153,154,156,158],{"file":70,"line":44,"context":71},"includes\\convert_pp.php","raw output",{"file":70,"line":73,"context":71},101,{"file":70,"line":75,"context":71},110,{"file":70,"line":77,"context":71},112,{"file":70,"line":79,"context":71},116,{"file":70,"line":81,"context":71},121,{"file":70,"line":83,"context":71},128,{"file":70,"line":85,"context":71},138,{"file":87,"line":88,"context":71},"includes\\downloader.php",80,{"file":57,"line":90,"context":71},81,{"file":57,"line":92,"context":71},90,{"file":57,"line":94,"context":71},113,{"file":57,"line":96,"context":71},175,{"file":57,"line":98,"context":71},181,{"file":57,"line":100,"context":71},197,{"file":57,"line":102,"context":71},199,{"file":57,"line":104,"context":71},334,{"file":57,"line":106,"context":71},370,{"file":57,"line":108,"context":71},462,{"file":57,"line":110,"context":71},473,{"file":57,"line":112,"context":71},482,{"file":57,"line":114,"context":71},498,{"file":57,"line":116,"context":71},519,{"file":57,"line":118,"context":71},521,{"file":57,"line":120,"context":71},621,{"file":57,"line":122,"context":71},628,{"file":57,"line":124,"context":71},645,{"file":57,"line":126,"context":71},675,{"file":57,"line":128,"context":71},695,{"file":130,"line":131,"context":71},"includes\\wii2wx_admin_lib.php",37,{"file":130,"line":133,"context":71},41,{"file":130,"line":135,"context":71},51,{"file":130,"line":135,"context":71},{"file":130,"line":138,"context":71},53,{"file":130,"line":140,"context":71},65,{"file":130,"line":142,"context":71},66,{"file":130,"line":88,"context":71},{"file":130,"line":90,"context":71},{"file":130,"line":146,"context":71},82,{"file":130,"line":148,"context":71},89,{"file":130,"line":150,"context":71},97,{"file":130,"line":152,"context":71},99,{"file":130,"line":94,"context":71},{"file":130,"line":155,"context":71},146,{"file":130,"line":157,"context":71},147,{"file":159,"line":146,"context":71},"includes\\wii2wx_runtime_lib.php",2,[],[163,181,196],{"entryPoint":164,"graph":165,"unsanitizedCount":179,"severity":180},"wii2wx_admin_tab1 (includes\\wii2wx_admin.php:76)",{"nodes":166,"edges":176},[167,171],{"id":168,"type":169,"label":170,"file":57,"line":90},"n0","source","$_SERVER['REQUEST_URI'] (x4)",{"id":172,"type":173,"label":174,"file":57,"line":90,"wp_function":175},"n1","sink","echo() [XSS]","echo",[177],{"from":168,"to":172,"sanitized":178},false,4,"medium",{"entryPoint":182,"graph":183,"unsanitizedCount":24,"severity":195},"\u003Cdownloader> (includes\\downloader.php:0)",{"nodes":184,"edges":192},[185,188],{"id":168,"type":169,"label":186,"file":87,"line":187},"$_GET",23,{"id":172,"type":173,"label":189,"file":87,"line":190,"wp_function":191},"header() [Header Injection]",74,"header",[193],{"from":168,"to":172,"sanitized":194},true,"low",{"entryPoint":197,"graph":198,"unsanitizedCount":24,"severity":195},"\u003Cwii2wx_admin> (includes\\wii2wx_admin.php:0)",{"nodes":199,"edges":221},[200,201,202,206,209,212,216],{"id":168,"type":169,"label":170,"file":57,"line":90},{"id":172,"type":173,"label":174,"file":57,"line":90,"wp_function":175},{"id":203,"type":169,"label":204,"file":57,"line":205},"n2","$_FILES",301,{"id":207,"type":173,"label":208,"file":57,"line":61,"wp_function":56},"n3","unserialize() [Object Injection]",{"id":210,"type":169,"label":204,"file":57,"line":211},"n4",929,{"id":213,"type":214,"label":215,"file":57,"line":211},"n5","transform","→ wii2wx_wpupdate_option()",{"id":217,"type":173,"label":218,"file":159,"line":219,"wp_function":220},"n6","update_option() [Settings Manipulation]",45,"update_option",[222,223,224,225],{"from":168,"to":172,"sanitized":194},{"from":203,"to":207,"sanitized":194},{"from":210,"to":213,"sanitized":178},{"from":213,"to":217,"sanitized":194},{"summary":227,"deductions":228},"The plugin 'weaver-ii-to-weaver-xtreme' v1.1 exhibits a mixed security posture. On one hand, it demonstrates several good security practices. Notably, there are no recorded vulnerabilities (CVEs), suggesting a generally stable history. The absence of AJAX handlers, REST API routes, shortcodes, and cron events significantly limits the plugin's external attack surface, and all SQL queries are secured with prepared statements. Furthermore, the plugin incorporates nonce and capability checks.\n\nHowever, the static analysis reveals concerning areas. The presence of the `unserialize` function is a significant risk. If user-controlled input is passed to this function without proper sanitization, it can lead to Remote Code Execution (RCE) vulnerabilities. While the taint analysis shows only one flow with unsanitized paths and no critical or high severity issues, the mere presence of `unserialize` is a red flag that warrants careful attention and robust input validation. The low percentage of properly escaped output (13%) is another concern, increasing the risk of Cross-Site Scripting (XSS) vulnerabilities, especially if any of the unsanitized flows could lead to output.\n\nOverall, the plugin's limited attack surface and good history are strengths. However, the identified use of `unserialize` and the poor output escaping practices introduce significant potential risks that should be addressed to improve the plugin's security. It is crucial to ensure that any data passed to `unserialize` is thoroughly validated and that output escaping is implemented consistently.",[229,232,235],{"reason":230,"points":231},"Dangerous function 'unserialize' used",15,{"reason":233,"points":234},"Low percentage of output properly escaped",8,{"reason":236,"points":237},"Flow with unsanitized path",5,"2026-03-16T19:55:12.783Z",{"wat":240,"direct":251},{"assetPaths":241,"generatorPatterns":244,"scriptPaths":245,"versionParams":247},[242,243],"\u002Fwp-content\u002Fplugins\u002Fweaver-ii-to-weaver-xtreme\u002Fwii2wx_admin_style.css","\u002Fwp-content\u002Fplugins\u002Fweaver-ii-to-weaver-xtreme\u002Fwii2wx_style.css",[],[246],"\u002Fwp-content\u002Fplugins\u002Fweaver-ii-to-weaver-xtreme\u002Fjs\u002Fyetii.js",[248,249,250],"weaver-ii-to-weaver-xtreme\u002Fwii2wx_admin_style.css?ver=","weaver-ii-to-weaver-xtreme\u002Fwii2wx_style.css?ver=","weaver-ii-to-weaver-xtreme\u002Fjs\u002Fyetii.js?ver=",{"cssClasses":252,"htmlComments":253,"htmlAttributes":254,"restEndpoints":255,"jsGlobals":256,"shortcodeOutput":257},[],[],[],[],[],[]]