CAOS | Host Google Analytics Locally Security & Risk Analysis

wordpress.org/plugins/host-analyticsjs-local

The fastest, lightest way to integrate Google Analytics in WordPress.

10K active installs v5.0.1 PHP 7.0+ WP 4.6+ Updated Dec 1, 2025
analyticsgdprgooglegtagminimal
99
A · Safe
CVEs total2
Unpatched0
Last CVEDec 12, 2023
Safety Verdict

Is CAOS | Host Google Analytics Locally Safe to Use in 2026?

Generally Safe

Score 99/100

CAOS | Host Google Analytics Locally has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Dec 12, 2023Updated 4mo ago
Risk Assessment

The "host-analyticsjs-local" plugin version 5.0.1 exhibits a mixed security posture. On the positive side, the static analysis reveals a very small attack surface with only one AJAX handler, which importantly, appears to have a nonce check. All SQL queries utilize prepared statements, and there are no reported critical or high-severity vulnerabilities currently unpatched. The absence of taint flows with unsanitized paths and critical/high severity issues in the taint analysis is also encouraging, suggesting a generally good effort in preventing common code injection and path traversal vulnerabilities within the analyzed flows.

However, several areas warrant attention. While the output escaping is at 77%, this still means a significant portion of outputs (23%) are not properly escaped, which could lead to cross-site scripting (XSS) vulnerabilities. The plugin also performs external HTTP requests and file operations, which can be vectors for further compromise if not handled securely. The historical vulnerability data is a significant concern, with two medium-severity CVEs related to Missing Authorization and Path Traversal. Although none are currently unpatched, this history indicates a pattern of past security weaknesses, suggesting a need for continued vigilance and potentially more robust internal security testing.

In conclusion, while the current version shows improvements with protected entry points and secure SQL handling, the past vulnerability history and the less-than-perfect output escaping are weaknesses. The plugin developers have addressed past issues and show good practices in some areas, but the potential for XSS due to unescaped output and the historical pattern of authorization and path traversal vulnerabilities mean users should remain cautious and ensure the plugin is always updated to the latest secure version.

Key Concerns

  • 23% of outputs are not properly escaped
  • History of medium severity vulnerabilities (2 total)
  • Vulnerabilities found: Missing Authorization
  • Vulnerabilities found: Path Traversal
Vulnerabilities
2

CAOS | Host Google Analytics Locally Security Vulnerabilities

CVEs by Year

1 CVE in 2021
2021
1 CVE in 2023
2023
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2023-6637medium · 6.5Missing Authorization

CAOS | Host Google Analytics Locally <= 4.7.14 - Missing Authorization to Unauthenticated Plugin Settings Update

Dec 12, 2023 Patched in 4.7.15 (42d)
CVE-2021-25020medium · 4.9Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

CAOS <= 4.1.8 - Admin+ Arbitrary Folder Deletion via Path Traversal

Dec 1, 2021 Patched in 4.1.9 (783d)
Code Analysis
Analyzed Mar 16, 2026

CAOS | Host Google Analytics Locally Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
48
160 escaped
Nonce Checks
2
Capability Checks
4
File Operations
9
External Requests
4
Bundled Libraries
0

Output Escaping

77% escaped208 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
update_settings (includes\class-caos.php:426)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

CAOS | Host Google Analytics Locally Attack Surface

Entry Points1
Unprotected0

AJAX Handlers 1

