Watermark Hotlink Protection Security & Risk Analysis

wordpress.org/plugins/watermark-hotlink-protection

Displays a watermark on images which have been hotlinked

10 active installs v1.0 PHP + WP 3.3+ Updated May 22, 2013
imageimagespicturepictureswatermark
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Watermark Hotlink Protection Safe to Use in 2026?

Generally Safe

Score 85/100

Watermark Hotlink Protection has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 12yr ago
Risk Assessment

The "watermark-hotlink-protection" v1.0 plugin exhibits a mixed security posture. On the positive side, it has a very small attack surface with only one AJAX handler and no shortcodes, cron events, or REST API routes. Crucially, this single AJAX handler appears to be protected by a nonce check and capability checks, indicating an effort to secure entry points. All SQL queries are also properly prepared, which is a strong indicator of good database security practices. However, a significant concern arises from the output escaping. With 54 total outputs and only 30% properly escaped, there is a considerable risk of Cross-Site Scripting (XSS) vulnerabilities. The taint analysis also reveals a concerning pattern with 3 out of 5 analyzed flows having unsanitized paths. While these did not reach a critical or high severity in the static analysis, the presence of unsanitized paths suggests potential for insecure file handling or path traversal if exploited in conjunction with other factors. The plugin's history is completely clean with no recorded CVEs, which is a positive sign. Overall, while the plugin avoids common pitfalls like raw SQL and a broad attack surface, the prevalent lack of proper output escaping and the identified unsanitized paths are notable weaknesses that warrant attention.

Key Concerns

  • Unsanitized paths found in taint analysis
  • Low percentage of properly escaped output
Vulnerabilities
None known

Watermark Hotlink Protection Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 17, 2026

Watermark Hotlink Protection Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
38
16 escaped
Nonce Checks
1
Capability Checks
3
File Operations
7
External Requests
0
Bundled Libraries
0

Output Escaping

30% escaped54 total outputs
Data Flows
3 unsanitized

Data Flow Analysis

5 flows3 with unsanitized paths
do_hotlink_watermark (watermark-hotlink-protection-tools.php:63)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Watermark Hotlink Protection Attack Surface

Entry Points1
Unprotected0

AJAX Handlers 1

authwp_ajax_update_mwa_plugin_installer_menu_optionwatermark-hotlink-protection-plugin-installer.php:419
WordPress Hooks 10
actioninstall_plugins_table_headerwatermark-hotlink-protection-plugin-installer.php:97
actioninstall_plugins_favoriteswatermark-hotlink-protection-plugin-installer.php:114
actionadmin_menuwatermark-hotlink-protection-plugin-installer.php:413
actionadmin_initwatermark-hotlink-protection-plugin.php:68
actioninitwatermark-hotlink-protection-plugin.php:73
actionadmin_initwatermark-hotlink-protection-plugin.php:79
actionadmin_initwatermark-hotlink-protection-plugin.php:83
actionadmin_initwatermark-hotlink-protection-plugin.php:86
actionadmin_menuwatermark-hotlink-protection-plugin.php:89
filterplugin_row_metawatermark-hotlink-protection-plugin.php:96
Maintenance & Trust

Watermark Hotlink Protection Maintenance & Trust

Maintenance Signals

WordPress version tested3.5.2
Last updatedMay 22, 2013
PHP min version
Downloads2K

Community Trust

Rating20/100
Number of ratings1
Active installs10
Developer Profile

Watermark Hotlink Protection Developer Profile

MyWebsiteAdvisor

2 plugins · 20 total installs

84
trust score
Avg Security Score
85/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Watermark Hotlink Protection

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/watermark-hotlink-protection/css/style.css/wp-content/plugins/watermark-hotlink-protection/js/script.js
Script Paths
/wp-content/plugins/watermark-hotlink-protection/js/script.js
Version Parameters
watermark-hotlink-protection/css/style.css?ver=watermark-hotlink-protection/js/script.js?ver=

HTML / DOM Fingerprints

HTML Comments
<!-- Watermark Hotlink Protection --><!-- END Watermark Hotlink Protection -->
Data Attributes
data-whp-path
JS Globals
Watermark_Hotlink_Protection_Plugin_Data
FAQ

Frequently Asked Questions about Watermark Hotlink Protection