HD Quiz Security & Risk Analysis

wordpress.org/plugins/hd-quiz

Create a Quiz. An easy-to-use feature rich plugin to create quizzes with quiz timer, pagination, hints, advanced marking, and leading help and support

7K active installs v2.1.0 PHP 7.0+ WP 5.0+ Updated Mar 24, 2026
examquizquiz-makerquizzes
95
A · Safe
CVEs total4
Unpatched0
Last CVEJan 24, 2026
Safety Verdict

Is HD Quiz Safe to Use in 2026?

Generally Safe

Score 95/100

HD Quiz has a strong security track record. Known vulnerabilities have been patched promptly. It's a solid choice for most WordPress installations.

4 known CVEsLast CVE: Jan 24, 2026Updated 1mo ago
Risk Assessment

The hd-quiz plugin, version 2.0.10, presents a mixed security posture. While it demonstrates strong practices in areas such as using prepared statements for all SQL queries and a lack of critical or high severity vulnerabilities in recent history, significant concerns remain regarding its attack surface. A substantial portion of its AJAX handlers, 12 out of 12, lack authorization checks, creating a wide entry point for potential unauthorized actions if malicious input can be crafted. The taint analysis, although not revealing critical or high severity issues, did identify 9 flows with unsanitized paths, suggesting a potential for vulnerabilities if these paths are exploited through the unprotected AJAX handlers. The vulnerability history, with 4 medium severity CVEs related to missing authorization and cross-site scripting, reinforces the concern around authorization and input sanitization. While the plugin has no currently unpatched vulnerabilities, the patterns observed in past issues and the static analysis findings indicate a need for diligent review and hardening of its unprotected entry points to mitigate risks.

Key Concerns

  • High number of unprotected AJAX handlers
  • Taint flows with unsanitized paths
  • Past vulnerabilities in authorization and XSS
  • Output escaping not fully implemented
Vulnerabilities
4 published

HD Quiz Security Vulnerabilities

CVEs by Year

1 CVE in 2021
2021
1 CVE in 2024
2024
1 CVE in 2025
2025
1 CVE in 2026
2026
Patched Has unpatched

Severity Breakdown

Medium
4

4 total CVEs

CVE-2026-24544medium · 4.3Missing Authorization

HD Quiz <= 2.0.9 - Missing Authorization

Jan 24, 2026 Patched in 2.0.10 (7d)
CVE-2024-13383medium · 4.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

HD Quiz <= 1.8.14 - Authenticated (Editor+) Stored Cross-Site Scripting

Mar 3, 2025 Patched in 2.0.0 (88d)
CVE-2024-22161medium · 4.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

HD Quiz <= 1.8.11 - Authenticated (Administrator+) Stored Cross-Site Scripting via plugin settings

Jan 16, 2024 Patched in 1.8.12 (7d)
CVE-2021-24571medium · 5.4Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

HD Quiz <= 1.8.3 - Stored Cross-Site Scripting

Jul 26, 2021 Patched in 1.8.4 (911d)
Version History

HD Quiz Release Timeline

Code Analysis
Analyzed Mar 16, 2026

HD Quiz Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
0 prepared
Unescaped Output
195
309 escaped
Nonce Checks
2
Capability Checks
11
File Operations
0
External Requests
2
Bundled Libraries
0

Output Escaping

61% escaped504 total outputs
Data Flows · Security
9 unsanitized

Data Flow Analysis

11 flows9 with unsanitized paths
import (classes\csv-import-tool.php:24)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
12 unprotected

HD Quiz Attack Surface

Entry Points13
Unprotected12

AJAX Handlers 12

authwp_ajax_hdq_settings_saveincludes\actions-ajax.php:18
authwp_ajax_hdq_get_view_dashboardincludes\actions-ajax.php:28
authwp_ajax_hdq_get_view_quizincludes\actions-ajax.php:49
authwp_ajax_hdq_create_quizincludes\actions-ajax.php:64
authwp_ajax_hdq_save_quizincludes\actions-ajax.php:83
authwp_ajax_hdq_delete_quizincludes\actions-ajax.php:98
authwp_ajax_hdq_get_view_questionincludes\actions-ajax.php:117
authwp_ajax_hdq_get_question_typeincludes\actions-ajax.php:143
authwp_ajax_hdq_save_questionincludes\actions-ajax.php:167
authwp_ajax_hdq_delete_questionincludes\actions-ajax.php:188
authwp_ajax_hdq_accept_csvincludes\actions-ajax.php:199
authwp_ajax_hdq_csv_import_questionincludes\actions-ajax.php:208