authwp_ajax_caos_regenerate_aliasincludes\class-ajax.php:28
WordPress Hooks 80
actionadmin_menuincludes\admin\class-settings.php:118
actionadmin_headincludes\admin\class-settings.php:126
filteradmin_footer_textincludes\admin\class-settings.php:129
filterupdate_footerincludes\admin\class-settings.php:130
actioncaos_settings_tabincludes\admin\class-settings.php:133
actioncaos_settings_tabincludes\admin\class-settings.php:134
actioncaos_settings_tabincludes\admin\class-settings.php:135
actioncaos_settings_tabincludes\admin\class-settings.php:136
actioncaos_settings_contentincludes\admin\class-settings.php:139
actionadmin_initincludes\admin\class-settings.php:167
filterall_pluginsincludes\admin\class-updates.php:44
filterwp_get_update_dataincludes\admin\class-updates.php:45
filtersite_transient_update_pluginsincludes\admin\class-updates.php:46
filtersite_transient_update_pluginsincludes\admin\class-updates.php:47
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:24
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:27
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:28
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:29
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:30
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:31
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:32
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:33
actioncaos_advanced_settings_contentincludes\admin\settings\class-advanced.php:36
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:22
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:25
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:26
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:27
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:28
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:29
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:30
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:31
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:32
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:33
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:34
actioncaos_basic_settings_contentincludes\admin\settings\class-basic.php:37
filtercaos_basic_settings_contentincludes\admin\settings\class-builder.php:35
filtercaos_advanced_settings_contentincludes\admin\settings\class-builder.php:36
filtercaos_extensions_settings_contentincludes\admin\settings\class-builder.php:37
actioncaos_extensions_settings_contentincludes\admin\settings\class-extensions.php:22
actioncaos_extensions_settings_contentincludes\admin\settings\class-extensions.php:23
actioncaos_extensions_settings_contentincludes\admin\settings\class-extensions.php:24
actioncaos_extensions_settings_contentincludes\admin\settings\class-extensions.php:25
actioncaos_help_contentincludes\admin\settings\class-help.php:22
actionadmin_noticesincludes\class-admin.php:23
actioninitincludes\class-admin.php:26
actionplugins_loadedincludes\class-caos.php:30
actionplugins_loadedincludes\class-caos.php:47
actionadmin_initincludes\class-caos.php:50
actionactivated_pluginincludes\class-caos.php:53
actiondeactivated_pluginincludes\class-caos.php:54
actionadmin_initincludes\class-caos.php:55
actioninitincludes\class-caos.php:59
filtercaos_gtag_custom_attributesincludes\compatibility\class-autoptimize.php:30
filtercaos_ma4_custom_attributesincludes\compatibility\class-autoptimize.php:31
filterscript_loader_tagincludes\compatibility\class-cloudflare.php:30
filtercaos_ma4_custom_attributesincludes\compatibility\class-cloudflare.php:31
filtercaos_gtag_custom_attributesincludes\compatibility\class-litespeed.php:30
filtercaos_ma4_custom_attributesincludes\compatibility\class-litespeed.php:31
filtercaos_gtag_custom_attributesincludes\compatibility\class-wp-fastest-cache.php:30
filtercaos_ma4_custom_attributesincludes\compatibility\class-wp-fastest-cache.php:31
filterrocket_excluded_inline_js_contentincludes\compatibility\class-wp-rocket.php:30
filterrocket_delay_js_exclusionsincludes\compatibility\class-wp-rocket.php:31
filtercaos_frontend_add_dns_prefetchincludes\frontend\class-functions.php:21
filterwp_resource_hintsincludes\frontend\class-functions.php:22
actioncaos_inline_scripts_before_tracking_codeincludes\frontend\class-tracking.php:45
filtercaos_frontend_tracking_consent_modeincludes\frontend\class-tracking.php:46
actioncaos_gtag_additional_configincludes\frontend\class-tracking.php:47
filtercaos_frontend_tracking_consent_mode_listenerincludes\frontend\class-tracking.php:48
actioncaos_ma_additional_template_endincludes\frontend\class-tracking.php:49
actioninitincludes\frontend\class-tracking.php:50
filterscript_loader_tagincludes\frontend\class-tracking.php:51
actioncaos_process_settingsincludes\frontend\class-tracking.php:52
filtercaos_buffer_outputincludes\frontend\class-tracking.php:279
actiontemplate_redirectincludes\frontend\class-tracking.php:281
actionwp_footerincludes\frontend\class-tracking.php:285
actionwp_headincludes\frontend\class-tracking.php:290
actionwp_footerincludes\frontend\class-tracking.php:310
actionwp_headincludes\frontend\class-tracking.php:315
actionwp_enqueue_scriptsincludes\frontend\class-tracking.php:332
filtercaos_gtag_configincludes\frontend\class-tracking.php:452
Maintenance & Trust

CAOS | Host Google Analytics Locally Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedDec 1, 2025
PHP min version7.0
Downloads1.9M

Community Trust

Rating98/100
Number of ratings128
Active installs10K
Developer Profile

CAOS | Host Google Analytics Locally Developer Profile

Daan van den Bergh

3 plugins · 311K total installs

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

How We Detect CAOS | Host Google Analytics Locally

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/host-analyticsjs-local/assets/js/gtag.min.js/wp-content/plugins/host-analyticsjs-local/assets/js/minimal-analytics.min.js
Script Paths
/wp-content/plugins/host-analyticsjs-local/assets/js/gtag.min.js/wp-content/plugins/host-analyticsjs-local/assets/js/minimal-analytics.min.js
Version Parameters
host-analyticsjs-local/assets/js/gtag.min.js?ver=host-analyticsjs-local/assets/js/minimal-analytics.min.js?ver=

HTML / DOM Fingerprints

HTML Comments
/* * * * * * * * * * * * * * * * * * * * * ██████╗ █████╗ ██████╗ ███████╗ * ██╔════╝██╔══██╗██╔═══██╗██╔════╝ * ██║ ███████║██║ ██║███████╗ * ██║ ██╔══██║██║ ██║╚════██║ * ╚██████╗██║ ██║╚██████╔╝███████║ * ╚═════╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝ * * @author : Daan van den Bergh * @url : https://daan.dev/wordpress/caos/ * @copyright: © 2021 - 2024 Daan van den Bergh * @license : GPL2v2 or later * * * * * * * * * * * * * * * * * * * */
Data Attributes
data-codestats-enableddata-codestats-iddata-codestats-position
JS Globals
gtagcaos_consent_modecaos_consent_mode_listenerconsent_grantedwindow.dataLayer
FAQ

Frequently Asked Questions about CAOS | Host Google Analytics Locally