First Contact Form Security & Risk Analysis

wordpress.org/plugins/first-contact-form

Manage multiple forms in a few clicks away, and way more flexible and User Friendly than other form plugins.

10 active installs v1.0.7 PHP + WP 3.0.1+ Updated Unknown
contactcontact-formweb-form
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is First Contact Form Safe to Use in 2026?

Generally Safe

Score 100/100

First Contact Form has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs
Risk Assessment

The "first-contact-form" plugin v1.0.7 exhibits a mixed security posture. On the positive side, the plugin has no known CVEs, no dangerous functions, and all SQL queries utilize prepared statements, indicating good practices in these areas. Furthermore, there are no external HTTP requests or cron events, which can often be sources of vulnerabilities.

However, significant concerns arise from the static code analysis. A notable issue is that 0% of the 86 output escapings are properly escaped, presenting a high risk of Cross-Site Scripting (XSS) vulnerabilities. The taint analysis reveals two flows with unsanitized paths, although these are not classified as critical or high severity. The absence of nonce checks and capability checks on any entry points (AJAX handlers, REST API routes, shortcodes) is a serious oversight, leaving the plugin vulnerable to unauthorized actions and CSRF attacks. The presence of file operations without clear security context also warrants further investigation.

While the plugin's vulnerability history is clean, this can be misleading if the code has not been thoroughly audited or if the lack of detected issues is due to the absence of specific vulnerability patterns. The current analysis points to substantial weaknesses in output sanitization and authorization for its entry points, which must be addressed to improve its security.

Key Concerns

  • No proper output escaping
  • Missing nonce checks on entry points
  • Missing capability checks on entry points
  • Taint flows with unsanitized paths (2 flows)
  • File operations without clear context
Vulnerabilities
None known

First Contact Form Security Vulnerabilities

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

First Contact Form Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
86
0 escaped
Nonce Checks
0
Capability Checks
0
File Operations
1
External Requests
0
Bundled Libraries
0

Output Escaping

0% escaped86 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

2 flows2 with unsanitized paths
need_message (include\Core.class.php:218)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

First Contact Form Attack Surface

Entry Points3
Unprotected0

Shortcodes 3

[fcf] include\Core.class.php:22
[fcf] include\Core.class.php:48
[fcf] include\Core.class.php:179
WordPress Hooks 6
actioninitinclude\Core.class.php:14
actionadd_meta_boxesinclude\Core.class.php:15
actionadmin_enqueue_scriptsinclude\Core.class.php:16
actionwp_enqueue_scriptsinclude\Core.class.php:17
actionsave_postinclude\Core.class.php:18
filterwp_mail_content_typeinclude\Core.class.php:206
Maintenance & Trust

First Contact Form Maintenance & Trust

Maintenance Signals

WordPress version tested3.9.40
Last updatedUnknown
PHP min version
Downloads3K

Community Trust

Rating100/100
Number of ratings3
Active installs10
Developer Profile

First Contact Form Developer Profile

capripio

3 plugins · 30 total installs

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

How We Detect First Contact Form

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/first-contact-form/resources/jquery.form.min.js/wp-content/plugins/first-contact-form/resources/modernizr.js/wp-content/plugins/first-contact-form/resources/js-webshim/polyfiller.js/wp-content/plugins/first-contact-form/resources/functions.js/wp-content/plugins/first-contact-form/resources/formbuilder.css/wp-content/plugins/first-contact-form/resources/css/vendor.css/wp-content/plugins/first-contact-form/resources/js/vendor.js/wp-content/plugins/first-contact-form/resources/formbuilder-min.js+1 more
Script Paths
/wp-content/plugins/first-contact-form/resources/jquery.form.min.js/wp-content/plugins/first-contact-form/resources/modernizr.js/wp-content/plugins/first-contact-form/resources/js-webshim/polyfiller.js/wp-content/plugins/first-contact-form/resources/functions.js/wp-content/plugins/first-contact-form/resources/js/vendor.js/wp-content/plugins/first-contact-form/resources/formbuilder-min.js+1 more

HTML / DOM Fingerprints

CSS Classes
fcf-submit-button
Data Attributes
name="form_code"name="user_email"name="mail_content"name="submit_txt"name="redirect_url"name="status_auto_res"+3 more
JS Globals
FCF_Helper
Shortcode Output
[fcf]
FAQ

Frequently Asked Questions about First Contact Form