YAML Custom Fields Security & Risk Analysis

wordpress.org/plugins/yaml-custom-fields

A WordPress plugin for managing YAML frontmatter schemas in theme templates and partials.

0 active installs v1.2.7 PHP 8.1+ WP 5.0+ Updated Unknown
custom-fieldsfrontmattermeta-fieldsschemayaml
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is YAML Custom Fields Safe to Use in 2026?

Generally Safe

Score 100/100

YAML Custom Fields has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs
Risk Assessment

The "yaml-custom-fields" v1.2.7 plugin exhibits a generally good security posture based on the static analysis. All identified entry points, including AJAX handlers, are protected by authentication and capability checks. The plugin also demonstrates strong output escaping practices with 92% of outputs properly escaped, and it diligently uses nonces. The absence of any recorded historical vulnerabilities or CVEs further contributes to a positive security outlook.

However, a significant concern arises from the static analysis revealing that 100% of the 4 SQL queries do not use prepared statements. This is a critical weakness as it exposes the plugin to SQL injection vulnerabilities, especially if any of the input data processed by these queries is user-controlled. Additionally, the taint analysis identified one flow with unsanitized paths, which could potentially lead to directory traversal or file inclusion vulnerabilities if not handled carefully, although it is not flagged as critical or high severity. The plugin also performs file operations, the nature of which, if insecurely handled, could pose a risk.

While the plugin's proactive use of nonces, capability checks, and output escaping are commendable, the lack of prepared statements for SQL queries and the presence of an unsanitized path flow are notable risks that warrant attention. The clean vulnerability history is a strength, suggesting a potentially well-maintained codebase, but it does not negate the identified code-level risks. Overall, the plugin is well-structured with good defensive coding, but the SQL query handling and the identified taint flow are areas that require immediate review and remediation to ensure a truly secure implementation.

Key Concerns

  • SQL queries without prepared statements
  • Flows with unsanitized paths
Vulnerabilities
None known

YAML Custom Fields Security Vulnerabilities

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

YAML Custom Fields Code Analysis

Dangerous Functions
0
Raw SQL Queries
4
0 prepared
Unescaped Output
48
534 escaped
Nonce Checks
31
Capability Checks
31
File Operations
3
External Requests
0
Bundled Libraries
0

SQL Query Safety

0% prepared4 total queries

Output Escaping

92% escaped582 total outputs
Data Flows
1 unsanitized

Data Flow Analysis

3 flows1 with unsanitized paths
<yaml-custom-fields> (yaml-custom-fields.php:0)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

YAML Custom Fields Attack Surface

Entry Points13
Unprotected0

AJAX Handlers 13

authwp_ajax_yaml_cf_save_template_settingsyaml-custom-fields.php:272
authwp_ajax_yaml_cf_toggle_use_globalyaml-custom-fields.php:273
authwp_ajax_yaml_cf_save_schemayaml-custom-fields.php:274
authwp_ajax_yaml_cf_get_schemayaml-custom-fields.php:275
authwp_ajax_yaml_cf_get_partial_datayaml-custom-fields.php:276
authwp_ajax_yaml_cf_save_partial_datayaml-custom-fields.php:277
authwp_ajax_yaml_cf_refresh_templatesyaml-custom-fields.php:278
authwp_ajax_yaml_cf_export_settingsyaml-custom-fields.php:279
authwp_ajax_yaml_cf_import_settingsyaml-custom-fields.php:280
authwp_ajax_yaml_cf_export_page_datayaml-custom-fields.php:281
authwp_ajax_yaml_cf_import_page_datayaml-custom-fields.php:282
authwp_ajax_yaml_cf_get_posts_with_datayaml-custom-fields.php:283
authwp_ajax_yaml_cf_import_data_objectsyaml-custom-fields.php:284
WordPress Hooks 25
actionadmin_menusrc\Core\HookManager.php:36
actionadmin_initsrc\Core\HookManager.php:37
actionadmin_enqueue_scriptssrc\Core\HookManager.php:38
filteradmin_titlesrc\Core\HookManager.php:41
filterparent_filesrc\Core\HookManager.php:42
filtersubmenu_filesrc\Core\HookManager.php:43
actionswitch_themesrc\Core\HookManager.php:49
actionadmin_noticesyaml-custom-fields.php:21
actionadmin_noticesyaml-custom-fields.php:31
actionadmin_noticesyaml-custom-fields.php:43
actionadmin_noticesyaml-custom-fields.php:141
actionadmin_inityaml-custom-fields.php:251
actionadmin_inityaml-custom-fields.php:252
actionadmin_inityaml-custom-fields.php:253
actionadmin_inityaml-custom-fields.php:254
actionadmin_inityaml-custom-fields.php:255
actionadmin_inityaml-custom-fields.php:256
actionadmin_inityaml-custom-fields.php:257
actionedit_form_after_titleyaml-custom-fields.php:269
actionsave_postyaml-custom-fields.php:270
actiondelete_postyaml-custom-fields.php:271
filterupload_mimesyaml-custom-fields.php:644
filterwp_check_filetype_and_extyaml-custom-fields.php:650
actionplugins_loadedyaml-custom-fields.php:3719
actionplugins_loadedyaml-custom-fields.php:3727
Maintenance & Trust

YAML Custom Fields Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedUnknown
PHP min version8.1
Downloads252

Community Trust

Rating0/100
Number of ratings0
Active installs0
Developer Profile

YAML Custom Fields Developer Profile

starbist

1 plugin · 0 total installs

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

How We Detect YAML Custom Fields

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/yaml-custom-fields/build/admin/css/admin-style.css/wp-content/plugins/yaml-custom-fields/build/admin/js/admin-script.js/wp-content/plugins/yaml-custom-fields/build/admin/js/yaml-fields-editor.js/wp-content/plugins/yaml-custom-fields/build/admin/js/yaml-fields-admin.js/wp-content/plugins/yaml-custom-fields/build/frontend/css/frontend-style.css/wp-content/plugins/yaml-custom-fields/build/frontend/js/frontend-script.js
Script Paths
/wp-content/plugins/yaml-custom-fields/build/admin/js/admin-script.js/wp-content/plugins/yaml-custom-fields/build/admin/js/yaml-fields-editor.js/wp-content/plugins/yaml-custom-fields/build/admin/js/yaml-fields-admin.js/wp-content/plugins/yaml-custom-fields/build/frontend/js/frontend-script.js
Version Parameters
yaml-custom-fields/build/admin/css/admin-style.css?ver=yaml-custom-fields/build/admin/js/admin-script.js?ver=yaml-custom-fields/build/admin/js/yaml-fields-editor.js?ver=yaml-custom-fields/build/admin/js/yaml-fields-admin.js?ver=yaml-custom-fields/build/frontend/css/frontend-style.css?ver=yaml-custom-fields/build/frontend/js/frontend-script.js?ver=

HTML / DOM Fingerprints

CSS Classes
yaml-cf-editoryaml-cf-field-wrapperyaml-cf-field-labelyaml-cf-field-inputyaml-cf-field-descriptionyaml-cf-nested-fieldsyaml-cf-add-field-buttonyaml-cf-remove-field-button+1 more
HTML Comments
<!-- YAML Custom Fields Start --><!-- YAML Custom Fields End --><!-- YAML Custom Fields Field Start: [field_name] --><!-- YAML Custom Fields Field End: [field_name] -->
Data Attributes
data-yaml-cf-field-typedata-yaml-cf-field-namedata-yaml-cf-field-options
JS Globals
yamlCFAdminyamlCFEditor
FAQ

Frequently Asked Questions about YAML Custom Fields