GSpeech TTS – WordPress Text To Speech Plugin Security & Risk Analysis

wordpress.org/plugins/gspeech

Free WordPress Text to Speech plugin with AI voices. Add an audio player to WordPress posts, pages and WooCommerce products to improve accessibility.

3K active installs v3.19.5 PHP + WP 3.5+ Updated Mar 15, 2026
accessibilityaudio-playertext-to-audiotext-to-speechtts
99
A · Safe
CVEs total1
Unpatched0
Last CVEOct 17, 2025
Safety Verdict

Is GSpeech TTS – WordPress Text To Speech Plugin Safe to Use in 2026?

Generally Safe

Score 99/100

GSpeech TTS – WordPress Text To Speech Plugin has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: Oct 17, 2025Updated 19d ago
Risk Assessment

The gspeech plugin version 3.19.5 presents a mixed security posture. While it shows strengths in areas like a low number of dangerous functions, a high percentage of prepared SQL statements, and no unpatched CVEs, significant concerns arise from its attack surface and output sanitization practices. The plugin exposes 8 AJAX handlers, all of which lack authentication checks, creating a wide entry point for potential attackers to interact with the plugin's functionality without proper authorization. Additionally, a very low percentage (7%) of output is properly escaped, indicating a high risk of Cross-Site Scripting (XSS) vulnerabilities across many of its output operations. The vulnerability history reveals one past medium-severity SQL injection vulnerability, which, coupled with the insecure AJAX endpoints and poor output escaping, suggests a pattern of potential weaknesses that could be exploited if not addressed.

Despite the presence of some good coding practices, the lack of authorization on numerous AJAX endpoints and the pervasive issue of unescaped output are critical security flaws. The taint analysis showing unsanitized paths, although not classified as critical or high, further reinforces these concerns. The plugin has demonstrated a past vulnerability of a common type, and the current code analysis points to architectural and sanitization issues that could lead to similar or new vulnerabilities. A balanced view acknowledges the efforts in database security but highlights the immediate need to secure its AJAX handlers and implement robust output escaping to mitigate the significant risks.

Key Concerns

  • All AJAX handlers unprotected
  • Low percentage of properly escaped output
  • Flows with unsanitized paths
  • One past medium severity CVE (SQLi)
Vulnerabilities
1

GSpeech TTS – WordPress Text To Speech Plugin Security Vulnerabilities

CVEs by Year

1 CVE in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2025-10187medium · 4.9Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

GSpeech TTS – WordPress Text To Speech Plugin <= 3.17.13 - Authenticated (Admin+) SQL injection

Oct 17, 2025 Patched in 3.18.0 (1d)
Code Analysis
Analyzed Mar 16, 2026

GSpeech TTS – WordPress Text To Speech Plugin Code Analysis

Dangerous Functions
0
Raw SQL Queries
3
18 prepared
Unescaped Output
609
43 escaped
Nonce Checks
3
Capability Checks
2
File Operations
2
External Requests
2
Bundled Libraries
0

SQL Query Safety

86% prepared21 total queries

Output Escaping

7% escaped652 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

5 flows2 with unsanitized paths
<streamer> (streamer.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
8 unprotected

GSpeech TTS – WordPress Text To Speech Plugin Attack Surface

Entry Points8
Unprotected8

AJAX Handlers 8

authwp_ajax_wpgsp_apply_feedbackgspeech.php:46
noprivwp_ajax_wpgsp_apply_feedbackgspeech.php:47
authwp_ajax_wpgsp_apply_ajax_savegspeech.php:48
noprivwp_ajax_wpgsp_apply_ajax_savegspeech.php:49
authwp_ajax_wpgsp_validate_enc_datagspeech.php:50
noprivwp_ajax_wpgsp_validate_enc_datagspeech.php:51
authwp_ajax_wpgsp_front_jsincludes\gspeech_frontend_protection.php:6
noprivwp_ajax_wpgsp_front_jsincludes\gspeech_frontend_protection.php:7
WordPress Hooks 15
actioninitgspeech.php:35
actionwidgets_initgspeech.php:36
actionadmin_menugspeech.php:37
actionadmin_initgspeech.php:38
actionadmin_initgspeech.php:39
actionwp_enqueue_scriptsgspeech.php:40
filterthe_contentgspeech.php:44
actionwp_loadedgspeech.php:45
filterscript_loader_tagincludes\gspeech_frontend_protection.php:27
actionwp_print_footer_scriptsincludes\gspeech_frontend_protection.php:39
actionadmin_initincludes\gspeech_notices.php:15
actionadmin_initincludes\gspeech_notices.php:18
actionadmin_noticesincludes\gspeech_notices.php:21
actionadmin_noticesincludes\gspeech_notices.php:24
actioninitincludes\gspeech_processor.php:265
Maintenance & Trust

GSpeech TTS – WordPress Text To Speech Plugin Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 15, 2026
PHP min version
Downloads167K

Community Trust

Rating96/100
Number of ratings167
Active installs3K
Developer Profile

GSpeech TTS – WordPress Text To Speech Plugin Developer Profile

Creative-Solutions

4 plugins · 4K total installs

69
trust score
Avg Security Score
86/100
Avg Patch Time
1211 days
View full developer profile
Detection Fingerprints

How We Detect GSpeech TTS – WordPress Text To Speech Plugin

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/gspeech/css/ui-lightness/jquery-ui-1.10.1.custom.css/wp-content/plugins/gspeech/css/admin.css/wp-content/plugins/gspeech/css/colorpicker.css/wp-content/plugins/gspeech/css/layout.css/wp-content/plugins/gspeech/css/the-tooltip.css/wp-content/plugins/gspeech/js/colorpicker.js/wp-content/plugins/gspeech/js/eye.js/wp-content/plugins/gspeech/js/utils.js+4 more
Script Paths
plugin_dir_url( __FILE__ ) . 'js/colorpicker.js'plugin_dir_url( __FILE__ ) . 'js/eye.js'plugin_dir_url( __FILE__ ) . 'js/utils.js'plugin_dir_url( __FILE__ ) . 'js/highstock.js'plugin_dir_url( __FILE__ ) . 'js/admin.js'plugin_dir_url( __FILE__ ) . 'js/frontend.js'
Version Parameters
gspeech/css/ui-lightness/jquery-ui-1.10.1.custom.css?ver=gspeech/css/admin.css?ver=gspeech/css/colorpicker.css?ver=gspeech/css/layout.css?ver=gspeech/css/the-tooltip.css?ver=gspeech/js/colorpicker.js?ver=gspeech/js/eye.js?ver=gspeech/js/utils.js?ver=gspeech/js/highstock.js?ver=gspeech/js/admin.js?ver=gspeech/js/frontend.js?ver=gspeech/css/frontend.css?ver=

HTML / DOM Fingerprints

CSS Classes
gspeech-playergspeech-textwpgs-frontendgspeech-frontend-blockgspeech-widgetgspeech-read-more
Data Attributes
data-gspeech-playerdata-gspeech-textdata-gspeech-options
JS Globals
gspeech_ajax_objwpgsp_ajax_obj_1
REST Endpoints
/wp-json/gspeech/v1/options/wp-json/gspeech/v1/text/wp-json/gspeech/v1/save-options
Shortcode Output
[gspeech][gspeech_player][gspeech_text][gspeech_audio]
FAQ

Frequently Asked Questions about GSpeech TTS – WordPress Text To Speech Plugin