Exchange Rates Security & Risk Analysis

wordpress.org/plugins/exchange-rates

Currency Converter & Exchange Rates Widgets, easy-to-use, with beautiful UI. 🔑 No API key needed, ❤️‍ plug and play.

900 active installs v1.3.0 PHP 5.3+ WP 3.1+ Updated Dec 1, 2025
currenciescurrency-conversioncurrency-convertercurrency-exchangeexchange-rates
98
A · Safe
CVEs total2
Unpatched0
Last CVESep 3, 2025
Safety Verdict

Is Exchange Rates Safe to Use in 2026?

Generally Safe

Score 98/100

Exchange Rates has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.

2 known CVEsLast CVE: Sep 3, 2025Updated 5mo ago
Risk Assessment

The 'exchange-rates' plugin version 1.3.0 exhibits a mixed security posture. On the positive side, the code demonstrates good practices by exclusively using prepared statements for SQL queries and achieving a high percentage of properly escaped output. The presence of nonce and capability checks, along with the absence of dangerous functions and file operations, are also encouraging signs. However, a significant concern lies in the attack surface, specifically the presence of one AJAX handler that lacks proper authentication checks. This unprotected entry point is a critical vulnerability that could be exploited by unauthenticated users. The vulnerability history reveals two previously disclosed medium-severity vulnerabilities, one of which was Cross-Site Scripting and the other Missing Authorization. While these are currently unpatched in the analyzed version, their historical recurrence suggests potential recurring weaknesses in the plugin's code. The taint analysis showing zero flows is positive, but does not fully mitigate the risk from the identified unprotected AJAX handler. Overall, while the plugin has some strengths in secure coding practices, the unprotected AJAX endpoint presents a clear and immediate risk that requires attention.

Key Concerns

  • Unprotected AJAX handler
  • Two previous medium severity CVEs
Vulnerabilities
2 published

Exchange Rates Security Vulnerabilities

CVEs by Year

2 CVEs in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2025-58624medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Exchange Rates <= 1.2.5 - Authenticated (Contributor+) Stored Cross-Site Scripting

Sep 3, 2025 Patched in 1.3.0 (7d)
CVE-2025-30864medium · 4.3Missing Authorization

Exchange Rates <= 1.2.2 - Missing Authorization

Mar 27, 2025 Patched in 1.2.3 (7d)
Code Analysis
Analyzed Mar 16, 2026

Exchange Rates Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
10
313 escaped
Nonce Checks
1
Capability Checks
1
File Operations
0
External Requests
1
Bundled Libraries
0

Output Escaping

97% escaped323 total outputs
Attack Surface
1 unprotected

Exchange Rates Attack Surface

Entry Points1
Unprotected1

AJAX Handlers 1

authwp_ajax_exchange_rates_force_data_updatesrc\Admin\Admin.php:27
WordPress Hooks 10
actionadmin_enqueue_scriptssrc\Admin\Admin.php:15
actionupdate_optionsrc\Admin\Admin.php:63
actionadmin_initsrc\Admin\Notices.php:18
actionadmin_noticessrc\Admin\Notices.php:19
actionadmin_enqueue_scriptssrc\Admin\Notices.php:20
actionadmin_menusrc\Admin\Settings\Loader.php:12
actionadmin_initsrc\Admin\Settings\Loader.php:13
actionadmin_enqueue_scriptssrc\Plugin.php:28
actionwidgets_initsrc\Plugin.php:29
actioninitsrc\Shortcodes\CurrencyTable.php:18
Maintenance & Trust

Exchange Rates Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 1, 2025
PHP min version5.3
Downloads142K

Community Trust

Rating84/100
Number of ratings10
Active installs900
Developer Profile

Exchange Rates Developer Profile

falselight

9 plugins · 5K total installs

93
trust score
Avg Security Score
99/100
Avg Patch Time
22 days
View full developer profile
Detection Fingerprints

How We Detect Exchange Rates

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/exchange-rates/assets/js/admin/force-data-update.js/wp-content/plugins/exchange-rates/assets/js/admin/notices.js
Script Paths
../../assets/js/admin/force-data-update.jsassets/js/admin/notices.js
Version Parameters
exchange-rates/assets/js/admin/notices.js?ver=

HTML / DOM Fingerprints

CSS Classes
exchange-rates-noticeexchange-rates-rate-notice-container
HTML Comments
<!-- Activation process. Running only once. -->
Data Attributes
data-dismiss-url
JS Globals
ExchangeRatesForceDataUpdateAjax
REST Endpoints
/wp-json/exchange-rates/v1/settings/wp-json/exchange-rates/v1/update
FAQ

Frequently Asked Questions about Exchange Rates