Custom JavaScript Editor Security & Risk Analysis

wordpress.org/plugins/custom-javascript-editor

Add custom JavaScript to your site from an editor in the WordPress admin

500 active installs v1.1 PHP + WP 3.4+ Updated Apr 14, 2016
javascript
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Custom JavaScript Editor Safe to Use in 2026?

Generally Safe

Score 85/100

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

No known CVEs Updated 9yr ago
Risk Assessment

The 'custom-javascript-editor' plugin version 1.1 exhibits a generally strong security posture based on the provided static analysis. The absence of any identified CVEs, combined with the fact that all SQL queries are prepared and there are no file operations or external HTTP requests, suggests careful development and a low likelihood of common web vulnerabilities. The presence of nonce and capability checks further reinforces this positive assessment, indicating an effort to secure its limited entry points.

However, the analysis does highlight a potential area for improvement. With 13 total output operations, 77% being properly escaped leaves 3 outputs potentially unescaped. While the taint analysis did not reveal any unsanitized flows, unescaped output can still lead to Cross-Site Scripting (XSS) vulnerabilities if user-supplied data is reflected directly to the browser. The plugin's small attack surface, with zero identified entry points, is a significant strength. The lack of historical vulnerabilities is also a positive indicator. Overall, the plugin appears to be developed with security in mind, but vigilance regarding output escaping is recommended.

Key Concerns

  • Unescaped output found
Vulnerabilities
None known

Custom JavaScript Editor Security Vulnerabilities

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

Custom JavaScript Editor Code Analysis

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

Output Escaping

77% escaped13 total outputs
Data Flows
All sanitized

Data Flow Analysis

2 flows
handle_form (custom-javascript-editor.php:381)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Custom JavaScript Editor Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 9
actioninitcustom-javascript-editor.php:43
filterget_edit_post_linkcustom-javascript-editor.php:46
actionadmin_menucustom-javascript-editor.php:48
actionadmin_initcustom-javascript-editor.php:49
actionwp_enqueue_scriptscustom-javascript-editor.php:50
actionadmin_enqueue_scriptscustom-javascript-editor.php:51
actionadmin_noticescustom-javascript-editor.php:55
actionwp_print_footer_scriptscustom-javascript-editor.php:58
filterscreen_settingscustom-javascript-editor.php:252
Maintenance & Trust

Custom JavaScript Editor Maintenance & Trust

Maintenance Signals

WordPress version tested4.5.33
Last updatedApr 14, 2016
PHP min version
Downloads19K

Community Trust

Rating0/100
Number of ratings0
Active installs500
Developer Profile

Custom JavaScript Editor Developer Profile

Automattic

213 plugins · 19.2M total installs

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

How We Detect Custom JavaScript Editor

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/custom-javascript-editor/css/editor.css/wp-content/plugins/custom-javascript-editor/js/editor.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/ace.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/mode-javascript.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-cobalt.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-monokai.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-ambiance.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-blackboard.js+10 more
Script Paths
/wp-content/plugins/custom-javascript-editor/js/editor.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/ace.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/mode-javascript.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-cobalt.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-monokai.js/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-ambiance.js+11 more
Version Parameters
/wp-content/plugins/custom-javascript-editor/css/editor.css?ver=/wp-content/plugins/custom-javascript-editor/js/editor.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/ace.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/mode-javascript.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-cobalt.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-monokai.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-ambiance.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-blackboard.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-eclipse.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-elegant.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-erlang-dark.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-lesser-dark.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-neat.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-night.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-rubyblue.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-vibrant-ink.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/theme-xq-dark.js?ver=/wp-content/plugins/custom-javascript-editor/js/lib/ace/ext-language_tools.js?ver=

HTML / DOM Fingerprints

CSS Classes
custom-javascript-editorace_editorace_gutterace_layerace_text-layerace_lineace_active-lineace_cursor-layer+1 more
Data Attributes
data-theme
JS Globals
ace
FAQ

Frequently Asked Questions about Custom JavaScript Editor