[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fktD8E12DKNFBE7MDg7XNgwAFAIK4txp7P3e9ry8n1w0":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":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"vulnerabilities":31,"developer":32,"crawl_stats":29,"alternatives":36,"analysis":135,"fingerprints":658},"beer-ratings","Beer Ratings","1.0.2","jamesewelch","https:\u002F\u002Fprofiles.wordpress.org\u002Fjamesewelch\u002F","\u003Cp>The Beer Ratings plugin allows you to display information about beers, brewers, and places to drink. This plugin uses the RateBeer API to retrieve data and you must register for a RateBeer API Key at http:\u002F\u002Fwww.ratebeer.com\u002Fjson\u002Fratebeer-api.asp.\u003C\u002Fp>\n\u003Cp>You can retrieve beers by brewers, best beers by style, beers available at a specific place, brewer information, place information, and beer information. You can also retrieve beer reviews, rankings, and scores.\u003C\u002Fp>\n\u003Ch3>Arbitrary section\u003C\u002Fh3>\n\u003Cp>More information can be found at http:\u002F\u002Fwww.jamesewelch.com\u002Fprojects\u002Fbeer-ratings-wp-plugin\u003C\u002Fp>\n","The Beer Ratings plugin allows you to display information about beers, brewers, and places to drink. The plugin requires a RateBeer API Key.",10,2417,20,1,"2012-07-20T03:05:00.000Z","3.4.2","3.0","",[20,21,22,23,24],"beer","beer-library","brew","breweries","craft-beer","http:\u002F\u002Fwww.jamesewelch.com\u002Fprojects\u002Fbeer-ratings-wp-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeer-ratings.1.0.2.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":14,"total_installs":11,"avg_security_score":27,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},30,84,"2026-04-05T01:56:28.551Z",[37,53,77,95,118],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":11,"downloaded":45,"rating":28,"num_ratings":28,"last_updated":46,"tested_up_to":47,"requires_at_least":17,"requires_php":18,"tags":48,"homepage":51,"download_link":52,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"brewery-db","BreweryDB","2.1.0","farrelley","https:\u002F\u002Fprofiles.wordpress.org\u002Ffarrelley\u002F","\u003Cp>The BreweryDB plugin allows you to display information in your posts about beers and breweries.\u003Cbr \u002F>\nThis plugin uses the BreweryDB API to retrieve data and you must register for a BreweryDB API Key at http:\u002F\u002Fwww.brewerydb.com\u002Fdevelopers\u003C\u002Fp>\n\u003Ch3>Arbitrary section\u003C\u002Fh3>\n\u003Cp>More information can be found at http:\u002F\u002Fwww.brewerydb.com\u002F or by contacting feedback@pintlabs.com\u003C\u002Fp>\n","The BreweryDB plugin allows you to display information in your posts about beers and breweries.",3036,"2013-02-27T01:36:00.000Z","3.5.2",[20,23,49,24,50],"brewerydb","craftbeer","http:\u002F\u002Fwww.brewerydb.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbrewery-db.2.1.0.zip",{"slug":54,"name":55,"version":56,"author":57,"author_profile":58,"description":59,"short_description":60,"active_installs":61,"downloaded":62,"rating":63,"num_ratings":64,"last_updated":65,"tested_up_to":66,"requires_at_least":67,"requires_php":18,"tags":68,"homepage":73,"download_link":74,"security_score":75,"vuln_count":14,"unpatched_count":28,"last_vuln_date":76,"fetched_at":30},"beerxml-shortcode","BeerXML Shortcode","0.8","Derek Springer","https:\u002F\u002Fprofiles.wordpress.org\u002Fderekspringer\u002F","\u003Cp>A shortcode for displaying beer recipes. Now with \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshortcode-ui\u002F\" rel=\"ugc\">Shortcake (Shortcode UI)\u003C\u002Fa> integration!\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Link to a BeerXML document to display recipe details, style details, fermentables, hops, miscs, yeast, mash steps, fermentation schedule, and notes.\u003C\u002Fli>\n\u003Cli>Allows you to easily switch between U.S. & Metric measurements.\u003C\u002Fli>\n\u003Cli>Control if & how long recipe is cached.\u003C\u002Fli>\n\u003Cli>Allow readers to download the recipe directly.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>It follows the basic format of:\u003C\u002Fp>\n\u003Cp>[beerxml\u003Cbr \u002F>\n    recipe={URL}\u003Cbr \u002F>\n    metric=true|false\u003Cbr \u002F>\n    download=true|false\u003Cbr \u002F>\n    style=true|false\u003Cbr \u002F>\n    mash=true|false\u003Cbr \u002F>\n    fermentation=true|false\u003Cbr \u002F>\n    mhop=true|false\u003Cbr \u002F>\n    misc=true|false\u003Cbr \u002F>\n    actuals=true|false\u003Cbr \u002F>\n    cache=-1|{seconds to cache}]\u003C\u002Fp>\n\u003Cp>Please note all options (minus recipe) are optional and have the following defaults:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>metric = false\u003C\u002Fli>\n\u003Cli>cache = 12 hours (60 x 60 x 12 seconds), -1 kills the cache and sets value to 0\u003C\u002Fli>\n\u003Cli>download = true\u003C\u002Fli>\n\u003Cli>style = true\u003C\u002Fli>\n\u003Cli>mash = true\u003C\u002Fli>\n\u003Cli>misc = true\u003C\u002Fli>\n\u003Cli>actuals = true\u003C\u002Fli>\n\u003Cli>fermentation = false\u003C\u002Fli>\n\u003Cli>mhop = false\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically insert and display beer recipes by linking to a BeerXML document.",100,7120,98,9,"2025-04-29T20:04:00.000Z","6.8.5","3.4",[20,69,70,71,72],"beerxml","homebrew","recipe","shortcode","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fbeerxml-shortcode\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeerxml-shortcode.0.8.zip",99,"2025-04-24 00:00:00",{"slug":78,"name":79,"version":80,"author":81,"author_profile":82,"description":83,"short_description":84,"active_installs":33,"downloaded":85,"rating":86,"num_ratings":14,"last_updated":87,"tested_up_to":88,"requires_at_least":89,"requires_php":18,"tags":90,"homepage":93,"download_link":94,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"beer-directory","Beer Directory","1.1","Rescue Themes","https:\u002F\u002Fprofiles.wordpress.org\u002Frescuethemes\u002F","\u003Cp>This plugin allows home brewers, professional breweries, and beer afficianadoes to enter individual beer, beer categories, and beer details. It provides a shortcode that will allow for display management.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features include:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easily categorize and group your beer with a configurable shortcode.\u003C\u002Fli>\n\u003Cli>Enter details for your beer that include: ABV, IBU, OG, FG, SRM\u002FColor, Malts, Hops, and Yeast.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>New features\u003C\u002Fstrong>\u003Cbr \u002F>\nWe want to improve the Beer Directory plugin based on your feedback! Please let us know via the plugin’s support tab and \u003Ca href=\"http:\u002F\u002Frescuethemes.us6.list-manage.com\u002Fsubscribe?u=e996b9d9a5&id=a41af7345e\" rel=\"nofollow ugc\">subscribe to our mailing list\u003C\u002Fa> to get notified of new developments.\u003C\u002Fp>\n\u003Ch3>Credit\u003C\u002Fh3>\n\u003Cp>team-post-type – ​https:\u002F\u002Fgithub.com\u002Fdevinsays\u002Fteam-post-type\u003Cbr \u002F>\nLicense: GPL-2.0+ – http:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\u003Cbr \u002F>\nCopyright: Devin Price, @devinsays\u003C\u002Fp>\n\u003Cp>Dashboard Glancer – http:\u002F\u002Fgamajo.com\u002Fdashboard-glancer\u003Cbr \u002F>\nLicense: GPL-2.0+ – http:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html\u003Cbr \u002F>\nCopyright: Gary Jones, Gamajo Tech\u003C\u002Fp>\n","Enables a beer post type and beer list shortcode.",4565,60,"2019-08-13T23:04:00.000Z","5.2.24","4.0",[20,22,91,92,70],"brewery","directory","https:\u002F\u002Frescuethemes.com\u002Fbeer-directory","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbeer-directory.1.1.zip",{"slug":96,"name":97,"version":98,"author":99,"author_profile":100,"description":101,"short_description":102,"active_installs":103,"downloaded":104,"rating":105,"num_ratings":106,"last_updated":107,"tested_up_to":108,"requires_at_least":109,"requires_php":18,"tags":110,"homepage":18,"download_link":116,"security_score":117,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"ltrrtl-admin-content","LTR  RTL Admin content","0.6.6","Ronny Sherer","https:\u002F\u002Fprofiles.wordpress.org\u002Fronshe\u002F","\u003Cp>Enable LTR in admin content area. Click the admin bar button to switch between RTL & LTR. This plugin adds a button to  the admin bar. Clicking the button switches between RTL & LTR text direction of current page content only. The LTR\u002FRTL state is saved in current browser only.\u003C\u002Fp>\n","Enable LTR in admin content area. Click the admin bar button to switch between RTL & LTR.",4000,58108,94,14,"2024-07-06T09:10:00.000Z","6.6.5","3.6",[111,112,113,114,115],"admin","arabic","farsi","hebrew","rtl","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fltrrtl-admin-content.0.6.6.zip",92,{"slug":119,"name":120,"version":121,"author":122,"author_profile":123,"description":124,"short_description":125,"active_installs":126,"downloaded":127,"rating":61,"num_ratings":64,"last_updated":128,"tested_up_to":66,"requires_at_least":129,"requires_php":18,"tags":130,"homepage":133,"download_link":134,"security_score":61,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"wordpress-hebrew-date","WP Hebrew Date","2.0.5","hatul","https:\u002F\u002Fprofiles.wordpress.org\u002Fhatul\u002F","\u003Cp>The plugin preview Hebrew date in date of post and date of comments.\u003Cbr \u002F>\nThe hebrew date format able to change in options page of the plugin.\u003C\u002Fp>\n\u003Cp>Note: This plugin was previously known as “WordPress Hebrew Date”.\u003C\u002Fp>\n\u003Ch4>Shortcode\u003C\u002Fh4>\n\u003Cp>You can add the shortcode \u003Ccode>[today_hebdate]\u003C\u002Fcode> in posts or pages for show the hebrew date of today.\u003C\u002Fp>\n\u003Ch4>Widget\u003C\u002Fh4>\n\u003Cp>You can add widget for show the hebrew date of today.\u003C\u002Fp>\n","Convert dates in wordpress to Hebrew dates.",700,15166,"2025-09-15T07:54:00.000Z","2.0",[131,114,132],"date","jewish","https:\u002F\u002Fhatul.info\u002Fhebdate\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwordpress-hebrew-date.2.0.5.zip",{"attackSurface":136,"codeSignals":203,"taintFlows":297,"riskAssessment":643,"analyzedAt":657},{"hooks":137,"ajaxHandlers":154,"restRoutes":155,"shortcodes":156,"cronEvents":201,"entryPointCount":202,"unprotectedCount":28},[138,143,146,150],{"type":139,"name":140,"callback":140,"file":141,"line":142},"action","admin_menu","index.php",93,{"type":139,"name":144,"callback":145,"file":141,"line":105},"admin_notices","admin_notice",{"type":139,"name":147,"callback":148,"file":141,"line":149},"admin_print_styles","admin_enqueue_scripts",95,{"type":151,"name":152,"callback":153,"priority":11,"file":141,"line":63},"filter","plugin_action_links","beerratings_add_plugin_links",[],[],[157,161,165,169,173,177,181,185,189,193,197],{"tag":158,"callback":159,"file":141,"line":160},"beerratings-place-search","beerratings_place_search",55,{"tag":162,"callback":163,"file":141,"line":164},"beerratings-place","beerratings_place_info",56,{"tag":166,"callback":167,"file":141,"line":168},"beerratings-brewer","beerratings_brewer_info",59,{"tag":170,"callback":171,"file":141,"line":172},"beerratings-beer-review","beerratings_beer_review",62,{"tag":174,"callback":175,"file":141,"line":176},"beerratings-beer-place","beerratings_beer_place",63,{"tag":178,"callback":179,"file":141,"line":180},"beerratings-beer-brewer","beerratings_beer_brewer",64,{"tag":182,"callback":183,"file":141,"line":184},"beerratings-beer","beerratings_beer_info",65,{"tag":186,"callback":187,"file":141,"line":188},"beerratings-bestbeer-style","beerratings_bestbeer_style",67,{"tag":190,"callback":191,"file":141,"line":192},"beerratings-bestbeer-season","beerratings_bestbeer_season",68,{"tag":194,"callback":195,"file":141,"line":196},"beerratings-bestbeer-country","beerratings_bestbeer_country",69,{"tag":198,"callback":199,"file":141,"line":200},"beerratings-bestbeer","beerratings_bestbeer",70,[],11,{"dangerousFunctions":204,"sqlUsage":210,"outputEscaping":212,"fileOperations":213,"externalRequests":14,"nonceChecks":28,"capabilityChecks":14,"bundledLibraries":296},[205],{"fn":206,"file":207,"line":208,"context":209},"unserialize","includes\\BeerRatings_CacheManager.php",53,"return unserialize( file_get_contents( $cache_filepath ) );",{"prepared":28,"raw":28,"locations":211},[],{"escaped":213,"rawEcho":214,"locations":215},4,39,[216,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272,274,276,278,280,282,284,286,288,290,292,294],{"file":217,"line":218,"context":219},"includes\\BeerRatings_Settings.php",32,"raw output",{"file":217,"line":221,"context":219},136,{"file":217,"line":223,"context":219},175,{"file":217,"line":225,"context":219},263,{"file":217,"line":227,"context":219},267,{"file":217,"line":229,"context":219},271,{"file":217,"line":231,"context":219},287,{"file":217,"line":233,"context":219},291,{"file":217,"line":235,"context":219},295,{"file":217,"line":237,"context":219},310,{"file":217,"line":239,"context":219},314,{"file":217,"line":241,"context":219},318,{"file":217,"line":243,"context":219},330,{"file":217,"line":245,"context":219},334,{"file":217,"line":247,"context":219},338,{"file":217,"line":249,"context":219},350,{"file":217,"line":251,"context":219},354,{"file":217,"line":253,"context":219},358,{"file":217,"line":255,"context":219},370,{"file":217,"line":257,"context":219},374,{"file":217,"line":259,"context":219},378,{"file":217,"line":261,"context":219},390,{"file":217,"line":263,"context":219},394,{"file":217,"line":265,"context":219},398,{"file":217,"line":267,"context":219},410,{"file":217,"line":269,"context":219},414,{"file":217,"line":271,"context":219},418,{"file":217,"line":273,"context":219},430,{"file":217,"line":275,"context":219},434,{"file":217,"line":277,"context":219},438,{"file":217,"line":279,"context":219},451,{"file":217,"line":281,"context":219},455,{"file":217,"line":283,"context":219},459,{"file":217,"line":285,"context":219},471,{"file":217,"line":287,"context":219},475,{"file":217,"line":289,"context":219},479,{"file":217,"line":291,"context":219},494,{"file":217,"line":293,"context":219},506,{"file":217,"line":295,"context":219},528,[],[298,539],{"entryPoint":299,"graph":300,"unsanitizedCount":28,"severity":538},"plugin_options (includes\\BeerRatings_Settings.php:49)",{"nodes":301,"edges":503},[302,307,312,315,317,321,323,327,329,333,335,339,341,345,347,351,353,357,359,363,365,369,371,375,377,381,383,387,389,393,395,399,401,405,407,411,413,417,419,423,425,429,431,435,437,441,443,447,449,453,455,459,461,465,467,471,473,477,479,483,485,489,491,495,497,501],{"id":303,"type":304,"label":305,"file":217,"line":306},"n0","source","$_POST['beerratings_ratebeer_apikey']",81,{"id":308,"type":309,"label":310,"file":217,"line":306,"wp_function":311},"n1","sink","update_option() [Settings Manipulation]","update_option",{"id":313,"type":304,"label":314,"file":217,"line":27},"n2","$_POST['beerratings_cachetime']",{"id":316,"type":309,"label":310,"file":217,"line":27,"wp_function":311},"n3",{"id":318,"type":304,"label":319,"file":217,"line":320},"n4","$_POST['beerratings_ratebeer_copyrighttext']",91,{"id":322,"type":309,"label":310,"file":217,"line":320,"wp_function":311},"n5",{"id":324,"type":304,"label":325,"file":217,"line":326},"n6","$_POST['beerratings_brewerlist_header']",207,{"id":328,"type":309,"label":310,"file":217,"line":326,"wp_function":311},"n7",{"id":330,"type":304,"label":331,"file":217,"line":332},"n8","$_POST['beerratings_brewerlist_item']",208,{"id":334,"type":309,"label":310,"file":217,"line":332,"wp_function":311},"n9",{"id":336,"type":304,"label":337,"file":217,"line":338},"n10","$_POST['beerratings_brewerlist_footer']",209,{"id":340,"type":309,"label":310,"file":217,"line":338,"wp_function":311},"n11",{"id":342,"type":304,"label":343,"file":217,"line":344},"n12","$_POST['beerratings_beerlist_header']",211,{"id":346,"type":309,"label":310,"file":217,"line":344,"wp_function":311},"n13",{"id":348,"type":304,"label":349,"file":217,"line":350},"n14","$_POST['beerratings_beerlist_item']",212,{"id":352,"type":309,"label":310,"file":217,"line":350,"wp_function":311},"n15",{"id":354,"type":304,"label":355,"file":217,"line":356},"n16","$_POST['beerratings_beerlist_footer']",213,{"id":358,"type":309,"label":310,"file":217,"line":356,"wp_function":311},"n17",{"id":360,"type":304,"label":361,"file":217,"line":362},"n18","$_POST['beerratings_beerlist_bybrewer_header']",215,{"id":364,"type":309,"label":310,"file":217,"line":362,"wp_function":311},"n19",{"id":366,"type":304,"label":367,"file":217,"line":368},"n20","$_POST['beerratings_beerlist_bybrewer_item']",216,{"id":370,"type":309,"label":310,"file":217,"line":368,"wp_function":311},"n21",{"id":372,"type":304,"label":373,"file":217,"line":374},"n22","$_POST['beerratings_beerlist_bybrewer_footer']",217,{"id":376,"type":309,"label":310,"file":217,"line":374,"wp_function":311},"n23",{"id":378,"type":304,"label":379,"file":217,"line":380},"n24","$_POST['beerratings_beerlist_byplace_header']",219,{"id":382,"type":309,"label":310,"file":217,"line":380,"wp_function":311},"n25",{"id":384,"type":304,"label":385,"file":217,"line":386},"n26","$_POST['beerratings_beerlist_byplace_item']",220,{"id":388,"type":309,"label":310,"file":217,"line":386,"wp_function":311},"n27",{"id":390,"type":304,"label":391,"file":217,"line":392},"n28","$_POST['beerratings_beerlist_byplace_footer']",221,{"id":394,"type":309,"label":310,"file":217,"line":392,"wp_function":311},"n29",{"id":396,"type":304,"label":397,"file":217,"line":398},"n30","$_POST['beerratings_beerreviewlist_header']",223,{"id":400,"type":309,"label":310,"file":217,"line":398,"wp_function":311},"n31",{"id":402,"type":304,"label":403,"file":217,"line":404},"n32","$_POST['beerratings_beerreviewlist_item']",224,{"id":406,"type":309,"label":310,"file":217,"line":404,"wp_function":311},"n33",{"id":408,"type":304,"label":409,"file":217,"line":410},"n34","$_POST['beerratings_beerreviewlist_footer']",225,{"id":412,"type":309,"label":310,"file":217,"line":410,"wp_function":311},"n35",{"id":414,"type":304,"label":415,"file":217,"line":416},"n36","$_POST['beerratings_beerlist_top50_header']",227,{"id":418,"type":309,"label":310,"file":217,"line":416,"wp_function":311},"n37",{"id":420,"type":304,"label":421,"file":217,"line":422},"n38","$_POST['beerratings_beerlist_top50_item']",228,{"id":424,"type":309,"label":310,"file":217,"line":422,"wp_function":311},"n39",{"id":426,"type":304,"label":427,"file":217,"line":428},"n40","$_POST['beerratings_beerlist_top50_footer']",229,{"id":430,"type":309,"label":310,"file":217,"line":428,"wp_function":311},"n41",{"id":432,"type":304,"label":433,"file":217,"line":434},"n42","$_POST['beerratings_beerlist_bystyle_header']",231,{"id":436,"type":309,"label":310,"file":217,"line":434,"wp_function":311},"n43",{"id":438,"type":304,"label":439,"file":217,"line":440},"n44","$_POST['beerratings_beerlist_bystyle_item']",232,{"id":442,"type":309,"label":310,"file":217,"line":440,"wp_function":311},"n45",{"id":444,"type":304,"label":445,"file":217,"line":446},"n46","$_POST['beerratings_beerlist_bystyle_footer']",233,{"id":448,"type":309,"label":310,"file":217,"line":446,"wp_function":311},"n47",{"id":450,"type":304,"label":451,"file":217,"line":452},"n48","$_POST['beerratings_beerlist_bycountry_header']",235,{"id":454,"type":309,"label":310,"file":217,"line":452,"wp_function":311},"n49",{"id":456,"type":304,"label":457,"file":217,"line":458},"n50","$_POST['beerratings_beerlist_bycountry_item']",236,{"id":460,"type":309,"label":310,"file":217,"line":458,"wp_function":311},"n51",{"id":462,"type":304,"label":463,"file":217,"line":464},"n52","$_POST['beerratings_beerlist_bycountry_footer']",237,{"id":466,"type":309,"label":310,"file":217,"line":464,"wp_function":311},"n53",{"id":468,"type":304,"label":469,"file":217,"line":470},"n54","$_POST['beerratings_beerlist_byseason_header']",239,{"id":472,"type":309,"label":310,"file":217,"line":470,"wp_function":311},"n55",{"id":474,"type":304,"label":475,"file":217,"line":476},"n56","$_POST['beerratings_beerlist_byseason_item']",240,{"id":478,"type":309,"label":310,"file":217,"line":476,"wp_function":311},"n57",{"id":480,"type":304,"label":481,"file":217,"line":482},"n58","$_POST['beerratings_beerlist_byseason_footer']",241,{"id":484,"type":309,"label":310,"file":217,"line":482,"wp_function":311},"n59",{"id":486,"type":304,"label":487,"file":217,"line":488},"n60","$_POST['beerratings_placelist_header']",243,{"id":490,"type":309,"label":310,"file":217,"line":488,"wp_function":311},"n61",{"id":492,"type":304,"label":493,"file":217,"line":494},"n62","$_POST['beerratings_placelist_item']",244,{"id":496,"type":309,"label":310,"file":217,"line":494,"wp_function":311},"n63",{"id":498,"type":304,"label":499,"file":217,"line":500},"n64","$_POST['beerratings_placelist_footer']",245,{"id":502,"type":309,"label":310,"file":217,"line":500,"wp_function":311},"n65",[504,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537],{"from":303,"to":308,"sanitized":505},true,{"from":313,"to":316,"sanitized":505},{"from":318,"to":322,"sanitized":505},{"from":324,"to":328,"sanitized":505},{"from":330,"to":334,"sanitized":505},{"from":336,"to":340,"sanitized":505},{"from":342,"to":346,"sanitized":505},{"from":348,"to":352,"sanitized":505},{"from":354,"to":358,"sanitized":505},{"from":360,"to":364,"sanitized":505},{"from":366,"to":370,"sanitized":505},{"from":372,"to":376,"sanitized":505},{"from":378,"to":382,"sanitized":505},{"from":384,"to":388,"sanitized":505},{"from":390,"to":394,"sanitized":505},{"from":396,"to":400,"sanitized":505},{"from":402,"to":406,"sanitized":505},{"from":408,"to":412,"sanitized":505},{"from":414,"to":418,"sanitized":505},{"from":420,"to":424,"sanitized":505},{"from":426,"to":430,"sanitized":505},{"from":432,"to":436,"sanitized":505},{"from":438,"to":442,"sanitized":505},{"from":444,"to":448,"sanitized":505},{"from":450,"to":454,"sanitized":505},{"from":456,"to":460,"sanitized":505},{"from":462,"to":466,"sanitized":505},{"from":468,"to":472,"sanitized":505},{"from":474,"to":478,"sanitized":505},{"from":480,"to":484,"sanitized":505},{"from":486,"to":490,"sanitized":505},{"from":492,"to":496,"sanitized":505},{"from":498,"to":502,"sanitized":505},"low",{"entryPoint":540,"graph":541,"unsanitizedCount":28,"severity":538},"\u003CBeerRatings_Settings> (includes\\BeerRatings_Settings.php:0)",{"nodes":542,"edges":609},[543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608],{"id":303,"type":304,"label":305,"file":217,"line":306},{"id":308,"type":309,"label":310,"file":217,"line":306,"wp_function":311},{"id":313,"type":304,"label":314,"file":217,"line":27},{"id":316,"type":309,"label":310,"file":217,"line":27,"wp_function":311},{"id":318,"type":304,"label":319,"file":217,"line":320},{"id":322,"type":309,"label":310,"file":217,"line":320,"wp_function":311},{"id":324,"type":304,"label":325,"file":217,"line":326},{"id":328,"type":309,"label":310,"file":217,"line":326,"wp_function":311},{"id":330,"type":304,"label":331,"file":217,"line":332},{"id":334,"type":309,"label":310,"file":217,"line":332,"wp_function":311},{"id":336,"type":304,"label":337,"file":217,"line":338},{"id":340,"type":309,"label":310,"file":217,"line":338,"wp_function":311},{"id":342,"type":304,"label":343,"file":217,"line":344},{"id":346,"type":309,"label":310,"file":217,"line":344,"wp_function":311},{"id":348,"type":304,"label":349,"file":217,"line":350},{"id":352,"type":309,"label":310,"file":217,"line":350,"wp_function":311},{"id":354,"type":304,"label":355,"file":217,"line":356},{"id":358,"type":309,"label":310,"file":217,"line":356,"wp_function":311},{"id":360,"type":304,"label":361,"file":217,"line":362},{"id":364,"type":309,"label":310,"file":217,"line":362,"wp_function":311},{"id":366,"type":304,"label":367,"file":217,"line":368},{"id":370,"type":309,"label":310,"file":217,"line":368,"wp_function":311},{"id":372,"type":304,"label":373,"file":217,"line":374},{"id":376,"type":309,"label":310,"file":217,"line":374,"wp_function":311},{"id":378,"type":304,"label":379,"file":217,"line":380},{"id":382,"type":309,"label":310,"file":217,"line":380,"wp_function":311},{"id":384,"type":304,"label":385,"file":217,"line":386},{"id":388,"type":309,"label":310,"file":217,"line":386,"wp_function":311},{"id":390,"type":304,"label":391,"file":217,"line":392},{"id":394,"type":309,"label":310,"file":217,"line":392,"wp_function":311},{"id":396,"type":304,"label":397,"file":217,"line":398},{"id":400,"type":309,"label":310,"file":217,"line":398,"wp_function":311},{"id":402,"type":304,"label":403,"file":217,"line":404},{"id":406,"type":309,"label":310,"file":217,"line":404,"wp_function":311},{"id":408,"type":304,"label":409,"file":217,"line":410},{"id":412,"type":309,"label":310,"file":217,"line":410,"wp_function":311},{"id":414,"type":304,"label":415,"file":217,"line":416},{"id":418,"type":309,"label":310,"file":217,"line":416,"wp_function":311},{"id":420,"type":304,"label":421,"file":217,"line":422},{"id":424,"type":309,"label":310,"file":217,"line":422,"wp_function":311},{"id":426,"type":304,"label":427,"file":217,"line":428},{"id":430,"type":309,"label":310,"file":217,"line":428,"wp_function":311},{"id":432,"type":304,"label":433,"file":217,"line":434},{"id":436,"type":309,"label":310,"file":217,"line":434,"wp_function":311},{"id":438,"type":304,"label":439,"file":217,"line":440},{"id":442,"type":309,"label":310,"file":217,"line":440,"wp_function":311},{"id":444,"type":304,"label":445,"file":217,"line":446},{"id":448,"type":309,"label":310,"file":217,"line":446,"wp_function":311},{"id":450,"type":304,"label":451,"file":217,"line":452},{"id":454,"type":309,"label":310,"file":217,"line":452,"wp_function":311},{"id":456,"type":304,"label":457,"file":217,"line":458},{"id":460,"type":309,"label":310,"file":217,"line":458,"wp_function":311},{"id":462,"type":304,"label":463,"file":217,"line":464},{"id":466,"type":309,"label":310,"file":217,"line":464,"wp_function":311},{"id":468,"type":304,"label":469,"file":217,"line":470},{"id":472,"type":309,"label":310,"file":217,"line":470,"wp_function":311},{"id":474,"type":304,"label":475,"file":217,"line":476},{"id":478,"type":309,"label":310,"file":217,"line":476,"wp_function":311},{"id":480,"type":304,"label":481,"file":217,"line":482},{"id":484,"type":309,"label":310,"file":217,"line":482,"wp_function":311},{"id":486,"type":304,"label":487,"file":217,"line":488},{"id":490,"type":309,"label":310,"file":217,"line":488,"wp_function":311},{"id":492,"type":304,"label":493,"file":217,"line":494},{"id":496,"type":309,"label":310,"file":217,"line":494,"wp_function":311},{"id":498,"type":304,"label":499,"file":217,"line":500},{"id":502,"type":309,"label":310,"file":217,"line":500,"wp_function":311},[610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642],{"from":303,"to":308,"sanitized":505},{"from":313,"to":316,"sanitized":505},{"from":318,"to":322,"sanitized":505},{"from":324,"to":328,"sanitized":505},{"from":330,"to":334,"sanitized":505},{"from":336,"to":340,"sanitized":505},{"from":342,"to":346,"sanitized":505},{"from":348,"to":352,"sanitized":505},{"from":354,"to":358,"sanitized":505},{"from":360,"to":364,"sanitized":505},{"from":366,"to":370,"sanitized":505},{"from":372,"to":376,"sanitized":505},{"from":378,"to":382,"sanitized":505},{"from":384,"to":388,"sanitized":505},{"from":390,"to":394,"sanitized":505},{"from":396,"to":400,"sanitized":505},{"from":402,"to":406,"sanitized":505},{"from":408,"to":412,"sanitized":505},{"from":414,"to":418,"sanitized":505},{"from":420,"to":424,"sanitized":505},{"from":426,"to":430,"sanitized":505},{"from":432,"to":436,"sanitized":505},{"from":438,"to":442,"sanitized":505},{"from":444,"to":448,"sanitized":505},{"from":450,"to":454,"sanitized":505},{"from":456,"to":460,"sanitized":505},{"from":462,"to":466,"sanitized":505},{"from":468,"to":472,"sanitized":505},{"from":474,"to":478,"sanitized":505},{"from":480,"to":484,"sanitized":505},{"from":486,"to":490,"sanitized":505},{"from":492,"to":496,"sanitized":505},{"from":498,"to":502,"sanitized":505},{"summary":644,"deductions":645},"The \"beer-ratings\" plugin version 1.0.2 exhibits a mixed security posture.  On the positive side, it demonstrates good practices by using prepared statements for all SQL queries and does not have any known vulnerabilities or CVEs in its history. The absence of critical or high severity taint flows is also encouraging. However, significant concerns arise from the static analysis. The presence of a dangerous function like `unserialize` without any explicit mention of sanitization or context is a major red flag. Furthermore, the plugin has a substantial number of shortcodes, which form its entire attack surface, and while there are capability checks, there are zero nonce checks. The output escaping is also alarmingly low, with only 9% of outputs being properly escaped, leaving ample room for Cross-Site Scripting (XSS) vulnerabilities.\n\nThe lack of vulnerability history is a positive indicator, suggesting the plugin has not been historically a target or has been developed with reasonable security in mind. However, this must be weighed against the static analysis findings. The high number of shortcodes as the sole entry points, combined with the lack of nonce checks and poor output escaping, presents a significant risk of XSS attacks. The `unserialize` function, if used with user-supplied data, could lead to remote code execution or denial-of-service vulnerabilities. While the plugin shows strengths in SQL handling and has a clean vulnerability record, the identified weaknesses in handling user input and output present substantial risks that require immediate attention.",[646,649,651,654],{"reason":647,"points":648},"Presence of unserialize function",15,{"reason":650,"points":11},"Low percentage of properly escaped output",{"reason":652,"points":653},"Zero nonce checks on entry points",8,{"reason":655,"points":656},"Attack surface relies on shortcodes",5,"2026-03-17T01:42:43.231Z",{"wat":659,"direct":670},{"assetPaths":660,"generatorPatterns":664,"scriptPaths":665,"versionParams":666},[661,662,663],"\u002Fwp-content\u002Fplugins\u002Fbeer-ratings\u002Fcss\u002Fbeer-ratings-admin.css","\u002Fwp-content\u002Fplugins\u002Fbeer-ratings\u002Fcss\u002Fbeer-ratings.css","\u002Fwp-content\u002Fplugins\u002Fbeer-ratings\u002Fjs\u002Fbeer-ratings.js",[],[663],[667,668,669],"beer-ratings\u002Fcss\u002Fbeer-ratings-admin.css?ver=","beer-ratings\u002Fcss\u002Fbeer-ratings.css?ver=","beer-ratings\u002Fjs\u002Fbeer-ratings.js?ver=",{"cssClasses":671,"htmlComments":677,"htmlAttributes":678,"restEndpoints":681,"jsGlobals":682,"shortcodeOutput":683},[672,673,674,675,676],"beerratings_credit","beerratings_brewer_list","beerratings_brewer_item","beerratings_beer_list","beerratings_beer_item",[],[679,680],"id='brewer-#_BREWERID'","id='beer-#_BEERID'",[],[],[684,685,686,687,688,689,690,691,692,693,694],"[beerratings-place-search]","[beerratings-place]","[beerratings-brewer]","[beerratings-beer-review]","[beerratings-beer-place]","[beerratings-beer-brewer]","[beerratings-beer]","[beerratings-bestbeer-style]","[beerratings-bestbeer-season]","[beerratings-bestbeer-country]","[beerratings-bestbeer]"]