Peter’s Custom Anti-Spam Security & Risk Analysis

wordpress.org/plugins/peters-custom-anti-spam-image

Stop a lot of spambots from polluting your site by making visitors identify a custom word displayed as an image before commenting.

200 active installs v3.2.4 PHP + WP 3.2+ Updated Dec 17, 2024
anti-spamcaptchacommentsspam
91
A · Safe
CVEs total2
Unpatched0
Last CVEDec 17, 2024
Safety Verdict

Is Peter’s Custom Anti-Spam Safe to Use in 2026?

Generally Safe

Score 91/100

Peter’s Custom Anti-Spam has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Dec 17, 2024Updated 1yr ago
Risk Assessment

The plugin "peters-custom-anti-spam-image" v3.2.4 exhibits a mixed security posture. While the attack surface is currently zero, indicating no direct entry points for attackers via AJAX, REST API, shortcodes, or cron jobs, there are significant concerns within the code itself. The presence of dangerous functions like `exec` and `create_function` is a major red flag, as these can be exploited for remote code execution if not handled with extreme care. Furthermore, a concerning 82% of SQL queries are not using prepared statements, which opens the door to SQL injection vulnerabilities. The low percentage of properly escaped output (25%) also suggests a high risk of Cross-Site Scripting (XSS) vulnerabilities, allowing attackers to inject malicious scripts into the website.

Taint analysis reveals one high-severity flow with unsanitized paths, indicating a potential for attackers to manipulate file operations or data inputs in a way that could lead to security breaches. This, combined with the historical vulnerability data showing two medium-severity CVEs in the past, including Cross-Site Request Forgery and XSS, suggests a recurring pattern of input sanitization and output escaping issues. Although there are no currently unpatched CVEs, the plugin's history of vulnerabilities, coupled with the current static analysis findings, points to a plugin that has not consistently adhered to secure coding practices, despite having a small attack surface. The lack of capability checks is also a concern, as it implies that sensitive operations might not be adequately protected against unauthorized access.

Key Concerns

  • Presence of dangerous functions (exec, create_function)
  • High percentage of SQL queries without prepared statements
  • Low percentage of properly escaped output
  • Taint flow with unsanitized paths (high severity)
  • History of 2 medium severity CVEs
  • Lack of capability checks
Vulnerabilities
2

Peter’s Custom Anti-Spam Security Vulnerabilities

CVEs by Year

1 CVE in 2023
2023
1 CVE in 2024
2024
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2024-12554medium · 5.4Cross-Site Request Forgery (CSRF)

Peter’s Custom Anti-Spam <= 3.2.3 - Cross-Site Request Forgery via cas_register_post Function

Dec 17, 2024 Patched in 3.2.4 (1d)
CVE-2023-45759medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Peter’s Custom Anti-Spam <= 3.2.2 - Reflected Cross-Site Scripting

Oct 12, 2023 Patched in 3.2.3 (103d)
Code Analysis
Analyzed Mar 16, 2026

Peter’s Custom Anti-Spam Code Analysis

Dangerous Functions
3
Raw SQL Queries
31
7 prepared
Unescaped Output
30
10 escaped
Nonce Checks
1
Capability Checks
0
File Operations
8
External Requests
0
Bundled Libraries
0

Dangerous Functions Found

exec@exec('sox ' . $cas_audioinput . ' ' . $cas_audiooutput . ' stretch 1.' . $stretch_random . ' > /devcustom_anti_spam.php:167
create_functionif ($cas_modping) add_filter('pre_comment_approved', create_function('$mod_ping', 'return \'0\';'));custom_anti_spam.php:559
create_functionadd_filter('pre_comment_approved', create_function('$mod_track', 'return \'0\';'));custom_anti_spam.php:567

SQL Query Safety

18% prepared38 total queries

Output Escaping

25% escaped40 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

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

Peter’s Custom Anti-Spam Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 9
actionplugins_loadedcustom_anti_spam.php:62
actionsecure_imagecustom_anti_spam.php:366
actioncomment_formcustom_anti_spam.php:369
filterpreprocess_commentcustom_anti_spam.php:371
filterpre_comment_approvedcustom_anti_spam.php:559
filterpre_comment_approvedcustom_anti_spam.php:567
actionadmin_menucustom_anti_spam.php:944
actionregister_formcustom_anti_spam.php:1166
actionregistration_errorscustom_anti_spam.php:1167
Maintenance & Trust

Peter’s Custom Anti-Spam Maintenance & Trust

Maintenance Signals

WordPress version tested6.3.8
Last updatedDec 17, 2024
PHP min version
Downloads64K

Community Trust

Rating80/100
Number of ratings1
Active installs200
Developer Profile

Peter’s Custom Anti-Spam Developer Profile

Peter

5 plugins · 4K total installs

80
trust score
Avg Security Score
89/100
Avg Patch Time
35 days
View full developer profile
Detection Fingerprints

How We Detect Peter’s Custom Anti-Spam

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/peters-custom-anti-spam-image/css/custom_anti_spam.css/wp-content/plugins/peters-custom-anti-spam-image/js/custom_anti_spam.js
Script Paths
/wp-content/plugins/peters-custom-anti-spam-image/js/custom_anti_spam.js
Version Parameters
peters-custom-anti-spam-image/custom_anti_spam.css?ver=peters-custom-anti-spam-image/custom_anti_spam.js?ver=

HTML / DOM Fingerprints

Data Attributes
data-cas-image
JS Globals
cas_pluginpathcas_textcas_textcountcas_audioselectcas_antispampetersword+20 more
FAQ

Frequently Asked Questions about Peter’s Custom Anti-Spam