[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f64qa13u6UPntbslwKKpA5cSQBeGV84s3McRjXWhr6Ng":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":40,"analysis":145,"fingerprints":932},"product-watermark-for-woocommerce","Product Watermark for WooCommerce","1.3.9.2","BeRocket","https:\u002F\u002Fprofiles.wordpress.org\u002Fberocket\u002F","\u003Cp>Product Watermark for WooCommerce plugin allows you to add watermark to images that applied to products. These watermarks can be an image copyright symbol, company logo or text. You will need few clicks to apply a logo or a watermark on all your product images.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cp>✅ Watermark for product images\u003Cbr \u002F>\n✅ Custom watermark position\u003Cbr \u002F>\n✅ Watermarks with transparency is supported\u003Cbr \u002F>\n✅ Custom CSS for front end pages\u003C\u002Fp>\n\u003Ch4>Additional Features in Paid Plugin:\u003C\u002Fh4>\n\u003Cp>✅ Custom watermark size\u003Cbr \u002F>\n✅ Different watermarks for different image type\u003Cbr \u002F>\n✅ Save aspect ratio for watermarks\u003Cbr \u002F>\n✅ From 1 to 5 watermarks\u003Cbr \u002F>\n✅ Place text to images\u003Cbr \u002F>\n✅ Options to set text color, size and transparency\u003C\u002Fp>\n\u003Ch4>Plugin Links:\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fberocket.com\u002Fwoocommerce-products-image-watermark\u002F?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=image_watermark\" rel=\"nofollow ugc\">Paid Plugin\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwoocommerce-currency-exchange.berocket.com\u002Fshop\u002F?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=image_watermark\" rel=\"nofollow ugc\">Demo\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fdocs.berocket.com\u002Fplugin\u002Fwoocommerce-products-image-watermark?utm_source=wordpress_org&utm_medium=plugin_links&utm_campaign=image_watermark\" rel=\"nofollow ugc\">Docs\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>🍬 Wanna try admin side?\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fberocket.com\u002Fwoocommerce-products-image-watermark\u002F?utm_source=wordpress_org&utm_medium=admin_demo&utm_campaign=image_watermark#try-admin\" rel=\"nofollow ugc\">Admin Demo\u003C\u002Fa> – Get access to this plugin’s admin and try it from inside. Change things and watch how they work.\u003C\u002Fp>\n\u003Ch4>Premium plugin video\u003C\u002Fh4>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FSrIhU35n0P0?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>\u003Cbr \u002F>\n\u003Cem>we don’t have video with free plugin right now but we are working on it\u003C\u002Fem>\u003C\u002Fp>\n\u003Ch4>Compatibility with WooCommerce plugins\u003C\u002Fh4>\n\u003Cp>Product Watermark for WooCommerce has been tested and compatibility is certain with the following WooCommerce plugins that you can add to your site:\u003C\u002Fp>\n\u003Cp>🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce-ajax-filters\u002F\" rel=\"ugc\">\u003Cstrong>Advanced AJAX Product Filters\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fload-more-products-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Load More Products for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgridlist-view-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Grid\u002FList View for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fproduct-preview-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Product Preview for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fproducts-compare-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Products Compare for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsales-report-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Sales Report for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003Cbr \u002F>\n🔸 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwish-wait-list-for-woocommerce\u002F\" rel=\"ugc\">\u003Cstrong>Wishlist and Waitlist for WooCommerce\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n","Allows you to add watermark to images that applied to products",2000,94936,74,55,"2025-12-10T16:01:00.000Z","6.9.4","5.0","7.0",[20,21,22,23,24],"photo-watermark","picture-watermark","product-image","product-watermark","watermark","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002F?utm_source=free_plugin&utm_medium=plugins&utm_campaign=image_watermark","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fproduct-watermark-for-woocommerce.1.3.9.2.zip",100,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":33,"display_name":7,"profile_url":8,"plugin_count":34,"total_installs":35,"avg_security_score":36,"avg_patch_time_days":37,"trust_score":38,"computed_at":39},"berocket",22,139250,99,381,78,"2026-04-04T05:41:28.142Z",[41,63,84,106,125],{"slug":42,"name":43,"version":44,"author":45,"author_profile":46,"description":47,"short_description":48,"active_installs":49,"downloaded":50,"rating":51,"num_ratings":52,"last_updated":53,"tested_up_to":16,"requires_at_least":54,"requires_php":55,"tags":56,"homepage":60,"download_link":61,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":62},"product-image-watermark-for-woo","Product Image Watermark for Woo","1.1.0","WPWeb Infotech","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpwebinfotech\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpwebinfotech.com\u002Fproducts\u002Fproduct-image-watermark-for-woocommerce\u002F\" rel=\"nofollow ugc\">Product Image Watermark for Woo\u003C\u002Fa> plugin allows you to automatically apply watermarks to your downloadable WooCommerce product images to protect them from unauthorized reuse. Add your company logo, copyright symbol, or branding text as a watermark to maintain brand identity and secure your product visuals.\u003C\u002Fp>\n\u003Cp>The plugin works seamlessly with WooCommerce and automatically adds watermarks to product images, galleries, variations, and thumbnails. You can also bulk apply watermarks to your existing product images with just a few clicks.\u003C\u002Fp>\n\u003Cp>Whether you run a small store or manage a large WooCommerce catalog, this plugin makes it easy to safeguard your product images without affecting site performance.\u003C\u002Fp>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Automatic Watermarking\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Automatically add watermarks to all newly uploaded WooCommerce product images.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Bulk Watermark for Existing Images\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Apply watermarks to your entire existing product catalog with a single action.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image or Text Watermarks\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Add watermark as:\u003Cbr \u002F>\n– Image watermark (logo or PNG\u002FWebP)\u003Cbr \u002F>\n– Text watermark for simple copyright or branding labels with different font family, font color, and control over font size.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Live Watermark Preview\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Preview watermark placement instantly before applying it to product images.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Flexible Watermark Positioning\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Place watermarks in 9 predefined positions:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Top Left  \u003C\u002Fli>\n\u003Cli>Top Center  \u003C\u002Fli>\n\u003Cli>Top Right  \u003C\u002Fli>\n\u003Cli>Center Left  \u003C\u002Fli>\n\u003Cli>Center  \u003C\u002Fli>\n\u003Cli>Center Right  \u003C\u002Fli>\n\u003Cli>Bottom Left  \u003C\u002Fli>\n\u003Cli>Bottom Center  \u003C\u002Fli>\n\u003Cli>Bottom Right  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Repeat Watermark Option\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Tile the watermark across the image for stronger protection.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Works with All WooCommerce Image Types\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>✅ Supports:\u003Cbr \u002F>\n– Product images\u003Cbr \u002F>\n– Gallery images\u003Cbr \u002F>\n– Variation images\u003Cbr \u002F>\n– Thumbnails\u003Cbr \u002F>\n– Generated WooCommerce image sizes\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Supports Multiple Image Sizes\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Apply watermarks to any generated image size used by WooCommerce.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User-Friendly Admin Interface\u003C\u002Fstrong>\u003Cbr \u002F>\n✅ Simple and intuitive settings panel inside WooCommerce for quick setup.\u003C\u002Fp>\n\u003Ch3>Can be used for\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Protecting WooCommerce product images from unauthorized reuse  \u003C\u002Fli>\n\u003Cli>Adding logo watermarks to product images  \u003C\u002Fli>\n\u003Cli>Adding copyright text to product photos  \u003C\u002Fli>\n\u003Cli>Maintaining brand identity across product catalogs  \u003C\u002Fli>\n\u003Cli>Protecting product images in large WooCommerce stores  \u003C\u002Fli>\n\u003Cli>Preventing competitors from reusing your product images\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Helpful Links\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fdocs.wpwebelite.com\u002Fwoocommerce\u002Fproduct-image-watermark-for-woocommerce\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpwebinfotech.com\u002Fproducts\u002Fproduct-image-watermark-for-woocommerce\u002F\" rel=\"nofollow ugc\">Plugin Site\u003C\u002Fa>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwpwebinfotech.com\u002Fproducts\u002Fproduct-image-watermark-for-woocommerce\u002F#compatible\" rel=\"nofollow ugc\">Compatibility\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Check Our Other Plugins\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwpwebinfotech.com\u002Fproducts\u002F\" rel=\"nofollow ugc\">WordPress Plugins\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Configuration\u003C\u002Fh3>\n\u003Cp>Product Image Watermark for Woo will add a new settings section inside the WooCommerce settings page with the name \u003Cstrong>“Product Watermark”\u003C\u002Fstrong>. There you will be able to set the watermark image for each image size and define the position of the watermark.\u003C\u002Fp>\n","Automatically add watermarks to WooCommerce product images to protect your store visuals and maintain brand identity.",30,12004,88,7,"","6.8","7.4",[57,20,23,58,59],"image-watermark","text-watermark","woocommerce-watermark","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fproduct-image-watermark-for-woo\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fproduct-image-watermark-for-woo.1.1.0.zip","2026-03-15T10:48:56.248Z",{"slug":64,"name":65,"version":66,"author":67,"author_profile":68,"description":69,"short_description":70,"active_installs":71,"downloaded":72,"rating":73,"num_ratings":74,"last_updated":75,"tested_up_to":16,"requires_at_least":17,"requires_php":55,"tags":76,"homepage":80,"download_link":81,"security_score":36,"vuln_count":82,"unpatched_count":28,"last_vuln_date":83,"fetched_at":30},"ultimate-watermark","Ultimate Watermark – Protect Images with Professional Watermarks","2.0.4","MantraBrain","https:\u002F\u002Fprofiles.wordpress.org\u002Fmantrabrain\u002F","\u003Cp>\u003Cstrong>Ultimate Watermark\u003C\u002Fstrong> is the complete WordPress image protection solution trusted by photographers, e-commerce stores, and content creators worldwide. Automatically add professional watermarks to protect your images from unauthorized use while maintaining complete control over positioning, opacity, and appearance.\u003C\u002Fp>\n\u003Ch4>🚀 Why Choose Ultimate Watermark?\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Protect Your Visual Content\u003C\u002Fstrong> – Whether you’re a professional photographer protecting your portfolio, an online store branding product images, or a blogger safeguarding your content, Ultimate Watermark provides enterprise-level protection with an easy-to-use interface.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Automatic & Effortless\u003C\u002Fstrong> – Watermarks are applied automatically as images are uploaded to your WordPress media library. No manual work required – just upload and your images are instantly protected.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Non-Destructive with Backups\u003C\u002Fstrong> – Original images are safely backed up before watermarking, allowing you to remove watermarks and restore originals anytime without quality loss.\u003C\u002Fp>\n\u003Ch4>🔗 Important Links\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark#pricing\" rel=\"nofollow ugc\">Try Pro Version\u003C\u002Fa>\u003C\u002Fstrong> – Upgrade to unlock unlimited watermarks and advanced features\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark\" rel=\"nofollow ugc\">Plugin Homepage\u003C\u002Fa>\u003C\u002Fstrong> – Official landing page with features and demos\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fultimate-watermark\u002F\" rel=\"ugc\">Get Support\u003C\u002Fa>\u003C\u002Fstrong> – Free community support forum\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fcontact\" rel=\"nofollow ugc\">Feature Requests\u003C\u002Fa>\u003C\u002Fstrong> – Suggest new features and improvements\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>📺 Video Walkthrough\u003C\u002Fh4>\n\u003Cp>Watch this quick video tutorial to see Ultimate Watermark in action and learn how to protect your images in minutes:\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F6QcDWgtaJRU?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>\u003C\u002Fp>\n\u003Ch4>⭐ Key Features (Free Version)\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>🖼️ Flexible Watermark Types\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Image Watermarks\u003C\u002Fstrong> – Upload your logo, signature, or custom watermark image\u003Cbr \u002F>\n* \u003Cstrong>Text Watermarks\u003C\u002Fstrong> – Add copyright text, website URL, or custom messages\u003Cbr \u002F>\n* \u003Cstrong>Unlimited Combinations\u003C\u002Fstrong> – Mix and match watermark styles for different purposes\u003Cbr \u002F>\n* \u003Cstrong>PNG Transparency Support\u003C\u002Fstrong> – Professional watermarks with transparent backgrounds\u003C\u002Fp>\n\u003Cp>\u003Cstrong>⚙️ Advanced Watermark Control\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Automatic Application\u003C\u002Fstrong> – Watermarks applied instantly on image upload\u003Cbr \u002F>\n* \u003Cstrong>Manual Watermarking\u003C\u002Fstrong> – Bulk watermark existing images in media library\u003Cbr \u002F>\n* \u003Cstrong>Size Control\u003C\u002Fstrong> – Original size, custom dimensions (pixels), or scaled percentage (1-100%)\u003Cbr \u002F>\n* \u003Cstrong>Opacity Adjustment\u003C\u002Fstrong> – Control transparency from 0% (invisible) to 100% (opaque)\u003Cbr \u002F>\n* \u003Cstrong>Quality Optimization\u003C\u002Fstrong> – Set output quality (1-100%) for optimal file sizes\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📍 Precise Positioning\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>9-Position Grid\u003C\u002Fstrong> – Top\u002FMiddle\u002FBottom × Left\u002FCenter\u002FRight alignment\u003Cbr \u002F>\n* \u003Cstrong>Pixel-Perfect Offsets\u003C\u002Fstrong> – X and Y positioning with pixel or percentage units\u003Cbr \u002F>\n* \u003Cstrong>Preview System\u003C\u002Fstrong> – Real-time preview before applying watermarks\u003Cbr \u002F>\n* \u003Cstrong>Consistent Branding\u003C\u002Fstrong> – Same positioning across all watermarked images\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎯 Smart Targeting\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Image Size Selection\u003C\u002Fstrong> – Watermark specific sizes (thumbnail, medium, large, full)\u003Cbr \u002F>\n* \u003Cstrong>Post Type Filtering\u003C\u002Fstrong> – Apply watermarks only to selected post types\u003Cbr \u002F>\n* \u003Cstrong>Conditional Rules\u003C\u002Fstrong> – Create rules for when watermarks should be applied\u003Cbr \u002F>\n* \u003Cstrong>Custom Image Sizes\u003C\u002Fstrong> – Support for theme and plugin custom image sizes\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💾 Backup & Recovery\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Automatic Backups\u003C\u002Fstrong> – Original images backed up before watermarking\u003Cbr \u002F>\n* \u003Cstrong>Safe Removal\u003C\u002Fstrong> – Restore original images by removing watermarks\u003Cbr \u002F>\n* \u003Cstrong>Configurable Quality\u003C\u002Fstrong> – Set backup image quality to balance storage and preservation\u003Cbr \u002F>\n* \u003Cstrong>Bulk Operations\u003C\u002Fstrong> – Remove watermarks from multiple images at once\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🛡️ Image Protection\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Right-Click Disable\u003C\u002Fstrong> – Prevent image downloading via right-click\u003Cbr \u002F>\n* \u003Cstrong>Drag & Drop Prevention\u003C\u002Fstrong> – Stop users from dragging images to desktop\u003Cbr \u002F>\n* \u003Cstrong>User-Level Controls\u003C\u002Fstrong> – Optional protection settings for logged-in users\u003Cbr \u002F>\n* \u003Cstrong>Multi-Layer Security\u003C\u002Fstrong> – Combine watermarks with protection features\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🔧 Technical Excellence\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Dual Library Support\u003C\u002Fstrong> – Works with GD and ImageMagick for maximum compatibility\u003Cbr \u002F>\n* \u003Cstrong>WordPress 6.8 Ready\u003C\u002Fstrong> – Fully tested with latest WordPress version\u003Cbr \u002F>\n* \u003Cstrong>PHP 8.4 Compatible\u003C\u002Fstrong> – Modern PHP support with no deprecation warnings\u003Cbr \u002F>\n* \u003Cstrong>Metadata Preservation\u003C\u002Fstrong> – Maintains EXIF and IPTC data\u003Cbr \u002F>\n* \u003Cstrong>Memory Optimized\u003C\u002Fstrong> – Efficient processing for large image libraries\u003Cbr \u002F>\n* \u003Cstrong>REST API Integration\u003C\u002Fstrong> – Programmatic watermarking support\u003C\u002Fp>\n\u003Ch4>🎨 Perfect For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Photographers\u003C\u002Fstrong> – Protect portfolio images and client work\u003C\u002Fli>\n\u003Cli>\u003Cstrong>E-commerce Stores\u003C\u002Fstrong> – Brand product images and prevent theft\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bloggers & Content Creators\u003C\u002Fstrong> – Safeguard visual content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Digital Artists\u003C\u002Fstrong> – Add copyright protection to artwork\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Corporate Websites\u003C\u002Fstrong> – Maintain brand consistency across images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Media Publishers\u003C\u002Fstrong> – Protect editorial and news images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Online Portfolios\u003C\u002Fstrong> – Showcase work while preventing unauthorized use\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🚀 Quick Start Guide\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Install & Activate\u003C\u002Fstrong> the plugin from WordPress admin\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Navigate to\u003C\u002Fstrong> Ultimate Watermark \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Add New Watermark\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Create Watermark\u003C\u002Fstrong> – Upload image or add text watermark\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configure Position\u003C\u002Fstrong> – Choose alignment and offset\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Enable Automatic\u003C\u002Fstrong> – Turn on automatic watermarking\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Upload Images\u003C\u002Fstrong> – New uploads are automatically watermarked!\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>💎 Pro Features – Upgrade for Advanced Capabilities\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark#pricing\" rel=\"nofollow ugc\">Upgrade to Ultimate Watermark Pro\u003C\u002Fa>\u003C\u002Fstrong> for powerful features:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎯 Unlimited Watermarks\u003C\u002Fstrong>\u003Cbr \u002F>\n* Create unlimited watermark templates (Free: 1 watermark limit)\u003Cbr \u002F>\n* Different watermarks for different purposes\u003Cbr \u002F>\n* A\u002FB test watermark effectiveness\u003Cbr \u002F>\n* Seasonal and campaign-specific watermarks\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📝 Dynamic Content Placeholders\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>EXIF Data\u003C\u002Fstrong> – Camera model, lens, ISO, aperture, shutter speed\u003Cbr \u002F>\n* \u003Cstrong>Date & Time\u003C\u002Fstrong> – Upload date, current date, custom formats\u003Cbr \u002F>\n* \u003Cstrong>User Information\u003C\u002Fstrong> – Author name, username, user ID\u003Cbr \u002F>\n* \u003Cstrong>Post Data\u003C\u002Fstrong> – Post title, category, tags, custom fields\u003Cbr \u002F>\n* \u003Cstrong>Site Information\u003C\u002Fstrong> – Site name, URL, tagline\u003Cbr \u002F>\n* \u003Cstrong>Custom Variables\u003C\u002Fstrong> – Create your own dynamic placeholders\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🛒 WooCommerce Integration\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Per-Product Watermarks\u003C\u002Fstrong> – Different watermarks for different products\u003Cbr \u002F>\n* \u003Cstrong>Category-Based Watermarks\u003C\u002Fstrong> – Auto-apply based on product category\u003Cbr \u002F>\n* \u003Cstrong>Bulk Operations\u003C\u002Fstrong> – Watermark all product images at once\u003Cbr \u002F>\n* \u003Cstrong>Priority Cascade\u003C\u002Fstrong> – Product \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Category \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Default watermark logic\u003Cbr \u002F>\n* \u003Cstrong>Variation Support\u003C\u002Fstrong> – Watermark product variation images\u003C\u002Fp>\n\u003Cp>\u003Cstrong>👁️ On-the-Fly Display\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Non-Destructive\u003C\u002Fstrong> – Show watermarks without modifying originals\u003Cbr \u002F>\n* \u003Cstrong>Role-Based Bypass\u003C\u002Fstrong> – Hide watermarks for admins\u002Flogged-in users\u003Cbr \u002F>\n* \u003Cstrong>Performance Optimized\u003C\u002Fstrong> – Cached watermark generation\u003Cbr \u002F>\n* \u003Cstrong>Selective Display\u003C\u002Fstrong> – Choose where watermarks appear (frontend\u002Fbackend)\u003Cbr \u002F>\n* \u003Cstrong>Dynamic Switching\u003C\u002Fstrong> – Different watermarks for different contexts\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🎯 Advanced Features\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Frontend Watermarking\u003C\u002Fstrong> – Watermark user-uploaded images\u003Cbr \u002F>\n* \u003Cstrong>Conditional Logic\u003C\u002Fstrong> – Complex rules for watermark application\u003Cbr \u002F>\n* \u003Cstrong>Batch Processing\u003C\u002Fstrong> – Schedule large watermarking jobs\u003Cbr \u002F>\n* \u003Cstrong>API Access\u003C\u002Fstrong> – Programmatic watermark control\u003Cbr \u002F>\n* \u003Cstrong>Custom Hooks\u003C\u002Fstrong> – Extend functionality with WordPress filters\u002Factions\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🆘 Priority Support\u003C\u002Fstrong>\u003Cbr \u002F>\n* \u003Cstrong>Fast Response Times\u003C\u002Fstrong> – Get help when you need it\u003Cbr \u002F>\n* \u003Cstrong>Email Support\u003C\u002Fstrong> – Direct access to our expert team\u003Cbr \u002F>\n* \u003Cstrong>Automatic Updates\u003C\u002Fstrong> – Stay current with latest features\u003Cbr \u002F>\n* \u003Cstrong>Documentation Access\u003C\u002Fstrong> – Comprehensive guides and tutorials\u003Cbr \u002F>\n* \u003Cstrong>14-Day Money-Back Guarantee\u003C\u002Fstrong> – Risk-free purchase\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark#pricing\" rel=\"nofollow ugc\">Get Pro Now \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan>\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>🌐 Links & Resources\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark\" rel=\"nofollow ugc\">Official Website\u003C\u002Fa>\u003C\u002Fstrong> – Plugin homepage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fdocs\u002Fultimate-watermark\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fstrong> – Complete guides\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fultimate-watermark\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa>\u003C\u002Fstrong> – Free community support\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark#pricing\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fstrong> – Upgrade to Pro\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fplugins\u002Fultimate-watermark\u002Fchangelog\" rel=\"nofollow ugc\">Changelog\u003C\u002Fa>\u003C\u002Fstrong> – Version history\u003C\u002Fli>\n\u003Cli>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmantrabrain.com\u002Fsupport\" rel=\"nofollow ugc\">Feature Requests\u003C\u002Fa>\u003C\u002Fstrong> – Suggest new features\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>🔧 System Requirements\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>WordPress 5.0 or higher\u003C\u002Fli>\n\u003Cli>PHP 7.4 or higher (PHP 8.4 supported)\u003C\u002Fli>\n\u003Cli>GD Library OR ImageMagick extension\u003C\u002Fli>\n\u003Cli>Sufficient server memory for image processing (256MB+ recommended)\u003C\u002Fli>\n\u003Cli>Write permissions for WordPress uploads directory\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically protect your images with professional watermarks. Add text or image watermarks to WordPress media uploads with advanced positioning and  &hellip;",1000,23822,66,11,"2026-02-26T05:52:00.000Z",[77,78,79,20,24],"bulk-watermark","copyright","image-protection","https:\u002F\u002Fmantrabrain.com\u002Fultimate-watermark","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fultimate-watermark.2.0.4.zip",1,"2025-09-22 00:00:00",{"slug":85,"name":86,"version":87,"author":88,"author_profile":89,"description":90,"short_description":91,"active_installs":92,"downloaded":93,"rating":13,"num_ratings":94,"last_updated":95,"tested_up_to":96,"requires_at_least":97,"requires_php":98,"tags":99,"homepage":53,"download_link":104,"security_score":36,"vuln_count":82,"unpatched_count":28,"last_vuln_date":105,"fetched_at":30},"easy-watermark","Easy Watermark","1.0.11","Wojtek Szałkiewicz","https:\u002F\u002Fprofiles.wordpress.org\u002Fszaleq\u002F","\u003Cp>Easy Watermark can automatically add watermark to images as they are uploaded to wordpress media library. You can also watermark existing images manually (all at once or an every single image). Watermark can be an image, text or both.\u003C\u002Fp>\n\u003Ch4>See the demo\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FxM_0Y0oX4o0?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\u003Ch4>Plugin features\u003C\u002Fh4>\n\u003Cp>On one image you can have two watermarks! One of them can be text watermark and the other image watermark. You can control their position and size and apply them to your media independently.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Image watermark can be a JPG, PNG or GIF\u003C\u002Fli>\n\u003Cli>Full support for transparency and alpha chanel in PNG and GIF files\u003C\u002Fli>\n\u003Cli>JPG and GIF files and text can have opacity set (from 0 to 100%)\u003C\u002Fli>\n\u003Cli>Text watermark is created using ttf fonts\u003C\u002Fli>\n\u003Cli>Text color, size and rotation can be set\u003C\u002Fli>\n\u003Cli>All built-in image sizes can be watermarked (thumbnail, medium, large and fullsize) as well as all additional sizes registered by themes or plugins\u003C\u002Fli>\n\u003Cli>Plugin can create image backups and allows to easily restore images\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Image watermark\u003C\u002Fh4>\n\u003Cp>Easy Watermark supports three most popular image formats for watermark: JPG, PNG and GIF. For JPG watermarks you can control the opacity as well.\u003C\u002Fp>\n\u003Cp>Watermark can be applied in on of the 9 positions on the image and you can controll the exact sizing of it.\u003C\u002Fp>\n\u003Ch4>Text watermark\u003C\u002Fh4>\n\u003Cp>Text watermark have a powerful feature of placeholders, which can be dynamically applied to the image. Ie. you can put the name of user who uploaded the image as well as the upload date. Watermark text will be automatically generated and applied.\u003C\u002Fp>\n\u003Cp>The plugin supports a few fonts:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Arial\u003C\u002Fli>\n\u003Cli>Arial Black\u003C\u002Fli>\n\u003Cli>Comic Sans MS\u003C\u002Fli>\n\u003Cli>Courier New\u003C\u002Fli>\n\u003Cli>Georgia\u003C\u002Fli>\n\u003Cli>Impact\u003C\u002Fli>\n\u003Cli>Tahoma\u003C\u002Fli>\n\u003Cli>Times New Roman\u003C\u002Fli>\n\u003Cli>Trebuchet MS\u003C\u002Fli>\n\u003Cli>Verdana\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can also place the text watermark in one of the 9 positions on the image, control the angle, color, opacity and size.\u003C\u002Fp>\n\u003Ch4>Custom development\u003C\u002Fh4>\n\u003Cp>BracketSpace – the company behind this plugin provides \u003Ca href=\"https:\u002F\u002Fbracketspace.com\u002Fcustom-development\u002F\" rel=\"nofollow ugc\">custom WordPress plugin development services\u003C\u002Fa>. We can create any custom plugin for you.\u003C\u002Fp>\n","Allows to add watermark to images automatically on upload or manually.",40000,667593,157,"2025-08-25T11:16:00.000Z","6.8.5","4.6","5.6",[100,101,102,103,24],"image","media","photo","picture","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-watermark.1.0.11.zip","2019-02-25 00:00:00",{"slug":57,"name":107,"version":108,"author":109,"author_profile":110,"description":111,"short_description":112,"active_installs":92,"downloaded":113,"rating":114,"num_ratings":115,"last_updated":116,"tested_up_to":16,"requires_at_least":117,"requires_php":18,"tags":118,"homepage":122,"download_link":123,"security_score":36,"vuln_count":82,"unpatched_count":28,"last_vuln_date":124,"fetched_at":30},"Image Watermark","2.0.9","dFactory","https:\u002F\u002Fprofiles.wordpress.org\u002Fdfactory\u002F","\u003Cp>Enhance your WordPress site’s image security and branding. Image Watermark allows you to apply image or text overlays to new uploads and bulk process existing Media Library images with ease.\u003C\u002Fp>\n\u003Ch4>Key Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Watermark Types\u003C\u002Fstrong>: Choose from image-based or text-based watermarks with full customization.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Flexible Application\u003C\u002Fstrong>: Automatic watermarking on uploads, manual\u002Fbulk apply\u002Fremove via Media Library.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Advanced Customization\u003C\u002Fstrong>: Position watermarks precisely, adjust sizes, opacity, and more.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Backup & Restore\u003C\u002Fstrong>: Secure backups for easy watermark removal.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Image Protection\u003C\u002Fstrong>: Prevent copying via right-click, drag-and-drop, and developer tools.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Technical Excellence\u003C\u002Fstrong>: Supports JPEG, PNG, WebP; ImageMagick\u002FGD engines; preserves metadata.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Perfect for photographers, bloggers, and businesses looking to safeguard their visual content.\u003C\u002Fp>\n\u003Cp>For more information, check out the \u003Ca href=\"http:\u002F\u002Fwww.dfactory.co\u002Fproducts\u002Fimage-watermark\u002F\" rel=\"nofollow ugc\">plugin page\u003C\u002Fa>, \u003Ca href=\"http:\u002F\u002Fwww.dfactory.co\u002Fdocs\u002Fimage-watermark\u002F\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>, or \u003Ca href=\"http:\u002F\u002Fwww.dfactory.co\u002Fsupport\u002Fforum\u002Fimage-watermark\u002F\" rel=\"nofollow ugc\">support forum\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Feature Breakdown:\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Watermarking Types:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Support for image-based watermarks (upload custom images as watermarks)\u003Cbr \u002F>\n* Support for text-based watermarks (customizable fonts, colors, and sizes)\u003Cbr \u002F>\n* Automatic watermarking on new uploads to the Media Library\u003Cbr \u002F>\n* Manual and bulk watermarking for existing images (apply or remove via Media Library actions)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customization & Settings:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Flexible watermark positioning (9 alignment options with pixel or percentage-based offsets)\u003Cbr \u002F>\n* Three watermark size modes: original, custom dimensions, or scaled to image size\u003Cbr \u002F>\n* Adjustable watermark transparency and opacity\u003Cbr \u002F>\n* Watermark image preview for real-time adjustments\u003Cbr \u002F>\n* Selective application: Choose specific post types or enable everywhere (including frontend uploads)\u003Cbr \u002F>\n* Image format selection (baseline or progressive JPEG)\u003Cbr \u002F>\n* Configurable image quality settings\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Backup & Management:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Automatic image backup functionality (stores originals for easy restoration)\u003Cbr \u002F>\n* Option to remove watermarks (restores from backups when available)\u003Cbr \u002F>\n* Secure backup storage with .htaccess protection\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Protection:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Disable right-click context menus on images\u003Cbr \u002F>\n* Prevent image copying via drag-and-drop\u003Cbr \u002F>\n* Block access to developer tools for image inspection\u003Cbr \u002F>\n* Customizable protection notice\u002Ftoast message displayed to users attempting to copy images\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Technical Information:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Support for JPEG, PNG, and WebP image formats\u003Cbr \u002F>\n* Dual image processing engines: ImageMagick (preferred) with GD library fallback\u003Cbr \u002F>\n* EXIF and IPTC metadata preservation (where supported)\u003Cbr \u002F>\n* Cache-busting for immediate thumbnail updates after watermark changes\u003Cbr \u002F>\n* Translation-ready with included .pot file\u003C\u002Fp>\n","Secure and brand your images with automatic watermarks. Apply image or text overlays to new uploads and bulk process existing Media Library images wit &hellip;",1119532,82,253,"2026-03-09T15:36:00.000Z","6.0",[100,119,120,24,121],"images","protection","watermarking","http:\u002F\u002Fwww.dfactory.co\u002Fproducts\u002Fimage-watermark\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-watermark.2.0.9.zip","2024-04-05 00:00:00",{"slug":126,"name":127,"version":128,"author":127,"author_profile":129,"description":130,"short_description":131,"active_installs":132,"downloaded":133,"rating":134,"num_ratings":135,"last_updated":136,"tested_up_to":16,"requires_at_least":137,"requires_php":18,"tags":138,"homepage":142,"download_link":143,"security_score":27,"vuln_count":82,"unpatched_count":28,"last_vuln_date":144,"fetched_at":30},"protect-uploads","Protect Uploads","0.6.0","https:\u002F\u002Fprofiles.wordpress.org\u002Falticreation\u002F","\u003Cp>The uploads directory is where the files of the WordPress library are stored. Unfortunelty, this directory is not protected. A person who wants to see all your library could list it instantly going to : http:\u002F\u002Fyourwebsite\u002Fwp-content\u002Fuploads . This plugin will hide the content by adding an index.php file on the root of your uploads directory or by setting an htaccess which will return a 403 error (Forbidden Access).\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Depending on your server setting, the htaccess option could be disabled.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>New Features in Version 0.6.0:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Image Watermarking\u003C\u002Fstrong>: Add text watermarks to your uploaded images with customizable position, opacity, and font size.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Right-Click Protection\u003C\u002Fstrong>: Prevent users from right-clicking to download or save your images.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Password Protection\u003C\u002Fstrong>: Secure individual media files with passwords. Multiple passwords can be set for each file with custom labels.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Access Logging\u003C\u002Fstrong>: Track who accesses your password-protected files with detailed logs including IP address and user agent.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Available languages:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>Français\u003C\u002Fli>\n\u003Cli>Español\u003C\u002Fli>\n\u003Cli>Italian (thanks to Marko97)\u003C\u002Fli>\n\u003C\u002Ful>\n","Protect your uploads directory. Prevent browsing, add watermarks, disable right-click, and password-protect files. For more information, visit protect &hellip;",30000,1372443,96,12,"2025-12-28T21:59:00.000Z","3.0.1",[139,120,140,141,24],"password-protection","security","uploads","https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fprotect-uploads\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fprotect-uploads.0.6.0.zip","2022-08-13 00:00:00",{"attackSurface":146,"codeSignals":547,"taintFlows":800,"riskAssessment":918,"analyzedAt":931},{"hooks":147,"ajaxHandlers":493,"restRoutes":544,"shortcodes":545,"cronEvents":546,"entryPointCount":323,"unprotectedCount":82},[148,153,157,164,168,172,176,178,182,187,190,193,196,200,203,207,210,213,217,221,225,229,233,236,240,245,249,253,255,257,262,265,269,273,278,281,285,287,291,295,299,303,306,308,310,312,315,318,321,324,328,332,336,340,343,345,348,351,353,355,358,360,363,365,367,370,374,376,379,381,383,387,390,394,398,401,405,409,413,416,418,421,425,428,430,432,435,438,443,445,449,453,456,459,461,464,466,469,472,474,478,480,482,484,487,489,491],{"type":149,"name":150,"callback":150,"file":151,"line":152},"action","print_media_templates","addons\\media_buttons\\media_buttons_include.php",4,{"type":149,"name":154,"callback":155,"file":151,"line":156},"attachment_submitbox_misc_actions","attachment_submitbox_metadata",5,{"type":158,"name":159,"callback":160,"priority":161,"file":162,"line":163},"filter","plugins_list","modify_license_type",10,"berocket\\framework.php",84,{"type":158,"name":165,"callback":166,"file":162,"line":167},"BeRocket_updater_add_plugin","updater_info",105,{"type":158,"name":169,"callback":170,"file":162,"line":171},"berocket_admin_notices_rate_stars_plugins","rate_stars_plugins",106,{"type":149,"name":173,"callback":174,"priority":82,"file":162,"line":175},"init","init_translation",107,{"type":149,"name":173,"callback":173,"file":162,"line":177},110,{"type":149,"name":179,"callback":180,"file":162,"line":181},"wp_head","set_styles",111,{"type":149,"name":183,"callback":184,"priority":185,"file":162,"line":186},"wp_footer","set_scripts",9000,112,{"type":149,"name":188,"callback":188,"file":162,"line":189},"admin_init",113,{"type":149,"name":191,"callback":191,"file":162,"line":192},"admin_menu",114,{"type":149,"name":194,"callback":194,"file":162,"line":195},"admin_enqueue_scripts",115,{"type":149,"name":197,"callback":198,"file":162,"line":199},"berocket_enqueue_media","wp_enqueue_media",116,{"type":158,"name":201,"callback":201,"priority":161,"file":162,"line":202},"plugin_row_meta",122,{"type":158,"name":204,"callback":205,"file":162,"line":206},"is_berocket_settings_page","is_settings_page",123,{"type":149,"name":208,"callback":208,"file":162,"line":209},"plugins_loaded",128,{"type":149,"name":211,"callback":211,"file":162,"line":212},"sanitize_comment_cookies",129,{"type":149,"name":214,"callback":215,"priority":82,"file":162,"line":216},"install_plugins_pre_plugin-information","install_plugins_pre_plugin_information",130,{"type":158,"name":218,"callback":219,"file":162,"line":220},"berocket_admin_notices_subscribe_plugins","admin_notices_subscribe_plugins",132,{"type":158,"name":222,"callback":223,"file":162,"line":224},"BeRocket_admin_init_user_capabilities","init_user_capabilities",135,{"type":158,"name":226,"callback":227,"priority":161,"file":162,"line":228},"berocket_sanitize_array_predefine","sanitize_array_predefine",136,{"type":158,"name":230,"callback":231,"priority":161,"file":162,"line":232},"berocket_sanitize_array_kses","sanitize_array_kses",137,{"type":158,"name":230,"callback":234,"priority":161,"file":162,"line":235},"disable_for_old_plugins",140,{"type":149,"name":237,"callback":238,"file":162,"line":239},"before_woocommerce_init","hpos_compatible",150,{"type":158,"name":241,"callback":242,"priority":243,"file":162,"line":244},"loop_shop_per_page","framework_products_per_page_set",999999999,391,{"type":149,"name":246,"callback":247,"file":162,"line":248},"upgrader_process_complete","clear_product_data_transient",499,{"type":149,"name":250,"callback":251,"file":162,"line":252},"admin_footer","fa5live",1158,{"type":149,"name":183,"callback":251,"file":162,"line":254},1159,{"type":149,"name":188,"callback":222,"file":162,"line":256},1273,{"type":149,"name":258,"callback":259,"priority":71,"file":260,"line":261},"admin_bar_menu","debug_admin_bar_menu","berocket\\includes\\admin\\admin_bar.php",8,{"type":149,"name":183,"callback":263,"priority":71,"file":260,"line":264},"footer_bar",9,{"type":158,"name":266,"callback":267,"file":260,"line":268},"berocket_admin_bar_plugins_data","add_plugin_data",149,{"type":149,"name":270,"callback":271,"priority":161,"file":272,"line":152},"BeRocket_framework_updater_account_form_after","account_form","berocket\\includes\\admin\\import_export.php",{"type":158,"name":274,"callback":275,"priority":161,"file":276,"line":277},"berocket_admin_notice_is_display_notice","notice_closed_status","berocket\\includes\\admin_notices.php",75,{"type":158,"name":279,"callback":275,"priority":161,"file":276,"line":280},"berocket_admin_notice_is_display_notice_priority",76,{"type":149,"name":282,"callback":283,"file":276,"line":284},"admin_notices","display_admin_notice",1198,{"type":149,"name":282,"callback":282,"file":276,"line":286},1207,{"type":149,"name":288,"callback":289,"priority":161,"file":276,"line":290},"berocket_rate_plugin_window","show_rate_window",1210,{"type":149,"name":292,"callback":293,"priority":161,"file":276,"line":294},"berocket_related_plugins_window","show_related_window",1211,{"type":149,"name":296,"callback":297,"priority":161,"file":276,"line":298},"berocket_above_admin_settings","show_ad_above_admin_settings",1212,{"type":149,"name":300,"callback":301,"priority":161,"file":276,"line":302},"berocket_feature_request_window","show_feature_request_window",1213,{"type":149,"name":250,"callback":304,"file":276,"line":305},"wp_footer_js",1285,{"type":149,"name":250,"callback":304,"file":276,"line":307},1493,{"type":149,"name":250,"callback":304,"file":276,"line":309},1922,{"type":149,"name":250,"callback":304,"file":276,"line":311},2079,{"type":149,"name":173,"callback":313,"priority":161,"file":314,"line":264},"register_disabled_taxonomy","berocket\\includes\\custom_post\\enable_disable.php",{"type":149,"name":188,"callback":316,"priority":317,"file":314,"line":161},"add_disabled_term",20,{"type":149,"name":319,"callback":319,"file":314,"line":320},"post_action_enable",13,{"type":149,"name":322,"callback":322,"file":314,"line":323},"post_action_disable",14,{"type":158,"name":325,"callback":326,"priority":161,"file":314,"line":327},"post_class","disable_post_class",16,{"type":158,"name":329,"callback":330,"file":314,"line":331},"pre_get_posts","post_filter_isdisabled",18,{"type":149,"name":329,"callback":333,"priority":334,"file":335,"line":34},"sortable_get_posts",999999,"berocket\\includes\\custom_post\\sortable.php",{"type":149,"name":337,"callback":338,"file":335,"line":339},"in_admin_footer","sortable_in_admin_footer",117,{"type":149,"name":173,"callback":174,"priority":82,"file":341,"line":342},"berocket\\includes\\custom_post.php",58,{"type":158,"name":173,"callback":173,"file":341,"line":344},59,{"type":158,"name":188,"callback":188,"priority":346,"file":341,"line":347},15,60,{"type":158,"name":349,"callback":349,"priority":49,"file":341,"line":350},"wp_insert_post_data",61,{"type":158,"name":222,"callback":223,"file":341,"line":352},71,{"type":149,"name":354,"callback":354,"file":341,"line":209},"add_meta_boxes",{"type":149,"name":356,"callback":357,"priority":161,"file":341,"line":212},"save_post","wc_save_product",{"type":158,"name":359,"callback":359,"priority":161,"file":341,"line":216},"post_row_actions",{"type":158,"name":361,"callback":361,"priority":161,"file":341,"line":362},"list_table_primary_column",131,{"type":149,"name":194,"callback":194,"file":341,"line":364},133,{"type":158,"name":204,"callback":366,"file":341,"line":224},"is_post_page",{"type":149,"name":250,"callback":368,"file":341,"line":369},"wp_footer_remove_notice",162,{"type":149,"name":282,"callback":371,"file":372,"line":373},"display_notice","berocket\\includes\\information_notices.php",197,{"type":149,"name":188,"callback":188,"file":375,"line":331},"berocket\\includes\\updater.php",{"type":158,"name":377,"callback":377,"file":375,"line":378},"woocommerce_addons_sections",27,{"type":158,"name":204,"callback":205,"file":375,"line":380},28,{"type":149,"name":250,"callback":382,"file":375,"line":49},"woocommerce_addons_berocket",{"type":149,"name":384,"callback":385,"file":375,"line":386},"admin_head","scripts",39,{"type":149,"name":191,"callback":388,"priority":82,"file":375,"line":389},"main_menu_item",40,{"type":149,"name":191,"callback":391,"priority":392,"file":375,"line":393},"account_page",500,41,{"type":149,"name":395,"callback":396,"file":375,"line":397},"network_admin_menu","network_account_page",42,{"type":149,"name":188,"callback":399,"file":375,"line":400},"account_option_register",43,{"type":158,"name":402,"callback":403,"file":375,"line":404},"pre_set_site_transient_update_plugins","update_check_set",44,{"type":158,"name":406,"callback":407,"priority":161,"file":375,"line":408},"plugins_api_result","plugin_api_data",45,{"type":158,"name":410,"callback":411,"priority":161,"file":375,"line":412},"http_request_host_is_external","allow_berocket_host",48,{"type":149,"name":250,"callback":414,"file":375,"line":415},"error_log",51,{"type":149,"name":183,"callback":414,"file":375,"line":417},52,{"type":158,"name":419,"callback":419,"file":375,"line":420},"berocket_display_additional_notices",92,{"type":158,"name":422,"callback":423,"file":375,"line":424},"custom_menu_order","wp_menu_order",98,{"type":158,"name":274,"callback":426,"priority":161,"file":375,"line":427},"admin_notice_is_display_notice",102,{"type":158,"name":279,"callback":426,"priority":161,"file":375,"line":429},103,{"type":158,"name":406,"callback":407,"priority":161,"file":375,"line":431},109,{"type":149,"name":173,"callback":433,"priority":82,"file":375,"line":434},"run",1413,{"type":149,"name":194,"callback":436,"file":437,"line":152},"add_style","berocket\\sale\\sale.php",{"type":158,"name":439,"callback":440,"priority":161,"file":441,"line":442},"berocket_watermark_apply","apply_image","includes\\imagelib\\gd.php",6,{"type":158,"name":439,"callback":440,"priority":161,"file":444,"line":442},"includes\\imagelib\\imagick.php",{"type":158,"name":446,"callback":447,"priority":161,"file":448,"line":189},"BeRocket_framework_check_init_temp_php_extension","temp_php_extension_check","main.php",{"type":149,"name":450,"callback":451,"priority":161,"file":448,"line":452},"added_post_meta","set_thumbnail_id",124,{"type":149,"name":454,"callback":451,"priority":161,"file":448,"line":455},"updated_post_meta",125,{"type":149,"name":450,"callback":457,"priority":161,"file":448,"line":458},"set_product_image_gallery",126,{"type":149,"name":454,"callback":457,"priority":161,"file":448,"line":460},127,{"type":158,"name":462,"callback":463,"priority":82,"file":448,"line":212},"get_post_metadata","get_thumbnail_id",{"type":158,"name":462,"callback":465,"priority":82,"file":448,"line":216},"get_product_image_gallery",{"type":158,"name":467,"callback":468,"priority":392,"file":448,"line":362},"woocommerce_product_get_image_id","get_image_id_prop",{"type":158,"name":470,"callback":471,"priority":161,"file":448,"line":220},"berocket_apply_all_content_to_image","add_single_image_watermark",{"type":158,"name":419,"callback":473,"file":448,"line":228},"old_framework_notice",{"type":158,"name":475,"callback":476,"priority":156,"file":448,"line":477},"image_downsize","replace_image",198,{"type":158,"name":475,"callback":476,"priority":479,"file":448,"line":479},200,{"type":158,"name":475,"callback":476,"priority":156,"file":448,"line":481},226,{"type":158,"name":475,"callback":476,"priority":479,"file":448,"line":483},228,{"type":158,"name":485,"callback":485,"file":448,"line":486},"intermediate_image_sizes_advanced",358,{"type":158,"name":462,"callback":463,"priority":82,"file":448,"line":488},430,{"type":158,"name":462,"callback":465,"priority":82,"file":448,"line":490},452,{"type":158,"name":467,"callback":468,"priority":392,"file":448,"line":492},467,[494,499,502,505,508,512,516,520,524,528,530,534,538,542],{"action":495,"nopriv":496,"callback":497,"hasNonce":498,"hasCapCheck":498,"file":272,"line":156},"brfr_get_export_settings",false,"get_export",true,{"action":500,"nopriv":496,"callback":501,"hasNonce":498,"hasCapCheck":498,"file":272,"line":442},"brfr_set_import_settings","set_import",{"action":503,"nopriv":496,"callback":504,"hasNonce":498,"hasCapCheck":498,"file":272,"line":52},"brfr_get_import_backups","get_backups",{"action":506,"nopriv":496,"callback":507,"hasNonce":498,"hasCapCheck":498,"file":272,"line":261},"brfr_restore_import_backups","restore_backups",{"action":509,"nopriv":496,"callback":510,"hasNonce":498,"hasCapCheck":498,"file":276,"line":511},"berocket_admin_close_notice","close_notice",1199,{"action":513,"nopriv":496,"callback":514,"hasNonce":496,"hasCapCheck":498,"file":276,"line":515},"berocket_subscribe_email","subscribe",1200,{"action":517,"nopriv":496,"callback":518,"hasNonce":498,"hasCapCheck":498,"file":276,"line":519},"berocket_rate_stars_close","disable_rate_notice",1208,{"action":521,"nopriv":496,"callback":522,"hasNonce":498,"hasCapCheck":498,"file":276,"line":523},"berocket_feature_request_send","feature_request_send",1209,{"action":525,"nopriv":496,"callback":526,"hasNonce":498,"hasCapCheck":498,"file":527,"line":156},"berocket_error_notices_get","get_plugin_error_ajax","berocket\\includes\\error_notices.php",{"action":529,"nopriv":496,"callback":510,"hasNonce":498,"hasCapCheck":498,"file":372,"line":477},"berocket_information_close_notice",{"action":531,"nopriv":496,"callback":532,"hasNonce":498,"hasCapCheck":498,"file":375,"line":533},"br_test_key","test_key",46,{"action":535,"nopriv":496,"callback":536,"hasNonce":498,"hasCapCheck":498,"file":375,"line":537},"br_test_keys","test_keys",47,{"action":539,"nopriv":496,"callback":540,"hasNonce":496,"hasCapCheck":496,"file":541,"line":152},"berocket_get_watermark_images","get_all_images","includes\\generate_watermark.php",{"action":543,"nopriv":496,"callback":543,"hasNonce":496,"hasCapCheck":498,"file":448,"line":364},"berocket_single_image",[],[],[],{"dangerousFunctions":548,"sqlUsage":552,"outputEscaping":558,"fileOperations":261,"externalRequests":156,"nonceChecks":323,"capabilityChecks":798,"bundledLibraries":799},[549],{"fn":550,"file":375,"line":209,"context":551},"unserialize","$error_log = unserialize(preg_replace('\u002FR:\\d+\u002F', 's:18:\"RECURSION DETECTED\"', serialize(self::$error",{"prepared":28,"raw":553,"locations":554},2,[555,557],{"file":541,"line":533,"context":556},"$wpdb->get_col() with variable interpolation",{"file":541,"line":347,"context":556},{"escaped":559,"rawEcho":560,"locations":561},118,147,[562,564,566,568,570,572,574,576,578,580,582,584,586,588,590,592,593,595,596,597,598,600,602,603,605,607,609,611,613,614,615,616,618,620,622,624,626,628,630,632,634,636,638,640,642,643,645,647,648,649,652,654,655,656,657,658,660,661,663,665,667,669,671,673,675,677,679,681,682,684,685,687,689,690,692,694,696,698,700,701,702,704,706,708,709,710,711,712,714,715,716,717,718,719,720,722,724,726,728,729,731,732,734,736,738,740,742,744,745,746,747,748,749,751,753,755,757,759,760,762,763,764,765,766,768,769,771,772,773,774,776,777,779,780,781,782,784,785,787,788,789,790,792,793,795,796,797],{"file":151,"line":323,"context":563},"raw output",{"file":151,"line":565,"context":563},33,{"file":151,"line":567,"context":563},36,{"file":162,"line":569,"context":563},456,{"file":162,"line":571,"context":563},486,{"file":162,"line":573,"context":563},893,{"file":162,"line":575,"context":563},923,{"file":162,"line":577,"context":563},926,{"file":162,"line":579,"context":563},938,{"file":162,"line":581,"context":563},941,{"file":162,"line":583,"context":563},943,{"file":162,"line":585,"context":563},947,{"file":162,"line":587,"context":563},950,{"file":260,"line":589,"context":563},25,{"file":260,"line":591,"context":563},26,{"file":260,"line":380,"context":563},{"file":260,"line":594,"context":563},29,{"file":260,"line":49,"context":563},{"file":272,"line":34,"context":563},{"file":272,"line":420,"context":563},{"file":272,"line":599,"context":563},94,{"file":272,"line":601,"context":563},121,{"file":272,"line":220,"context":563},{"file":272,"line":604,"context":563},139,{"file":272,"line":606,"context":563},159,{"file":272,"line":608,"context":563},187,{"file":272,"line":610,"context":563},196,{"file":276,"line":612,"context":563},423,{"file":276,"line":612,"context":563},{"file":276,"line":612,"context":563},{"file":276,"line":612,"context":563},{"file":276,"line":617,"context":563},1070,{"file":276,"line":619,"context":563},1090,{"file":276,"line":621,"context":563},1114,{"file":276,"line":623,"context":563},1119,{"file":276,"line":625,"context":563},1146,{"file":276,"line":627,"context":563},1235,{"file":276,"line":629,"context":563},1278,{"file":276,"line":631,"context":563},1347,{"file":276,"line":633,"context":563},1366,{"file":276,"line":635,"context":563},1646,{"file":276,"line":637,"context":563},1654,{"file":276,"line":639,"context":563},1673,{"file":335,"line":641,"context":563},95,{"file":335,"line":604,"context":563},{"file":341,"line":644,"context":563},230,{"file":341,"line":646,"context":563},258,{"file":527,"line":567,"context":563},{"file":527,"line":412,"context":563},{"file":650,"line":651,"context":563},"berocket\\includes\\functions.php",1121,{"file":650,"line":653,"context":563},1123,{"file":372,"line":268,"context":563},{"file":372,"line":268,"context":563},{"file":372,"line":268,"context":563},{"file":372,"line":268,"context":563},{"file":372,"line":659,"context":563},180,{"file":375,"line":362,"context":563},{"file":375,"line":662,"context":563},142,{"file":375,"line":664,"context":563},316,{"file":375,"line":666,"context":563},362,{"file":375,"line":668,"context":563},368,{"file":375,"line":670,"context":563},485,{"file":375,"line":672,"context":563},506,{"file":375,"line":674,"context":563},689,{"file":375,"line":676,"context":563},692,{"file":375,"line":678,"context":563},694,{"file":375,"line":680,"context":563},697,{"file":375,"line":680,"context":563},{"file":375,"line":683,"context":563},698,{"file":375,"line":683,"context":563},{"file":375,"line":686,"context":563},699,{"file":375,"line":688,"context":563},704,{"file":375,"line":688,"context":563},{"file":375,"line":691,"context":563},762,{"file":375,"line":693,"context":563},766,{"file":375,"line":695,"context":563},830,{"file":697,"line":594,"context":563},"berocket\\includes\\widget.php",{"file":697,"line":699,"context":563},31,{"file":697,"line":415,"context":563},{"file":697,"line":417,"context":563},{"file":697,"line":703,"context":563},53,{"file":705,"line":161,"context":563},"berocket\\templates\\conditions.php",{"file":705,"line":707,"context":563},19,{"file":705,"line":707,"context":563},{"file":705,"line":567,"context":563},{"file":705,"line":567,"context":563},{"file":705,"line":567,"context":563},{"file":705,"line":713,"context":563},56,{"file":705,"line":350,"context":563},{"file":705,"line":350,"context":563},{"file":705,"line":280,"context":563},{"file":705,"line":280,"context":563},{"file":705,"line":280,"context":563},{"file":705,"line":280,"context":563},{"file":705,"line":721,"context":563},90,{"file":705,"line":723,"context":563},91,{"file":705,"line":725,"context":563},101,{"file":727,"line":327,"context":563},"berocket\\templates\\premium.php",{"file":727,"line":417,"context":563},{"file":727,"line":730,"context":563},57,{"file":727,"line":342,"context":563},{"file":727,"line":733,"context":563},68,{"file":727,"line":735,"context":563},72,{"file":737,"line":346,"context":563},"berocket\\templates\\settings.php",{"file":737,"line":739,"context":563},17,{"file":741,"line":707,"context":563},"berocket\\templates\\settings_footer.php",{"file":743,"line":82,"context":563},"berocket\\templates\\widget.php",{"file":541,"line":36,"context":563},{"file":441,"line":707,"context":563},{"file":441,"line":594,"context":563},{"file":444,"line":707,"context":563},{"file":444,"line":268,"context":563},{"file":448,"line":750,"context":563},336,{"file":448,"line":752,"context":563},344,{"file":448,"line":754,"context":563},365,{"file":448,"line":756,"context":563},619,{"file":448,"line":758,"context":563},621,{"file":448,"line":758,"context":563},{"file":448,"line":761,"context":563},627,{"file":448,"line":761,"context":563},{"file":448,"line":761,"context":563},{"file":448,"line":761,"context":563},{"file":448,"line":761,"context":563},{"file":448,"line":767,"context":563},633,{"file":448,"line":767,"context":563},{"file":448,"line":770,"context":563},634,{"file":448,"line":770,"context":563},{"file":448,"line":770,"context":563},{"file":448,"line":770,"context":563},{"file":448,"line":775,"context":563},637,{"file":448,"line":775,"context":563},{"file":448,"line":778,"context":563},638,{"file":448,"line":778,"context":563},{"file":448,"line":778,"context":563},{"file":448,"line":778,"context":563},{"file":448,"line":783,"context":563},641,{"file":448,"line":783,"context":563},{"file":448,"line":786,"context":563},642,{"file":448,"line":786,"context":563},{"file":448,"line":786,"context":563},{"file":448,"line":786,"context":563},{"file":448,"line":791,"context":563},645,{"file":448,"line":791,"context":563},{"file":448,"line":794,"context":563},646,{"file":448,"line":794,"context":563},{"file":448,"line":794,"context":563},{"file":448,"line":794,"context":563},24,[],[801,823,833,844,852,864,876,893,902,910],{"entryPoint":802,"graph":803,"unsanitizedCount":82,"severity":822},"berocket_single_image (main.php:149)",{"nodes":804,"edges":819},[805,810,814],{"id":806,"type":807,"label":808,"file":448,"line":809},"n0","source","$_GET",153,{"id":811,"type":812,"label":813,"file":448,"line":809},"n1","transform","→ add_watermark_to_images()",{"id":815,"type":816,"label":817,"file":448,"line":754,"wp_function":818},"n2","sink","echo() [XSS]","echo",[820,821],{"from":806,"to":811,"sanitized":496},{"from":811,"to":815,"sanitized":496},"medium",{"entryPoint":824,"graph":825,"unsanitizedCount":82,"severity":822},"\u003Cmain> (main.php:0)",{"nodes":826,"edges":830},[827,828,829],{"id":806,"type":807,"label":808,"file":448,"line":809},{"id":811,"type":812,"label":813,"file":448,"line":809},{"id":815,"type":816,"label":817,"file":448,"line":754,"wp_function":818},[831,832],{"from":806,"to":811,"sanitized":496},{"from":811,"to":815,"sanitized":496},{"entryPoint":834,"graph":835,"unsanitizedCount":28,"severity":843},"\u003Cframework> (berocket\\framework.php:0)",{"nodes":836,"edges":841},[837,840],{"id":806,"type":807,"label":838,"file":162,"line":839},"$_GET (x2)",691,{"id":811,"type":816,"label":817,"file":162,"line":579,"wp_function":818},[842],{"from":806,"to":811,"sanitized":498},"low",{"entryPoint":845,"graph":846,"unsanitizedCount":28,"severity":843},"get_export (berocket\\includes\\admin\\import_export.php:10)",{"nodes":847,"edges":850},[848,849],{"id":806,"type":807,"label":808,"file":272,"line":327},{"id":811,"type":816,"label":817,"file":272,"line":34,"wp_function":818},[851],{"from":806,"to":811,"sanitized":498},{"entryPoint":853,"graph":854,"unsanitizedCount":28,"severity":843},"set_import (berocket\\includes\\admin\\import_export.php:25)",{"nodes":855,"edges":862},[856,858],{"id":806,"type":807,"label":857,"file":272,"line":699},"$_POST",{"id":811,"type":816,"label":859,"file":272,"line":860,"wp_function":861},"update_option() [Settings Manipulation]",63,"update_option",[863],{"from":806,"to":811,"sanitized":498},{"entryPoint":865,"graph":866,"unsanitizedCount":28,"severity":843},"restore_backups (berocket\\includes\\admin\\import_export.php:100)",{"nodes":867,"edges":873},[868,869,870,871],{"id":806,"type":807,"label":808,"file":272,"line":171},{"id":811,"type":816,"label":859,"file":272,"line":559,"wp_function":861},{"id":815,"type":807,"label":808,"file":272,"line":171},{"id":872,"type":816,"label":817,"file":272,"line":601,"wp_function":818},"n3",[874,875],{"from":806,"to":811,"sanitized":498},{"from":815,"to":872,"sanitized":498},{"entryPoint":877,"graph":878,"unsanitizedCount":28,"severity":843},"\u003Cimport_export> (berocket\\includes\\admin\\import_export.php:0)",{"nodes":879,"edges":889},[880,882,883,884,885,887],{"id":806,"type":807,"label":881,"file":272,"line":327},"$_GET (x6)",{"id":811,"type":816,"label":817,"file":272,"line":34,"wp_function":818},{"id":815,"type":807,"label":857,"file":272,"line":699},{"id":872,"type":816,"label":859,"file":272,"line":860,"wp_function":861},{"id":886,"type":807,"label":808,"file":272,"line":171},"n4",{"id":888,"type":816,"label":859,"file":272,"line":559,"wp_function":861},"n5",[890,891,892],{"from":806,"to":811,"sanitized":498},{"from":815,"to":872,"sanitized":498},{"from":886,"to":888,"sanitized":498},{"entryPoint":894,"graph":895,"unsanitizedCount":28,"severity":843},"\u003Ccustom_post> (berocket\\includes\\custom_post.php:0)",{"nodes":896,"edges":900},[897,899],{"id":806,"type":807,"label":808,"file":341,"line":898},141,{"id":811,"type":816,"label":817,"file":341,"line":646,"wp_function":818},[901],{"from":806,"to":811,"sanitized":498},{"entryPoint":903,"graph":904,"unsanitizedCount":28,"severity":843},"get_plugin_error_ajax (berocket\\includes\\error_notices.php:33)",{"nodes":905,"edges":908},[906,907],{"id":806,"type":807,"label":808,"file":527,"line":393},{"id":811,"type":816,"label":817,"file":527,"line":412,"wp_function":818},[909],{"from":806,"to":811,"sanitized":498},{"entryPoint":911,"graph":912,"unsanitizedCount":28,"severity":843},"\u003Cerror_notices> (berocket\\includes\\error_notices.php:0)",{"nodes":913,"edges":916},[914,915],{"id":806,"type":807,"label":808,"file":527,"line":393},{"id":811,"type":816,"label":817,"file":527,"line":412,"wp_function":818},[917],{"from":806,"to":811,"sanitized":498},{"summary":919,"deductions":920},"The 'product-watermark-for-woocommerce' plugin exhibits a mixed security posture. While it boasts a clean vulnerability history with no recorded CVEs and a seemingly good number of nonce and capability checks, the static analysis reveals significant areas of concern.  A primary risk lies in the presence of 14 AJAX handlers, with one entirely lacking authentication checks, opening a potential backdoor for unauthorized actions. Furthermore, the use of a dangerous `unserialize` function, coupled with raw SQL queries and a concerning percentage of improperly escaped output, indicates potential for injection attacks or data leakage. The taint analysis, while not flagging critical or high severity unsanitized paths, warrants caution due to the presence of unsanitized paths at all. The lack of any recorded vulnerabilities might suggest responsible development or simply a lack of discovered issues to date. However, the identified code signals and attack surface characteristics necessitate careful attention to mitigate potential risks.",[921,923,925,927,929],{"reason":922,"points":261},"AJAX handler without authentication check",{"reason":924,"points":52},"Dangerous unserialize function used",{"reason":926,"points":156},"SQL queries without prepared statements",{"reason":928,"points":442},"Low percentage of properly escaped output",{"reason":930,"points":152},"Unsanitized paths found in taint analysis","2026-03-16T18:28:47.759Z",{"wat":933,"direct":946},{"assetPaths":934,"generatorPatterns":939,"scriptPaths":940,"versionParams":941},[935,936,937,938],"\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fcss\u002Fmain.css","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fcss\u002Fadmin.css","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fjs\u002Fmain.js","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fjs\u002Fadmin.js",[],[],[942,943,944,945],"\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fcss\u002Fmain.css?ver=","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fcss\u002Fadmin.css?ver=","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fjs\u002Fmain.js?ver=","\u002Fwp-content\u002Fplugins\u002Fproduct-watermark-for-woocommerce\u002Fjs\u002Fadmin.js?ver=",{"cssClasses":947,"htmlComments":949,"htmlAttributes":950,"restEndpoints":951,"jsGlobals":952,"shortcodeOutput":954},[948],"br-product-watermark-settings",[],[],[],[953],"BeRocket_image_watermark_lang",[]]