IP2Location Country Blocker Security & Risk Analysis

wordpress.org/plugins/ip2location-country-blocker

Blocks unwanted visitors from accessing your frontend (blog pages) or backend (admin area) by countries or proxy servers.

30K active installs v2.41.2 PHP 7.4+ WP 4.6+ Updated Dec 3, 2025
block-countryblock-proxyip-addressip2locationredirection
93
A · Safe
CVEs total9
Unpatched0
Last CVEFeb 21, 2025
Safety Verdict

Is IP2Location Country Blocker Safe to Use in 2026?

Generally Safe

Score 93/100

IP2Location Country Blocker has a strong security track record. Known vulnerabilities have been patched promptly.

9 known CVEsLast CVE: Feb 21, 2025Updated 4mo ago
Risk Assessment

The 'ip2location-country-blocker' plugin v2.41.2 exhibits a mixed security posture. While it demonstrates good practices by implementing nonce checks and capability checks for its entry points, and a high percentage of SQL queries utilize prepared statements, several areas raise concern. The static analysis reveals a concerning taint flow with an unsanitized path, although it is not flagged as critical or high severity. Furthermore, the history of known CVEs is significant, with a substantial number of high and medium severity vulnerabilities recorded. The common types of past vulnerabilities, such as Improper Authorization, CSRF, and XSS, suggest recurring issues with input validation and access control, even if none are currently unpatched. The presence of bundled libraries like jQuery could also introduce risks if not properly managed and updated.

Despite the current lack of unpatched CVEs and the absence of unprotected AJAX handlers or REST API routes, the plugin's historical vulnerability pattern and the identified taint flow warrant careful consideration. The plugin has a history of security flaws, indicating a potential for latent vulnerabilities or a pattern of oversight in secure coding practices. The good implementation of authentication checks on entry points is a positive sign, but the past indicates that these may not always be sufficient to prevent exploitation. Therefore, while not immediately critical, a cautious approach is recommended, emphasizing ongoing monitoring and potential code review for specific areas flagged by the analysis.

Key Concerns

  • Taint flow with unsanitized path
  • Significant history of high severity CVEs
  • Significant history of medium severity CVEs
  • Output escaping not fully implemented (60% proper)
  • Bundled library (jQuery) may pose risks
Vulnerabilities
9

IP2Location Country Blocker Security Vulnerabilities

CVEs by Year

4 CVEs in 2022
2022
1 CVE in 2023
2023
2 CVEs in 2024
2024
2 CVEs in 2025
2025
Patched Has unpatched

Severity Breakdown

High
3
Medium
6

9 total CVEs

CVE-2025-1361high · 7.5Improper Authorization

IP2Location Country Blocker <= 2.38.8 - Missing Authorization to Unauthenticated Information Exposure via admin_init Function

Feb 21, 2025 Patched in 2.38.9 (1d)
CVE-2025-24731medium · 4.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Download IP2Location Country Blocker <= 2.38.3 - Authenticated (Administrator+) Stored Cross-Site Scripting

Jan 24, 2025 Patched in 2.38.4 (5d)
CVE-2024-32443medium · 4.3Cross-Site Request Forgery (CSRF)

Download IP2Location Country Blocker <= 2.34.2 - Cross-Site Request Forgery

Apr 12, 2024 Patched in 2.34.3 (6d)
CVE-2024-22294medium · 5.3Exposure of Sensitive Information to an Unauthorized Actor

IP2Location Country Blocker <= 2.33.3 - Unauthenticated Sensitive Information Exposure via Debug Log File

Jan 17, 2024 Patched in 2.33.4 (6d)
CVE-2023-37865medium · 6.5Use of Less Trusted Source

Download IP2Location Country Blocker <= 2.29.1 - Bypass via IP Spoofing

Jul 10, 2023 Patched in 2.29.2 (197d)
WF-2bde5862-1b7c-4e58-b13f-c8f347593c51-ip2location-country-blockermedium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

IP2Location Country Blocker < 2.26.9 - Authenticated Stored Cross-Site Scripting

Feb 7, 2022 Patched in 2.26.9 (715d)
CVE-2021-25096medium · 5.3Authorization Bypass Through User-Controlled Key

