Best Local SEO Tools, WordPress SEO Plugin Security & Risk Analysis

wordpress.org/plugins/best-local-seo-tools

Want to rank well for every city you serve and double your local search traffic? BestLocalSEOTools.com has examples & the stronger free version.

40 active installs v1.0 PHP + WP 4.0+ Updated Sep 30, 2019
best-local-seo-tools-pluginlocal-seolocal-seo-pluginseoseo-plugin
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Best Local SEO Tools, WordPress SEO Plugin Safe to Use in 2026?

Generally Safe

Score 85/100

Best Local SEO Tools, WordPress SEO Plugin has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 6yr ago
Risk Assessment

The 'best-local-seo-tools' plugin version 1.0 presents a mixed security posture. On the positive side, it demonstrates good practices by having a zero-attack surface for unprotected entry points, utilizing prepared statements for the vast majority of its SQL queries, and implementing nonce and capability checks. The absence of any known vulnerabilities in its history is also a strong indicator of a well-maintained and relatively secure codebase.

However, several areas warrant attention and introduce risk. The presence of 10 instances of the `unserialize` function is a significant concern, especially as this function can be a vector for code execution if user-supplied data is unserialized without proper sanitization and validation. While the taint analysis shows no critical severity flows, two high-severity flows with unsanitized paths are present, which, when combined with the `unserialize` function, could potentially be exploited. Furthermore, the output escaping is only properly done for 68% of outputs, leaving room for potential cross-site scripting (XSS) vulnerabilities.

In conclusion, while the plugin's lack of historical vulnerabilities and its use of prepared statements and authentication checks are commendable, the heavy reliance on `unserialize` and the identified high-severity taint flows are significant weaknesses that require immediate review. The moderate output escaping also adds to the potential risk surface. Addressing these specific code-level concerns is crucial for improving the plugin's overall security.

Key Concerns

  • Multiple high-severity unsanitized taint flows
  • 10 dangerous functions (unserialize)
  • Only 68% of outputs properly escaped
Vulnerabilities
None known

Best Local SEO Tools, WordPress SEO Plugin Security Vulnerabilities

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

Best Local SEO Tools, WordPress SEO Plugin Code Analysis

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

Dangerous Functions Found

unserialize$termsArray1 = unserialize(get_option('lsp-serialized1'));localseoportfolio-free.php:9667
unserialize$termsArray2 = unserialize(get_option('lsp-serialized2'));localseoportfolio-free.php:9668
unserialize$termsArray3 = unserialize(get_option('lsp-serialized3'));localseoportfolio-free.php:9669
unserialize$termsArray4 = unserialize(get_option('lsp-serialized4'));localseoportfolio-free.php:9670
unserialize$termsArray5 = unserialize(get_option('lsp-serialized5'));localseoportfolio-free.php:9671
unserialize$termsArray6 = unserialize(get_option('lsp-serialized6'));localseoportfolio-free.php:9672
unserialize$termsArray7 = unserialize(get_option('lsp-serialized7'));localseoportfolio-free.php:9673
unserialize$termsArray8 = unserialize(get_option('lsp-serialized8'));localseoportfolio-free.php:9674
unserialize$termsArray9 = unserialize(get_option('lsp-serialized9'));localseoportfolio-free.php:9675
unserialize$termsArray10 = unserialize(get_option('lsp-serialized10'));localseoportfolio-free.php:9676

SQL Query Safety

94% prepared50 total queries

Output Escaping

68% escaped841 total outputs
Data Flows
9 unsanitized

Data Flow Analysis

9 flows9 with unsanitized paths
lsp_headermeta (localseoportfolio-free.php:1079)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Best Local SEO Tools, WordPress SEO Plugin Attack Surface

Entry Points2
Unprotected0

Shortcodes 2

