Quick Contact Form Security & Risk Analysis

wordpress.org/plugins/quick-contact-form

An easy to set up, plug and play contact form with a huge range of options and styles. A beginner friendly WordPress contact form plugin.

1K active installs v8.2.7 PHP 5.6+ WP 4.6+ Updated Jan 6, 2026
contact-formcustom-formemail-formformform-builder
92
A · Safe
CVEs total7
Unpatched0
Last CVEJan 16, 2026
Safety Verdict

Is Quick Contact Form Safe to Use in 2026?

Generally Safe

Score 92/100

Quick Contact Form has a strong security track record. Known vulnerabilities have been patched promptly.

7 known CVEsLast CVE: Jan 16, 2026Updated 2mo ago
Risk Assessment

The plugin "quick-contact-form" v8.2.7 presents a mixed security posture. On the positive side, it demonstrates good practices in SQL query handling, exclusively using prepared statements, and a high percentage of output escaping (84%). The significant number of nonce and capability checks (64 and 6 respectively) indicates an effort to secure various functionalities. However, the presence of two AJAX handlers without authentication checks represents a notable security concern, increasing the attack surface for unauthorized actions. The taint analysis shows no critical or high severity flows, which is reassuring, but the 11 flows with unsanitized paths warrant attention. The vulnerability history is a significant concern, with a total of 7 known CVEs, including one high severity and six medium severity vulnerabilities. Although no CVEs are currently unpatched, this pattern of past vulnerabilities, particularly those related to improper input validation, cross-site scripting, and CSRF, suggests a recurring need for diligent patching and careful code reviews. The bundled Freemius library at v1.0 might also be outdated, though its specific version isn't detailed enough to assess its risk. Overall, while the plugin has strengths in its adherence to secure SQL practices and output escaping, the unprotected entry points and the history of vulnerabilities necessitate caution.

Key Concerns

  • Unprotected AJAX handlers
  • Flows with unsanitized paths
  • One high severity CVE history
  • Six medium severity CVE history
  • Bundled outdated library (Freemius v1.0)
Vulnerabilities
7

Quick Contact Form Security Vulnerabilities

CVEs by Year

1 CVE in 2013
2013
3 CVEs in 2023
2023
2 CVEs in 2025
2025
1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

High
1
Medium
6

7 total CVEs

CVE-2025-12718medium · 5.8Improper Input Validation

Quick Contact Form <= 8.2.6 - Unauthenticated Open Mail Relay

Jan 16, 2026 Patched in 8.2.7 (1d)
CVE-2025-67471medium · 4.3Cross-Site Request Forgery (CSRF)

Quick Contact Form <= 8.2.5 - Cross-Site Request Forgery

Nov 25, 2025 Patched in 8.2.6 (17d)
CVE-2025-48245medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Quick Contact Form <= 8.2.1 - Reflected Cross-Site Scripting

May 29, 2025 Patched in 8.2.2 (2d)
CVE-2022-47608medium · 4.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Quick Contact Form <= 8.0.3.1 - Authenticated (Admin+) Stored Cross Site Scripting

Feb 15, 2023 Patched in 8.0.4 (342d)
CVE-2023-23885medium · 6.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Quick Contact Form <= 8.0.3.1 - Authenticated (Contributor+) Stored Cross-Site Scripting

Feb 6, 2023 Patched in 8.0.4 (351d)
CVE-2023-25035medium · 6.5Cross-Site Request Forgery (CSRF)

Quick Contact Form <= 8.0.3.1 - Cross-Site Request Forgery to Sensitive Information Disclosure

Feb 6, 2023 Patched in 8.0.4 (351d)
WF-d951e6b4-986a-400a-ab28-066a4ea5cbca-quick-contact-formhigh · 7.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Quick Contact Form < 6.1 - Cross-Site Scripting

Oct 6, 2013 Patched in 6.1 (3761d)
Code Analysis
Analyzed Mar 16, 2026

Quick Contact Form Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
53
273 escaped
Nonce Checks
64
Capability Checks
6
File Operations
4
External Requests
4
Bundled Libraries
1

Bundled Libraries

Freemius1.0

Output Escaping

84% escaped326 total outputs
Data Flows
11 unsanitized

Data Flow Analysis

13 flows11 with unsanitized paths
qcf_show_messages (legacy\messages.php:102)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
2 unprotected

Quick Contact Form Attack Surface

Entry Points6
Unprotected2

AJAX Handlers 4

