Geo Blocker – Control Site Access by Region and IP Security & Risk Analysis

wordpress.org/plugins/geo-blocker

🔐 Block or allow visitors by country. Track access attempts. View analytics. Stay in control — effortlessly.

700 active installs v1.0.0 PHP 7.2+ WP 5.0+ Updated May 18, 2025
access-controlcountry-restrictiongeo-blockinggeolocationip-blocker
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Geo Blocker – Control Site Access by Region and IP Safe to Use in 2026?

Generally Safe

Score 100/100

Geo Blocker – Control Site Access by Region and IP has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 12mo ago
Risk Assessment

The "geo-blocker" v1.0.0 plugin exhibits a mixed security posture. On the positive side, the static analysis shows a very small attack surface with no apparent entry points that are unprotected. The plugin also appears to handle SQL queries predominantly using prepared statements, which is a good practice for preventing SQL injection. Furthermore, there is no recorded vulnerability history, suggesting a history of stable and secure releases.

However, there are significant concerns regarding output escaping and taint analysis. Only 6% of output escapes are properly handled, leaving a high likelihood of Cross-Site Scripting (XSS) vulnerabilities. The taint analysis revealed one flow with unsanitized paths, which, while not classified as critical or high severity in this specific instance, points to a potential for injection attacks if an attacker can control the input that feeds this flow. The complete lack of nonce checks and capability checks, coupled with file operations, raises flags for potential unauthorized actions or privilege escalation, especially if combined with other vulnerabilities.

In conclusion, while the plugin has a clean vulnerability history and a well-contained attack surface, the critical deficiency in output escaping and the presence of unsanitized taint flows represent serious security weaknesses. The absence of nonce and capability checks further exacerbates these risks. These areas require immediate attention to mitigate potential exploitation.

Key Concerns

  • Output escaping is severely lacking (94% not properly escaped)
  • Taint analysis shows unsanitized path flow
  • No nonce checks implemented
  • No capability checks implemented
  • Bundled library (Select2) may be outdated
Vulnerabilities
None known

Geo Blocker – Control Site Access by Region and IP Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Version History

Geo Blocker – Control Site Access by Region and IP Release Timeline

v1.0.0Current
Code Analysis
Analyzed Mar 16, 2026

Geo Blocker – Control Site Access by Region and IP Code Analysis

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

Bundled Libraries

Select2

SQL Query Safety

90% prepared40 total queries

Output Escaping

6% escaped66 total outputs
Data Flows · Security
1 unsanitized

Data Flow Analysis

1 flows1 with unsanitized paths
<tab-logs-display> (admin\views\tab-logs-display.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Geo Blocker – Control Site Access by Region and IP Attack Surface

Entry Points0
Unprotected0
Maintenance & Trust

Geo Blocker – Control Site Access by Region and IP Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedMay 18, 2025
PHP min version7.2
Downloads2K

Community Trust

Rating100/100
Number of ratings1
Active installs700
Developer Profile

Geo Blocker – Control Site Access by Region and IP Developer Profile

Mohamed Shili

2 plugins · 750 total installs

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

How We Detect Geo Blocker – Control Site Access by Region and IP

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/geo-blocker/admin/css/medshi-geo-block-admin.css/wp-content/plugins/geo-blocker/admin/css/select2.min.css/wp-content/plugins/geo-blocker/admin/js/medshi-geo-block-admin.js/wp-content/plugins/geo-blocker/admin/js/select2.full.min.js/wp-content/plugins/geo-blocker/admin/js/chart.min.js/wp-content/plugins/geo-blocker/admin/js/chartjs-adapter-date-fns.min.js/wp-content/plugins/geo-blocker/admin/js/moment.min.js/wp-content/plugins/geo-blocker/admin/js/chartjs-plugin-datalabels.min.js+1 more
Script Paths
/wp-content/plugins/geo-blocker/admin/js/medshi-geo-block-admin.js/wp-content/plugins/geo-blocker/admin/js/select2.full.min.js/wp-content/plugins/geo-blocker/admin/js/chart.min.js/wp-content/plugins/geo-blocker/admin/js/chartjs-adapter-date-fns.min.js/wp-content/plugins/geo-blocker/admin/js/moment.min.js/wp-content/plugins/geo-blocker/admin/js/chartjs-plugin-datalabels.min.js+1 more
Version Parameters
geo-blocker/admin/css/medshi-geo-block-admin.css?ver=geo-blocker/admin/css/select2.min.css?ver=geo-blocker/admin/js/medshi-geo-block-admin.js?ver=geo-blocker/admin/js/select2.full.min.js?ver=geo-blocker/admin/js/chart.min.js?ver=geo-blocker/admin/js/chartjs-adapter-date-fns.min.js?ver=geo-blocker/admin/js/moment.min.js?ver=geo-blocker/admin/js/chartjs-plugin-datalabels.min.js?ver=geo-blocker/admin/js/medshi-geo-blocker-settings.js?ver=

HTML / DOM Fingerprints

CSS Classes
medshi-geo-blocker-settings
Data Attributes
data-geo-blocker-url
JS Globals
MedshiGeoBlockerAdminmedshi_geo_blocker_ajax_object
REST Endpoints
/wp-json/medshi-geo-blocker/v1/settings
FAQ

Frequently Asked Questions about Geo Blocker – Control Site Access by Region and IP