IP2Location Country Blocker <= 2.26.4 - Ban Bypass

Jan 6, 2022 Patched in 2.26.5 (747d)
CVE-2021-25095high · 7.1Missing Authorization

IP2Location Country Blocker <= 2.26.4 - Subscriber+ Arbitrary Country Ban

Jan 6, 2022 Patched in 2.26.5 (747d)
CVE-2021-25108high · 7.1Cross-Site Request Forgery (CSRF)

IP2Location Country Blocker <= 2.26.5 - Arbitrary Country Ban via Cross-Site Request Forgery

Jan 6, 2022 Patched in 2.26.6 (747d)
Code Analysis
Analyzed Mar 16, 2026

IP2Location Country Blocker Code Analysis

Dangerous Functions
0
Raw SQL Queries
2
9 prepared
Unescaped Output
39
58 escaped
Nonce Checks
13
Capability Checks
8
File Operations
11
External Requests
16
Bundled Libraries
1

Bundled Libraries

jQuery

SQL Query Safety

82% prepared11 total queries

Output Escaping

60% escaped97 total outputs
Data Flows
1 unsanitized

Data Flow Analysis

1 flows1 with unsanitized paths
<ip2location-country-blocker> (ip2location-country-blocker.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

IP2Location Country Blocker Attack Surface

Entry Points6
Unprotected0

AJAX Handlers 6

authwp_ajax_ip2location_country_blocker_update_ip2location_databaseip2location-country-blocker.php:33
authwp_ajax_ip2location_country_blocker_update_ip2proxy_databaseip2location-country-blocker.php:34
authwp_ajax_ip2location_country_blocker_validate_tokenip2location-country-blocker.php:35
authwp_ajax_ip2location_country_blocker_validate_api_keyip2location-country-blocker.php:36
authwp_ajax_ip2location_country_blocker_restoreip2location-country-blocker.php:37
authwp_ajax_ip2location_country_blocker_submit_feedbackip2location-country-blocker.php:39
WordPress Hooks 10
actioninitip2location-country-blocker.php:29
actionadmin_enqueue_scriptsip2location-country-blocker.php:30
actionadmin_initip2location-country-blocker.php:31
actionadmin_noticesip2location-country-blocker.php:32
actionwp_footerip2location-country-blocker.php:38
actionadmin_footer_textip2location-country-blocker.php:40
actionip2location_country_blocker_hourly_eventip2location-country-blocker.php:41
actionadmin_menuip2location-country-blocker.php:123
actionwp_enqueue_scriptip2location-country-blocker.php:2869
actionwp_enqueue_scriptip2location-country-blocker.php:2882

Scheduled Events 1

ip2location_country_blocker_hourly_event
Maintenance & Trust

IP2Location Country Blocker Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 3, 2025
PHP min version7.4
Downloads1.6M

Community Trust

Rating84/100
Number of ratings124
Active installs30K
Developer Profile

IP2Location Country Blocker Developer Profile

IP2Location

8 plugins · 39K total installs

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

How We Detect IP2Location Country Blocker

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/ip2location-country-blocker/assets/css/style.css/wp-content/plugins/ip2location-country-blocker/assets/js/ip2location-country-blocker.js
Version Parameters
/wp-content/plugins/ip2location-country-blocker/assets/css/style.css?ver=/wp-content/plugins/ip2location-country-blocker/assets/js/ip2location-country-blocker.js?ver=

HTML / DOM Fingerprints

CSS Classes
ip2location-country-blocker-backend-formip2location-country-blocker-frontend-formip2location-country-blocker-settings-wrapip2location-country-blocker-notice
Data Attributes
data-plugin-name="IP2Location Country Blocker"
JS Globals
ip2locationCountryBlockerAdmin
REST Endpoints
/wp-json/ip2location-country-blocker/v1/update_database/wp-json/ip2location-country-blocker/v1/validate_token/wp-json/ip2location-country-blocker/v1/validate_api_key/wp-json/ip2location-country-blocker/v1/restore/wp-json/ip2location-country-blocker/v1/submit_feedback
FAQ

Frequently Asked Questions about IP2Location Country Blocker