authwp_ajax_post_smtp_requestcontrol\post-smtp-notice\recommend-post-smtp-base.php:39
noprivwp_ajax_post_smtp_requestcontrol\post-smtp-notice\recommend-post-smtp-base.php:40
authwp_ajax_qcf_validate_formlegacy\quick-contact-form.php:7
noprivwp_ajax_qcf_validate_formlegacy\quick-contact-form.php:8

REST API Routes 1

POST/wp-json/recommend-post-smtp/requestcontrol\post-smtp-notice\recommend-post-smtp-admin-notice.php:161

Shortcodes 1

[qcf] legacy\quick-contact-form.php:9
WordPress Hooks 37
actioninitcontrol\class-plugin.php:55
actionadmin_enqueue_scriptscontrol\post-smtp-notice\recommend-post-smtp-admin-notice.php:52
actionadmin_headcontrol\post-smtp-notice\recommend-post-smtp-admin-notice.php:53
actionadmin_post_hide-post-smtp-recommendation-noticecontrol\post-smtp-notice\recommend-post-smtp-admin-notice.php:54
actionrest_api_initcontrol\post-smtp-notice\recommend-post-smtp-admin-notice.php:55
actionrest_api_initcontrol\post-smtp-notice\recommend-post-smtp-base.php:36
actionadmin_enqueue_scriptscontrol\post-smtp-notice\recommend-post-smtp-base.php:43
actionadmin_headcontrol\post-smtp-notice\recommend-post-smtp-base.php:44
actionadmin_menucontrol\post-smtp-notice\recommend-post-smtp-base.php:57
actionadmin_menucontrol\post-smtp-notice\recommend-post-smtp-base.php:61
filterupload_dirlegacy\functions\qcf_process_form.php:389
actionwp_mail_failedlegacy\functions\qcf_wp_mail.php:3
filterplugin_action_linkslegacy\quick-contact-form.php:10
actionwp_enqueue_scriptslegacy\quick-contact-form.php:16
actionwidgets_initlegacy\quick-contact-form.php:17
actioninitlegacy\quick-contact-form.php:18
actionplugin_row_metalegacy\settings.php:1551
actioninitlegacy\settings.php:1749
actionadmin_menulegacy\settings.php:1750
actionadmin_menulegacy\settings.php:1751
actionadmin_enqueue_scriptslegacy\settings.php:1752
actioncustomize_registerlegacy\settings.php:1754
actionafter_uninstallquick-contact-form.php:53
actionplugin_row_metasettings.php:1915
actioninitsettings.php:1979
actionadmin_menusettings.php:1980
actionadmin_noticessettings.php:1981
actionadmin_menusettings.php:1982
actionadmin_enqueue_scriptssettings.php:1983
actionadmin_enqueue_scriptsui\admin\class-admin-pages.php:72
filterscreen_layout_columnsui\admin\class-admin-pages.php:75
actionadmin_menuui\admin\class-admin-settings.php:74
actionadmin_enqueue_scriptsui\admin\class-admin.php:43
actionadmin_noticesui\admin\class-admin.php:45
actionadmin_noticesui\admin\class-admin.php:48
actionwp_enqueue_scriptsui\user\class-frontend.php:45
actionwp_enqueue_scriptsui\user\class-frontend.php:46
Maintenance & Trust

Quick Contact Form Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedJan 6, 2026
PHP min version5.6
Downloads182K

Community Trust

Rating98/100
Number of ratings21
Active installs1K
Developer Profile

Quick Contact Form Developer Profile

Saad Iqbal

84 plugins · 1.4M total installs

76
trust score
Avg Security Score
96/100
Avg Patch Time
287 days
View full developer profile
Detection Fingerprints

How We Detect Quick 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/quick-contact-form/build/index.css/wp-content/plugins/quick-contact-form/build/index.js
Generator Patterns
Quick Contact Form v8.2.7
Script Paths
/wp-content/plugins/quick-contact-form/build/index.js
Version Parameters
quick-contact-form/build/index.css?ver=quick-contact-form/build/index.js?ver=

HTML / DOM Fingerprints

CSS Classes
quick-contact-formqcf-form-wrapperqcf-field-wrapperqcf-submit-button
HTML Comments
<!-- Quick Contact Form --><!-- End Quick Contact Form -->
Data Attributes
data-qcf-iddata-qcf-field
JS Globals
quick_contact_form_params
REST Endpoints
/wp-json/quick-contact-form/v1/submit
Shortcode Output
[quick_contact_form]
FAQ

Frequently Asked Questions about Quick Contact Form