[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fVmbEWEQz8BFV20l5QNosWFG37u4Mi_Kos_BeY2ekO_4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"vulnerabilities":28,"developer":29,"crawl_stats":26,"alternatives":35,"analysis":133,"fingerprints":229},"vishavjeet-age-consent-banner","Vishavjeet Age Consent Banner – Restrict Website Access by Age Verification","1.0.0","wpvishavjeet","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpvishavjeet\u002F","\u003Cp>Age Consent Banner is a WordPress plugin that restricts access to your website until users confirm their age. It is suitable for websites offering age-restricted content, products, or services such as alcohol, tobacco, or adult material.\u003C\u002Fp>\n\u003Cp>The plugin is fully customizable from the WordPress admin panel, allowing you to control text, colors, minimum age, session duration, and page exclusions.\u003C\u002Fp>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Fully customizable text, colors, and labels\u003C\u002Fli>\n\u003Cli>Session-based age verification\u003C\u002Fli>\n\u003Cli>Minimal data storage for functionality\u003C\u002Fli>\n\u003Cli>Responsive design for all devices\u003C\u002Fli>\n\u003Cli>Simple and intuitive admin settings\u003C\u002Fli>\n\u003Cli>Page exclusion support\u003C\u002Fli>\n\u003Cli>Configurable session duration\u003C\u002Fli>\n\u003Cli>Built following WordPress coding standards\u003C\u002Fli>\n\u003Cli>Secure data handling using WordPress APIs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Use Cases\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Adult content websites\u003C\u002Fli>\n\u003Cli>Alcohol and tobacco stores\u003C\u002Fli>\n\u003Cli>Age-restricted product shops\u003C\u002Fli>\n\u003Cli>Dating websites\u003C\u002Fli>\n\u003Cli>Cannabis \u002F CBD websites\u003C\u002Fli>\n\u003Cli>Gaming websites with mature content\u003C\u002Fli>\n\u003Cli>Any website requiring age compliance\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Customization Options\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Heading and description text\u003C\u002Fli>\n\u003Cli>Button labels\u003C\u002Fli>\n\u003Cli>Background, text, and button colors\u003C\u002Fli>\n\u003Cli>Minimum age requirement\u003C\u002Fli>\n\u003Cli>Session duration (1–365 days)\u003C\u002Fli>\n\u003Cli>Page exclusions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Statistics\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>View active verification sessions\u003C\u002Fli>\n\u003Cli>Track daily, weekly, and monthly verification counts\u003C\u002Fli>\n\u003Cli>View recent verification activity\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Data & Security\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Uses secure cookies for session handling\u003C\u002Fli>\n\u003Cli>Prepared SQL queries\u003C\u002Fli>\n\u003Cli>Escaped outputs to prevent XSS\u003C\u002Fli>\n\u003Cli>Nonces for CSRF protection\u003C\u002Fli>\n\u003Cli>Automatic cleanup of expired sessions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>This plugin stores the following data for functional purposes only:\u003Cbr \u002F>\n* Anonymous session identifiers\u003Cbr \u002F>\n* IP addresses\u003Cbr \u002F>\n* Verification timestamps\u003Cbr \u002F>\n* Session expiration data\u003C\u002Fp>\n\u003Cp>All stored data is automatically deleted after expiration.\u003C\u002Fp>\n\u003Ch3>Developer Information\u003C\u002Fh3>\n\u003Cp>Developed by \u003Cstrong>Vishavjeet Choubey\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Website: https:\u002F\u002Fvishavjeet.in\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n","Restrict website access until visitors confirm their age. Ideal for age-restricted content and compliance needs.",0,114,"","6.9.4","6.0","7.4",[18,19,20,21,22],"adults-only","age-consent","age-gate","age-restricted","age-verification","https:\u002F\u002Fwww.vishavjeet.in\u002Fage-consent-banner\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvishavjeet-age-consent-banner.1.0.0.zip",100,null,"2026-03-15T10:48:56.248Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":31,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},3,40,30,94,"2026-04-04T15:00:29.050Z",[36,59,78,96,115],{"slug":20,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":16,"tags":50,"homepage":53,"download_link":54,"security_score":55,"vuln_count":56,"unpatched_count":11,"last_vuln_date":57,"fetched_at":58},"Age Gate","3.7.2","Phil","https:\u002F\u002Fprofiles.wordpress.org\u002Fphilsbury\u002F","\u003Cp>There are many uses for restricting content based on age, be it movie trailers, beer or other adult themes. This plugin allows you to set a restriction on what content can been seen or restricted based on the age of the user.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Ask users to verify their age on page load\u003C\u002Fli>\n\u003Cli>SEO Friendly – common bots and crawlers are omitted from age checks\u003C\u002Fli>\n\u003Cli>Ability to add custom user agents for less common bots\u003C\u002Fli>\n\u003Cli>Shortcode for in content restrictions\u003C\u002Fli>\n\u003Cli>Choose to restrict an entire site, or selected content\u003C\u002Fli>\n\u003Cli>Select a different age on individual content\u003C\u002Fli>\n\u003Cli>Allow certain content to not be age gated under “all content” mode\u003C\u002Fli>\n\u003Cli>Three choices for input; dropdowns, input fields or a simple yes\u002Fno button\u003C\u002Fli>\n\u003Cli>Customise the order of the inputs based on your region (DD MM YYYY or MM DD YYYY)\u003C\u002Fli>\n\u003Cli>Allow a “remember me” check box if desired\u003C\u002Fli>\n\u003Cli>Ability to omit logged in users from being checked\u003C\u002Fli>\n\u003Cli>Add your own logo\u003C\u002Fli>\n\u003Cli>Update the text displayed on the entry form\u003C\u002Fli>\n\u003Cli>Select background colour\u002Fimage, foreground colour and text colour\u003C\u002Fli>\n\u003Cli>Use built in styling out of the box, or your own custom style\u003C\u002Fli>\n\u003Cli>Ability to add legal note or information to the bottom of the form\u003C\u002Fli>\n\u003Cli>Redirect failed logins to a URL of your choice e.g. an alcohol awareness website.\u003C\u002Fli>\n\u003Cli>Ability to use a non caching version\u003C\u002Fli>\n\u003Cli>Various hooks to add even more customisation such as additional form fields\u003C\u002Fli>\n\u003Cli>Compatible with multilingual plugins WPML, Polylang (2.3+), WP Multilang\u003C\u002Fli>\n\u003C\u002Ful>\n","A plugin to check the age of a visitor before view site or specified content",40000,1356527,92,64,"2025-10-22T19:24:00.000Z","6.8.5","6.0.0",[18,20,51,22,52],"age-restriction","age-verify","https:\u002F\u002Fagegate.io\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fage-gate.3.7.2.zip",90,5,"2025-04-09 00:00:00","2026-03-15T15:16:48.613Z",{"slug":60,"name":61,"version":62,"author":63,"author_profile":64,"description":65,"short_description":66,"active_installs":67,"downloaded":68,"rating":25,"num_ratings":69,"last_updated":70,"tested_up_to":13,"requires_at_least":71,"requires_php":72,"tags":73,"homepage":13,"download_link":76,"security_score":77,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":58},"age-gate-lite","Age Gate Lite","0.0.7","SiD","https:\u002F\u002Fprofiles.wordpress.org\u002Fsiddhu09rocks\u002F","\u003Cp>If your content or products are about cannabis, alcohol, gambling or other adult content.\u003C\u002Fp>\n\u003Cp>Age Gate Lite makes it easier then ever to configure and style an age restriction pop up to protect younger audience.\u003C\u002Fp>\n\u003Cp>It is designed to be user friendly, simple lightweight and only requires users to confirm their age ( Yes \u002F No ).\u003C\u002Fp>\n\u003Cp>This plugin is absolutely, 100% free.\u003C\u002Fp>\n\u003Cp>Success message section included can be used for Email \u002F Newsletter Opt-in or Promotional messages.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Devs 👨‍💻\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Avaliable JS Event Listeners – agl_passed & agl_failed.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cscript>\n    document.addEventListener(\"agl_passed\", function() {\n        \u002F\u002F Insert yor code for Age Gate Passed ;\n    });\n\n    document.addEventListener(\"agl_failed\", function() {\n        \u002F\u002F Insert yor code for Age Gate Failed');\n    });\n\u003C\u002Fscript>\n\u003C\u002Fcode>\u003C\u002Fpre>\n","A lightweight, customisable age gate to lock content from younger audience.",2000,14687,6,"2022-07-13T01:28:00.000Z","4.0","5.2.4",[74,20,22,52,75],"age","cannabis","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fage-gate-lite.zip",85,{"slug":79,"name":80,"version":81,"author":82,"author_profile":83,"description":84,"short_description":85,"active_installs":86,"downloaded":87,"rating":25,"num_ratings":56,"last_updated":88,"tested_up_to":89,"requires_at_least":90,"requires_php":91,"tags":92,"homepage":94,"download_link":95,"security_score":77,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":58},"age-gate-plus","Age Gator","1.06","Chris Geelhoed","https:\u002F\u002Fprofiles.wordpress.org\u002Fchrisgeelhoed\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.age-gator.com\u002F\" rel=\"nofollow ugc\">Age Gator\u003C\u002Fa> is a WordPress plugin specifically designed to guard sensitive content (alcohol, gambling, x-rated, etc) from underage users. Featuring an abundance of customizable settings, the display and behavior of the overlay can be easily configured to suit a variety of use cases.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"560\" height=\"315\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FOHTIHpilAaM?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Select from templates for Beer, Smoking, Vaping, Marijuana, or Adult or customize for your unique use case\u003C\u002Fli>\n\u003Cli>Checks age of user before showing content\u003C\u002Fli>\n\u003Cli>Edit appearance and text directly from the Customizer live preview screen\u003C\u002Fli>\n\u003Cli>User prompt may be set to a yes\u002Fno button, age entry, date of birthday entry, or confirmation checkbox\u003C\u002Fli>\n\u003Cli>Optional Retry button\u003C\u002Fli>\n\u003Cli>Remember previously passed users\u003C\u002Fli>\n\u003Cli>Set previously passed user bypass expiration time\u003C\u002Fli>\n\u003Cli>Limit number of attempts\u003C\u002Fli>\n\u003Cli>Ignore logged in users\u003C\u002Fli>\n\u003Cli>Customized failure and success messages\u003C\u002Fli>\n\u003Cli>Show age gate on all pages, all pages except those specified, or only on pages specified (Whitelist or Blacklist)\u003C\u002Fli>\n\u003Cli>Wilcard support for setting whitelisted and blacklisted pages\u003C\u002Fli>\n\u003Cli>Caching compatible\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.age-gator.com\u002F#feature-details\" rel=\"nofollow ugc\">Preview Features\u003C\u002Fa>\u003C\u002Fp>\n","Age Gator is a Wordpress plugin specifically designed to guard sensitive content (alcohol, gambling, x-rated, etc) from underage users.",400,5100,"2020-01-18T23:05:00.000Z","5.3.21","5.0","5.6",[18,74,22,52,93],"modal","https:\u002F\u002Fwww.age-gator.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fage-gate-plus.zip",{"slug":97,"name":98,"version":99,"author":100,"author_profile":101,"description":102,"short_description":103,"active_installs":104,"downloaded":105,"rating":106,"num_ratings":107,"last_updated":108,"tested_up_to":109,"requires_at_least":110,"requires_php":91,"tags":111,"homepage":113,"download_link":114,"security_score":45,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":58},"age-verification-screen-for-woocommerce","Age Verification Screen for WooCommerce","1.1.1","meowcrew","https:\u002F\u002Fprofiles.wordpress.org\u002Fmeowcrew\u002F","\u003Cp>Age Verification Screen for WooCommerce lets you restrict your website or particular pages of it using the age-restriction screen. Easily install and configure pop-up look and texts via customizer tool.\u003C\u002Fp>\n\u003Ch4>Major plugin features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Modal window or full-page pop-up to ask your users to verify their age when the page loads.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Show the age restriction pop-up only on those pages where you need it.\u003C\u002Fstrong> You can choose what pages, products, categories, or any other post types or taxonomies would be age-restricted.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Select the minimum allowed age for your website.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Multiple ways to check user age.\u003C\u002Fstrong> You can choose between two methods of age verification – a simple checkbox or confirm\\cancel buttons.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Set up the look and feel of restriction pop-up via live customizer.\u003C\u002Fstrong> Select background color or image, blur opacity, text color, etc.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>All texts are editable through the customizer.\u003C\u002Fstrong> You are able to edit the heading, description, texts on buttons, etc.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Redirect users on failure.\u003C\u002Fstrong> Here you can find two default options – get the user to the previous page or any other page of your site (e.g., page w\u002F your age policy).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accepts your theme styling by default.\u003C\u002Fstrong> No need to work hard on pop-up styling; it fits your website style perfectly right off the bat.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Manage cookie lifetime.\u003C\u002Fstrong> Age verification pop-up should not appear once more for those who previously passed the confirmation within XX days (established by you).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Additional features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>An additional method to check the age. One more way to prevent users’ age is the date of birth picker.\u003C\u002Fli>\n\u003Cli>Redirect to external URL. If the user doesn’t reach the minimum required age, you can redirect him to the external website instead of your internal page.\u003C\u002Fli>\n\u003Cli>Age-restriction for custom taxonomies and custom post types. In case you need to restrict particular custom taxonomies or post types instead of regular ones (like product categories, products, pages, etc).\u003C\u002Fli>\n\u003Cli>Assistance from plugin developers first hand.\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily add a customizable age verification screen to your store.",300,5725,20,1,"2024-11-01T13:50:00.000Z","6.7.5","5.6.1",[20,112,51,22,52],"age-popup","https:\u002F\u002Falpakawp.com\u002Fplugins\u002Fage-verification-screen-for-woocommerce","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fage-verification-screen-for-woocommerce.1.1.1.zip",{"slug":116,"name":117,"version":118,"author":119,"author_profile":120,"description":121,"short_description":122,"active_installs":123,"downloaded":124,"rating":25,"num_ratings":107,"last_updated":125,"tested_up_to":48,"requires_at_least":90,"requires_php":126,"tags":127,"homepage":131,"download_link":132,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":58},"advanced-age-verification-popup","Advanced Age Verification Popup","1.0","Yeasin","https:\u002F\u002Fprofiles.wordpress.org\u002Fyeasin1\u002F","\u003Cp>\u003Cstrong>Advanced Age Verification Popup\u003C\u002Fstrong> is a simple, lightweight, and customizable WordPress plugin that allows you to add an age verification popup to your website. Ideal for websites selling adult products like vaping supplies, alcohol, or any age-restricted content.\u003C\u002Fp>\n\u003Ch3>\u003Cstrong>Key Features\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Yes\u002FNo Button Verification\u003C\u002Fli>\n\u003Cli>Date of Birth Verification with modern Flatpickr date picker\u003C\u002Fli>\n\u003Cli>Option to enable \u003Cstrong>both methods\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Custom logo upload\u003C\u002Fli>\n\u003Cli>Editable text (Title, Buttons, Warning)\u003C\u002Fli>\n\u003Cli>Set cookie duration\u003C\u002Fli>\n\u003Cli>Redirect underage users to a custom URL\u003C\u002Fli>\n\u003Cli>Responsive and mobile-friendly\u003C\u002Fli>\n\u003Cli>WooCommerce compatible\u003C\u002Fli>\n\u003Cli>Lightweight and fast loading\u003C\u002Fli>\n\u003Cli>Flatpickr dark theme for professional look\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Cstrong>Use Cases\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Vape and E-Cigarette Shops\u003C\u002Fli>\n\u003Cli>Alcohol and Spirits Stores\u003C\u002Fli>\n\u003Cli>CBD \u002F Cannabis Products\u003C\u002Fli>\n\u003Cli>Adult Content Sites\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Arbitrary section\u003C\u002Fh3>\n\u003Cp>None.\u003C\u002Fp>\n","Add an age verification popup with Yes\u002FNo and Date of Birth check for WooCommerce or adult sites.",50,1083,"2025-07-30T19:13:00.000Z","7.2",[128,20,22,129,130],"adult-content","popup","woocommerce","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadvanced-age-verification-popup\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadvanced-age-verification-popup.zip",{"attackSurface":134,"codeSignals":169,"taintFlows":192,"riskAssessment":220,"analyzedAt":228},{"hooks":135,"ajaxHandlers":158,"restRoutes":165,"shortcodes":166,"cronEvents":167,"entryPointCount":168,"unprotectedCount":11},[136,142,146,150,154],{"type":137,"name":138,"callback":139,"file":140,"line":141},"action","admin_menu","vjacb_add_admin_menu","vishavjeet-age-consent-banner.php",42,{"type":137,"name":143,"callback":144,"file":140,"line":145},"admin_init","vjacb_register_settings",43,{"type":137,"name":147,"callback":148,"file":140,"line":149},"admin_enqueue_scripts","vjacb_enqueue_admin_scripts",44,{"type":137,"name":151,"callback":152,"file":140,"line":153},"template_redirect","vjacb_check_age_verification",48,{"type":137,"name":155,"callback":156,"file":140,"line":157},"wp_enqueue_scripts","vjacb_enqueue_frontend_scripts",49,[159,163],{"action":160,"nopriv":161,"callback":160,"hasNonce":162,"hasCapCheck":161,"file":140,"line":123},"vjacb_verify_age",false,true,{"action":160,"nopriv":162,"callback":160,"hasNonce":162,"hasCapCheck":161,"file":140,"line":164},51,[],[],[],2,{"dangerousFunctions":170,"sqlUsage":171,"outputEscaping":188,"fileOperations":11,"externalRequests":11,"nonceChecks":107,"capabilityChecks":11,"bundledLibraries":191},[],{"prepared":168,"raw":69,"locations":172},[173,176,179,181,183,185],{"file":140,"line":174,"context":175},121,"$wpdb->query() with variable interpolation",{"file":140,"line":177,"context":178},359,"$wpdb->get_var() with variable interpolation",{"file":140,"line":180,"context":178},360,{"file":140,"line":182,"context":178},361,{"file":140,"line":184,"context":178},362,{"file":140,"line":186,"context":187},399,"$wpdb->get_results() with variable interpolation",{"escaped":189,"rawEcho":11,"locations":190},112,[],[],[193,211],{"entryPoint":194,"graph":195,"unsanitizedCount":11,"severity":210},"\u003Cvishavjeet-age-consent-banner> (vishavjeet-age-consent-banner.php:0)",{"nodes":196,"edges":208},[197,202],{"id":198,"type":199,"label":200,"file":140,"line":201},"n0","source","$_COOKIE",529,{"id":203,"type":204,"label":205,"file":140,"line":206,"wp_function":207},"n1","sink","get_row() [SQLi]",533,"get_row",[209],{"from":198,"to":203,"sanitized":162},"low",{"entryPoint":212,"graph":213,"unsanitizedCount":107,"severity":219},"vjacb_is_verified (vishavjeet-age-consent-banner.php:523)",{"nodes":214,"edges":217},[215,216],{"id":198,"type":199,"label":200,"file":140,"line":201},{"id":203,"type":204,"label":205,"file":140,"line":206,"wp_function":207},[218],{"from":198,"to":203,"sanitized":161},"high",{"summary":221,"deductions":222},"The \"vishavjeet-age-consent-banner\" v1.0.0 plugin exhibits a generally good security posture due to several positive code signals. The complete absence of dangerous functions, file operations, and external HTTP requests is commendable. Furthermore, the plugin demonstrates excellent output sanitization, with 100% of outputs being properly escaped, significantly reducing the risk of cross-site scripting (XSS) vulnerabilities. The presence of a nonce check on one of its entry points is also a positive indicator of security awareness.\n\nHowever, there are areas for improvement. The taint analysis revealed one flow with an unsanitized path, flagged as high severity. While the static analysis reports no critical severity taint flows, this high-severity unsanitized path warrants further investigation as it could potentially lead to vulnerabilities if not properly handled. Additionally, the plugin lacks capability checks on its entry points, meaning that these AJAX handlers might be accessible to users who shouldn't be able to interact with them, potentially leading to unintended actions.\n\nThe plugin's vulnerability history is currently clean, with no known CVEs. This, combined with the positive code signals, suggests that the plugin has been developed with security in mind. However, the single high-severity taint flow is a notable concern that needs to be addressed. Overall, the plugin has a strong foundation, but the identified taint flow and lack of capability checks represent potential risks that should be mitigated.",[223,226],{"reason":224,"points":225},"High severity unsanitized taint flow detected",10,{"reason":227,"points":56},"No capability checks on AJAX handlers","2026-03-17T05:55:45.233Z",{"wat":230,"direct":239},{"assetPaths":231,"generatorPatterns":234,"scriptPaths":235,"versionParams":236},[232,233],"\u002Fwp-content\u002Fplugins\u002Fvishavjeet-age-consent-banner\u002Fjs\u002Fage-consent-banner.js","\u002Fwp-content\u002Fplugins\u002Fvishavjeet-age-consent-banner\u002Fcss\u002Fage-consent-banner.css",[],[232],[237,238],"\u002Fwp-content\u002Fplugins\u002Fvishavjeet-age-consent-banner\u002Fjs\u002Fage-consent-banner.js?ver=","\u002Fwp-content\u002Fplugins\u002Fvishavjeet-age-consent-banner\u002Fcss\u002Fage-consent-banner.css?ver=",{"cssClasses":240,"htmlComments":248,"htmlAttributes":251,"restEndpoints":253,"jsGlobals":255,"shortcodeOutput":257},[241,242,243,244,245,246,247],"vjacb-modal","vjacb-modal-content","vjacb-modal-header","vjacb-modal-body","vjacb-modal-footer","vjacb-accept-button","vjacb-reject-button",[249,250],"\u003C!-- Age Consent Banner Start -->","\u003C!-- Age Consent Banner End -->",[252],"data-vjacb-action",[254],"\u002Fwp-json\u002Fvjacb\u002Fv1\u002Fverify_age",[256],"vjacb_ajax_object",[]]