[servicearea] localseoportfolio-free.php:685
[mytestimonials] localseoportfolio-free.php:720
WordPress Hooks 101
filterget_the_archive_titlelocalseoportfolio-free.php:22
actionadmin_enqueue_scriptslocalseoportfolio-free.php:158
actionadmin_enqueue_scriptslocalseoportfolio-free.php:163
actionadmin_enqueue_scriptslocalseoportfolio-free.php:224
actionadmin_enqueue_scriptslocalseoportfolio-free.php:229
actionadmin_enqueue_scriptslocalseoportfolio-free.php:541
actionadmin_enqueue_scriptslocalseoportfolio-free.php:546
actionwp_enqueue_scriptslocalseoportfolio-free.php:615
actionwp_enqueue_scriptslocalseoportfolio-free.php:622
actionwp_dashboard_setuplocalseoportfolio-free.php:640
filteris_protected_metalocalseoportfolio-free.php:723
filteris_protected_metalocalseoportfolio-free.php:730
filterthe_contentlocalseoportfolio-free.php:736
filterthe_contentlocalseoportfolio-free.php:744
filterthe_contentlocalseoportfolio-free.php:762
filterthe_contentlocalseoportfolio-free.php:800
actionadmin_noticeslocalseoportfolio-free.php:856
filterwpseo_opengraph_titlelocalseoportfolio-free.php:860
actionplugins_loadedlocalseoportfolio-free.php:871
actioninitlocalseoportfolio-free.php:906
actioninitlocalseoportfolio-free.php:915
actioninitlocalseoportfolio-free.php:920
actioninitlocalseoportfolio-free.php:925
actiontemplate_redirectlocalseoportfolio-free.php:976
filteraioseop_canonical_urllocalseoportfolio-free.php:1001
filterwp_titlelocalseoportfolio-free.php:1008
filterwpseo_canonicallocalseoportfolio-free.php:1030
filteraioseop_canonical_urllocalseoportfolio-free.php:1031
filterwpseo_titlelocalseoportfolio-free.php:1032
filterwpseo_metadesclocalseoportfolio-free.php:1033
actionwp_headlocalseoportfolio-free.php:1037
filterthe_contentlocalseoportfolio-free.php:1057
actionwp_headlocalseoportfolio-free.php:1104
filterwp_list_pages_excludeslocalseoportfolio-free.php:1117
filteraioseop_canonical_urllocalseoportfolio-free.php:1157
actioninitlocalseoportfolio-free.php:1166
actioninitlocalseoportfolio-free.php:1175
actionadmin_noticeslocalseoportfolio-free.php:1217
actionwp_headlocalseoportfolio-free.php:1247
filterwp_titlelocalseoportfolio-free.php:1285
filterget_the_archive_titlelocalseoportfolio-free.php:1286
filterwpseo_titlelocalseoportfolio-free.php:1288
filterwpseo_titlelocalseoportfolio-free.php:1289
filterwpseo_titlelocalseoportfolio-free.php:1290
filterwpseo_titlelocalseoportfolio-free.php:1291
filterpre_get_document_titlelocalseoportfolio-free.php:1329
filterwp_titlelocalseoportfolio-free.php:1357
filterthe_titlelocalseoportfolio-free.php:1390
actionwp_headlocalseoportfolio-free.php:1497
filterthe_contentlocalseoportfolio-free.php:1972
actionfl_after_footerlocalseoportfolio-free.php:2220
actiontwentyfifteen_creditslocalseoportfolio-free.php:2221
actiontwentyfifteen_creditslocalseoportfolio-free.php:2222
actiontwentyfifteen_creditslocalseoportfolio-free.php:2223
actionfl_after_footerlocalseoportfolio-free.php:2225
actiontwentyfourteen_creditslocalseoportfolio-free.php:2226
actiontwentyfourteen_creditslocalseoportfolio-free.php:2227
actiontwentyfourteen_creditslocalseoportfolio-free.php:2228
actionfl_after_footerlocalseoportfolio-free.php:2230
actiontwentysixteen_creditslocalseoportfolio-free.php:2231
actiontwentysixteen_creditslocalseoportfolio-free.php:2232
actiontwentysixteen_creditslocalseoportfolio-free.php:2233
actionfl_after_footerlocalseoportfolio-free.php:2235
actiontwentyseventeen_creditslocalseoportfolio-free.php:2236
actiontwentyseventeen_creditslocalseoportfolio-free.php:2237
actiontwentyseventeen_creditslocalseoportfolio-free.php:2238
actionfl_after_footerlocalseoportfolio-free.php:2240
actionwp_footerlocalseoportfolio-free.php:2241
actionwp_footerlocalseoportfolio-free.php:2242
actionwp_footerlocalseoportfolio-free.php:2243
actionwp_footerlocalseoportfolio-free.php:2268
actionwp_footerlocalseoportfolio-free.php:2269
actionwp_footerlocalseoportfolio-free.php:2270
actionadmin_menulocalseoportfolio-free.php:2431
actionadmin_menulocalseoportfolio-free.php:7509
actionadmin_menulocalseoportfolio-free.php:7515
actionadmin_menulocalseoportfolio-free.php:7521
actionadmin_menulocalseoportfolio-free.php:7527
actionadmin_menulocalseoportfolio-free.php:7533
actionadmin_initlocalseoportfolio-free.php:7720
actioninitlocalseoportfolio-free.php:7726
actionpre_get_postslocalseoportfolio-free.php:7911
actionadmin_initlocalseoportfolio-free.php:7916
actionuntrash_postlocalseoportfolio-free.php:8114
actionwp_trash_postlocalseoportfolio-free.php:8122
actionbefore_delete_postlocalseoportfolio-free.php:8131
actionsave_postlocalseoportfolio-free.php:8140
actionwp_before_admin_bar_renderlocalseoportfolio-free.php:8909
actionwidgets_initlocalseoportfolio-free.php:9042
actionwidgets_initlocalseoportfolio-free.php:9048
filtermanage_localproject_posts_columnslocalseoportfolio-free.php:9062
actionmanage_localproject_posts_custom_columnlocalseoportfolio-free.php:9081
filtermanage_edit-localproject_sortable_columnslocalseoportfolio-free.php:9090
actionpre_get_postslocalseoportfolio-free.php:9092
actionwidgets_initlocalseoportfolio-free.php:9218
actionwidgets_initlocalseoportfolio-free.php:9224
filterthe_contentlocalseoportfolio-free.php:9301
actiontemplate_redirectlocalseoportfolio-free.php:9459
actionadmin_initlocalseoportfolio-free.php:9594
filteradmin_footer_textlocalseoportfolio-free.php:9739
actionadmin_initlocalseoportfolio-free.php:9749
Maintenance & Trust

Best Local SEO Tools, WordPress SEO Plugin Maintenance & Trust

Maintenance Signals

WordPress version tested5.0.25
Last updatedSep 30, 2019
PHP min version
Downloads6K

Community Trust

Rating100/100
Number of ratings1
Active installs40
Developer Profile

Best Local SEO Tools, WordPress SEO Plugin Developer Profile

Best Local SEO Tools

1 plugin · 40 total installs

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

How We Detect Best Local SEO Tools, WordPress SEO Plugin

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/best-local-seo-tools/projectscripts.js/wp-content/plugins/best-local-seo-tools/reportsscripts.js
Script Paths
/wp-content/plugins/best-local-seo-tools/projectscripts.js/wp-content/plugins/best-local-seo-tools/reportsscripts.js

HTML / DOM Fingerprints

Data Attributes
name="lsp-city"name="lsp-api-city"id="city1"
JS Globals
lsp_language
FAQ

Frequently Asked Questions about Best Local SEO Tools, WordPress SEO Plugin