Shortcodes 1

[HDquiz] index.php:179
WordPress Hooks 34
filteruser_can_richedithdfields\classes\fields.php:867
filterhd_contenthdfields\classes\sanitize.php:288
filterhd_contenthdfields\classes\sanitize.php:289
filterhd_contenthdfields\classes\sanitize.php:290
filterhd_contenthdfields\classes\sanitize.php:291
filterhd_contenthdfields\classes\sanitize.php:292
filterhd_contenthdfields\classes\sanitize.php:293
filteruser_can_richeditincludes\admin-pages.php:42
actionadmin_enqueue_scriptsincludes\admin-pages.php:520
actionadd_meta_boxesincludes\admin-pages.php:526
filterhd_add_new_field_typesincludes\custom-fields.php:27
filterhdq_contentincludes\functions.php:47
filterhdq_contentincludes\functions.php:48
filterhdq_contentincludes\functions.php:49
filterhdq_contentincludes\functions.php:50
filterhdq_contentincludes\functions.php:51
filterhdq_contentincludes\functions.php:52
filterwp_titleincludes\functions.php:683
filtertemplate_includeincludes\functions.php:690
actioninitincludes\functions.php:699
actioninitincludes\question-cpt.php:30
filterthe_contentincludes\questions\multiple-choice-image.php:34
filterthe_contentincludes\questions\multiple-choice-text.php:25
filterthe_contentincludes\questions\personality-multiple-choice-image.php:39
filterthe_contentincludes\questions\personality-multiple-choice-text.php:31
filterthe_contentincludes\questions\select-all-apply-image.php:36
filterthe_contentincludes\questions\select-all-apply-text.php:28
actioninitincludes\quiz-taxonomy.php:24
actioninitindex.php:52
actioninitindex.php:62
filterredirect_canonicalindex.php:105
actionadmin_menuindex.php:112
actioninitindex.php:115
actioninitindex.php:218
Maintenance & Trust

HD Quiz Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 24, 2026
PHP min version7.0
Downloads255K

Community Trust

Rating98/100
Number of ratings143
Active installs7K
Developer Profile

HD Quiz Developer Profile

Harmonic Design

6 plugins · 8K total installs

73
trust score
Avg Security Score
92/100
Avg Patch Time
186 days
View full developer profile
Detection Fingerprints

How We Detect HD Quiz

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/hd-quiz/assets/css/hdq-quiz-front.css/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_front.js/wp-content/plugins/hd-quiz/assets/css/hdq-admin.css/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_admin.js/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_results.js
Script Paths
/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_front.js/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_results.js/wp-content/plugins/hd-quiz/assets/js/hdq_quiz_admin.js
Version Parameters
hd-quiz/assets/css/hdq-quiz-front.css?ver=hd-quiz/assets/js/hdq_quiz_front.js?ver=hd-quiz/assets/css/hdq-admin.css?ver=hd-quiz/assets/js/hdq_quiz_admin.js?ver=hd-quiz/assets/js/hdq_quiz_results.js?ver=

HTML / DOM Fingerprints

CSS Classes
hdq_quiz_wrapperhdq-questionhdq-answerhdq-results-wrapperhdq_answer_inputhdq_question_counterhdq_question_titlehdq_quiz_content+10 more
HTML Comments
<!-- next and prev question --><!-- submit the quiz --><!-- show results --><!-- display questions -->+19 more
Data Attributes
data-hdq-quiz-iddata-question-iddata-answer-iddata-quiz-iddata-question-orderdata-user-id+7 more
JS Globals
hdq_quiz_varshdq_quiz_datahdq_quiz_answershdq_quiz_scorehdq_quiz_current_questionhdq_quiz_total_questions+5 more
REST Endpoints
/wp-json/hdq/v1/get_quiz/wp-json/hdq/v1/submit_answer/wp-json/hdq/v1/get_results
Shortcode Output
[HDquiz quiz='']
FAQ

Frequently Asked Questions about HD Quiz