[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f6hg-aUf58S7zKija8lJ-69u4iAItqE5K32V-5-IurBo":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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":38,"analysis":63,"fingerprints":202},"manage-customized-plugin-updates","Manage Customized Plugin Updates","3.2","wsxplugindev","https:\u002F\u002Fprofiles.wordpress.org\u002Fwsxplugindev\u002F","\u003Cp>Are you a web developer or website design company who has installed \u002F customized plugins for your clients and you’re having a hard time managing plugin upgrades? Maybe your client tries to upgrade plugins themselves and you end up losing all the customization done to that plugin.\u003C\u002Fp>\n\u003Cp>Here is a plugin that can help you better manage customized plugins. It displays a message to your clients warning them about doing the upgrade.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Mark any plugin as being customized\u003C\u002Fli>\n\u003Cli>Tags to identify customized plugins on the WordPress plugin page\u003C\u002Fli>\n\u003Cli>Alert to show the customization notes\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Short Description\u003C\u002Fh3>\n\u003Cp>Here’s a plugin that can help you better manage customized plugins and display a message to your clients warning them about doing the upgrade.\u003C\u002Fp>\n","Are you a web developer or website design company who has installed \u002F customized plugins for your clients and you're having a hard time managing  &hellip;",90,12046,100,2,"2023-02-10T10:46:00.000Z","6.1.10","4.7.5","",[20,21,4,22,23],"block-plugin-update","customized-plugins","plugin-upgrade-custom-notice","restrict-plugin-upgrade","https:\u002F\u002Fwww.webstix.com\u002Fwordpress-plugin-development","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmanage-customized-plugin-updates.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},4,720,89,253,71,"2026-04-04T03:51:03.805Z",[39],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":49,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":18,"tags":54,"homepage":58,"download_link":59,"security_score":60,"vuln_count":61,"unpatched_count":27,"last_vuln_date":62,"fetched_at":29},"block-specific-plugin-updates","Block Plugin Update","3.3.2","Dnesscarkey","https:\u002F\u002Fprofiles.wordpress.org\u002Fdnesscarkey\u002F","\u003Cp>This Plugin blocks updates from a specific plugin.\u003C\u002Fp>\n\u003Cp>You can select the plugins you want to block for updates from Block Plugin Update under Settings or tick them all to remove all plugin updates.\u003C\u002Fp>\n\u003Cp>If you still any problem visit our \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fblock-specific-plugin-updates\u002F\" rel=\"ugc\">support forum\u003C\u002Fa> or you can write to us directly using our contact form.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Plugin you may like\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fuse-any-font\" rel=\"ugc\">Use Any Font\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fhoneypot\u002F\" rel=\"ugc\">WP Armour Anti Spam Plugin\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fdineshkarki.com.np\u002Fjquery-validation-for-gravity-forms\" rel=\"nofollow ugc\">jQuery Validation for Gravity Forms\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fjquery-validation-for-contact-form-7\u002F\" rel=\"ugc\">jQuery Validation For Contact Form 7\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fany-mobile-theme-switcher\u002F\" rel=\"ugc\">Any Mobile Theme Switcher\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ffeatured-image-in-rss-feed\u002F\" rel=\"ugc\">Featured Image In RSS Feed\u003C\u002Fa>\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadd-tags-and-category-to-page\u002F\" rel=\"ugc\">Add Tags And Category To Page\u003C\u002Fa>\u003C\u002Fp>\n","This plugin blocks the updates for specific plugins. You can select the plugins from plugin setting page.",6000,104633,88,19,"2024-11-26T03:45:00.000Z","6.7.5","3.0",[20,55,56,57],"disable-plugin-update","hide-plugin-update-notification","plugin-update-hider","https:\u002F\u002Fdineshkarki.com.np\u002Fblock-specific-plugin-updates","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fblock-specific-plugin-updates.3.3.2.zip",92,1,"2023-09-27 00:00:00",{"attackSurface":64,"codeSignals":102,"taintFlows":167,"riskAssessment":195,"analyzedAt":201},{"hooks":65,"ajaxHandlers":98,"restRoutes":99,"shortcodes":100,"cronEvents":101,"entryPointCount":27,"unprotectedCount":27},[66,72,76,81,85,89,94],{"type":67,"name":68,"callback":69,"file":70,"line":71},"action","core_upgrade_preamble","wsx_mcpu_custom_upgrade_core_message","admin\\wsx-mcpu-manage-customized-plugin-updates.php",280,{"type":67,"name":73,"callback":74,"file":70,"line":75},"wp_dashboard_setup","wsx_mcpu_custom_register_widgets",304,{"type":67,"name":77,"callback":78,"file":79,"line":80},"admin_menu","wsx_mcpu_register_custom_menu_page","admin\\wsx-plugin-interface.php",10,{"type":67,"name":82,"callback":83,"file":79,"line":84},"plugins_loaded","wsx_mcpu_check_current_user",13,{"type":67,"name":86,"callback":87,"file":79,"line":88},"admin_enqueue_scripts","wsx_mcpu_plugin_styles_scripts",29,{"type":67,"name":90,"callback":91,"file":92,"line":93},"admin_init","wsx_mcpu_plugin_redirect","manage-customized-plugin-updates.php",24,{"type":67,"name":95,"callback":96,"file":92,"line":97},"wp_enqueue_scripts","wsx_mcpu_enqueue_our_required_stylesheets",53,[],[],[],[],{"dangerousFunctions":103,"sqlUsage":104,"outputEscaping":110,"fileOperations":27,"externalRequests":27,"nonceChecks":61,"capabilityChecks":61,"bundledLibraries":166},[],{"prepared":50,"raw":61,"locations":105},[106],{"file":107,"line":108,"context":109},"admin\\wsx-plugin-tables.php",14,"$wpdb->get_var() with variable interpolation",{"escaped":111,"rawEcho":112,"locations":113},32,26,[114,117,119,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164],{"file":70,"line":115,"context":116},74,"raw output",{"file":70,"line":118,"context":116},80,{"file":70,"line":34,"context":116},{"file":70,"line":121,"context":116},98,{"file":70,"line":123,"context":116},140,{"file":70,"line":125,"context":116},142,{"file":70,"line":127,"context":116},143,{"file":70,"line":129,"context":116},146,{"file":70,"line":131,"context":116},147,{"file":70,"line":133,"context":116},167,{"file":70,"line":135,"context":116},168,{"file":70,"line":137,"context":116},172,{"file":70,"line":139,"context":116},173,{"file":70,"line":141,"context":116},176,{"file":70,"line":143,"context":116},180,{"file":70,"line":145,"context":116},184,{"file":70,"line":147,"context":116},185,{"file":70,"line":149,"context":116},188,{"file":70,"line":151,"context":116},197,{"file":70,"line":153,"context":116},204,{"file":70,"line":155,"context":116},274,{"file":70,"line":157,"context":116},293,{"file":70,"line":159,"context":116},330,{"file":70,"line":161,"context":116},331,{"file":70,"line":163,"context":116},340,{"file":70,"line":165,"context":116},349,[],[168],{"entryPoint":169,"graph":170,"unsanitizedCount":27,"severity":194},"\u003Cwsx-mcpu-manage-customized-plugin-updates> (admin\\wsx-mcpu-manage-customized-plugin-updates.php:0)",{"nodes":171,"edges":190},[172,177,182,186],{"id":173,"type":174,"label":175,"file":70,"line":176},"n0","source","$_POST[?] (x2)",38,{"id":178,"type":179,"label":180,"file":70,"line":176,"wp_function":181},"n1","sink","get_results() [SQLi]","get_results",{"id":183,"type":174,"label":184,"file":70,"line":185},"n2","$_POST[?] (x3)",47,{"id":187,"type":179,"label":188,"file":70,"line":185,"wp_function":189},"n3","query() [SQLi]","query",[191,193],{"from":173,"to":178,"sanitized":192},true,{"from":183,"to":187,"sanitized":192},"low",{"summary":196,"deductions":197},"The 'manage-customized-plugin-updates' v3.2 plugin exhibits a generally strong security posture based on the provided static analysis. The absence of AJAX handlers, REST API routes, shortcodes, and cron events significantly limits its attack surface. Furthermore, the plugin demonstrates good practices in its code signals, with a high percentage of SQL queries using prepared statements and a reasonable rate of output escaping, although there's room for improvement. The presence of nonce and capability checks indicates a basic level of access control implementation.  Taint analysis shows no critical or high-severity flows, which is a positive indicator. The vulnerability history is also clean, with no known CVEs, suggesting a mature and well-maintained codebase.  However, the 55% output escaping rate is a concern, as it implies that a portion of outputs are not properly sanitized, potentially leading to cross-site scripting (XSS) vulnerabilities if user-supplied data is involved in those unescaped outputs. While the overall risk is low, this area warrants attention to achieve a more robust security profile.",[198],{"reason":199,"points":200},"Output escaping is not consistently applied",5,"2026-03-16T21:21:30.377Z",{"wat":203,"direct":212},{"assetPaths":204,"generatorPatterns":207,"scriptPaths":208,"versionParams":209},[205,206],"\u002Fwp-content\u002Fplugins\u002Fmanage-customized-plugin-updates\u002Fadmin\u002Fcss\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Fmanage-customized-plugin-updates\u002Fadmin\u002Fjs\u002Fwsx-plugin-manag.js",[],[206],[210,211],"manage-customized-plugin-updates\u002Fadmin\u002Fcss\u002Fstyle.css?ver=","manage-customized-plugin-updates\u002Fadmin\u002Fjs\u002Fwsx-plugin-manag.js?ver=",{"cssClasses":213,"htmlComments":218,"htmlAttributes":219,"restEndpoints":224,"jsGlobals":225,"shortcodeOutput":231},[214,215,216,217],"wsx-plugin-management","wsx-block-plugin-messages","wsx-mark-as-customized","wsx-mark-as-customized-text",[],[220,221,222,223],"data-plugin_code","data-plugin_name","data-plugin_status","data-customization_details",[],[226,87,83,78,91,227,228,229,230],"wsx_mcpu_plugin_messages","wsx_mcpu_plugin_activate","wsx_mcpu_get_plugin_status","wsx_mcpu_disable_plugin_deactivation","wsx_mcpu_plugin_settings_link",[]]