Table of content Security & Risk Analysis

wordpress.org/plugins/content-table

Insert a table of content in your posts.

100 active installs v1.5.3.1 PHP + WP 3.0+ Updated Jun 30, 2023
contenttable-of-contenttoc
63
C · Use Caution
CVEs total1
Unpatched1
Last CVESep 5, 2025
Safety Verdict

Is Table of content Safe to Use in 2026?

Use With Caution

Score 63/100

Table of content has 1 unpatched vulnerability. Evaluate alternatives or apply available mitigations.

1 known CVE 1 unpatched Last CVE: Sep 5, 2025Updated 2yr ago
Risk Assessment

The "content-table" plugin version 1.5.3.1 presents a significant security risk due to a combination of poor coding practices and a known unpatched vulnerability. The static analysis reveals a substantial attack surface with 8 AJAX handlers, all of which lack authentication checks. This, coupled with a complete absence of nonce checks, makes these handlers highly susceptible to exploitation. Furthermore, the plugin exhibits concerning output escaping practices, with only 5% of outputs being properly escaped, increasing the risk of Cross-Site Scripting (XSS) vulnerabilities. The presence of the `unserialize` function, a known dangerous function, is also a red flag, especially when combined with potentially unsanitized data. Taint analysis, while not revealing critical or high severity flows, did show 10 flows with unsanitized paths, indicating potential avenues for data manipulation if exploited alongside other weaknesses.

The vulnerability history is particularly alarming. A medium severity CVE exists for this plugin, and critically, it is currently unpatched. The common vulnerability type being Cross-Site Request Forgery (CSRF) aligns with the observed lack of authentication and nonce checks. The last vulnerability was recorded in September 2025, suggesting a recent history of security issues. While the plugin doesn't have bundled libraries or custom REST API routes, the sheer number of unprotected entry points and the unpatched CVE heavily outweigh these minor strengths, making it a high-risk plugin.

Key Concerns

  • Unpatched CVE: Medium Severity
  • AJAX handlers without auth checks (8)
  • No nonce checks on AJAX handlers
  • Poor output escaping (5%)
  • Dangerous function: unserialize
  • Unsanitized paths in taint flows (10)
Vulnerabilities
1

Table of content Security Vulnerabilities

CVEs by Year

1 CVE in 2025 · unpatched
2025
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

CVE-2025-58857medium · 4.3Cross-Site Request Forgery (CSRF)

Table of content <= 1.5.3.1 - Cross-Site Request Forgery

Sep 5, 2025Unpatched
Code Analysis
Analyzed Mar 16, 2026

Table of content Code Analysis

Dangerous Functions
3
Raw SQL Queries
6
8 prepared
Unescaped Output
263
14 escaped
Nonce Checks
0
Capability Checks
2
File Operations
60
External Requests
2
Bundled Libraries
0

Dangerous Functions Found

unserialize$plugins = unserialize(@file_get_contents(dirname(__FILE__)."/data/SLFramework_OtherPlugins_".date('core\otherplugins.class.php:48
unserialize$res = unserialize($request['body']);core\otherplugins.class.php:128
unserialize$res = unserialize($request['body']);core\otherplugins.class.php:176

SQL Query Safety

57% prepared14 total queries

Output Escaping

5% escaped277 total outputs
Data Flows
10 unsanitized

Data Flow Analysis

10 flows10 with unsanitized paths
flush (core\admin_table.class.php:170)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
8 unprotected

Table of content Attack Surface

Entry Points8
Unprotected8

AJAX Handlers 8

authwp_ajax_translate_addcore.class.php:85
authwp_ajax_translate_modifycore.class.php:86
authwp_ajax_translate_createcore.class.php:87
authwp_ajax_send_translationcore.class.php:88
authwp_ajax_update_summarycore.class.php:89
authwp_ajax_del_paramcore.class.php:92
authwp_ajax_add_paramcore.class.php:93
authwp_ajax_send_feedbackcore.class.php:96
WordPress Hooks 27
actionadmin_noticescontent-table.php:590
actioninitcore.class.php:50
actionparse_requestcore.class.php:51
actionadmin_menucore.class.php:53
filterplugin_row_metacore.class.php:54
filterplugin_action_linkscore.class.php:55
actioninitcore.class.php:56
actioninitcore.class.php:58
actionwp_enqueue_scriptscore.class.php:61
actionwp_enqueue_scriptscore.class.php:62
actionwp_enqueue_scriptscore.class.php:64
actionwp_enqueue_scriptscore.class.php:67
actionwp_enqueue_scriptscore.class.php:69
actionwp_enqueue_scriptscore.class.php:70
actionadmin_enqueue_scriptscore.class.php:73
actionadmin_enqueue_scriptscore.class.php:74
actionadmin_enqueue_scriptscore.class.php:76
actionadmin_enqueue_scriptscore.class.php:79
actionadmin_enqueue_scriptscore.class.php:81
actionadmin_enqueue_scriptscore.class.php:82
filterthe_contentcore.class.php:99
filterget_the_excerptcore.class.php:100
filterget_the_excerptcore.class.php:101
actionactivated_plugincore.class.php:104
filtermce_external_pluginscore.class.php:703
filtermce_buttonscore.class.php:704
filtertiny_mce_versioncore.class.php:705
Maintenance & Trust

Table of content Maintenance & Trust

Maintenance Signals

WordPress version tested6.2.9
Last updatedJun 30, 2023
PHP min version
Downloads18K

Community Trust

Rating90/100
Number of ratings4
Active installs100
Developer Profile

Table of content Developer Profile

KaizenCoders

14 plugins · 31K total installs

70
trust score
Avg Security Score
87/100
Avg Patch Time
153 days
View full developer profile
Detection Fingerprints

How We Detect Table of content

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/content-table/img/toc.png

HTML / DOM Fingerprints

CSS Classes
tableofcontentcontentTable_h2contentTable_h3contentTable_h4contentTable_h5contentTable_h6
Shortcode Output
[toc]
FAQ

Frequently Asked Questions about Table of content