Lists Shortcode and Widget Security & Risk Analysis

wordpress.org/plugins/lists-shortcode-and-widget

Create Lists. Nice and easy interface. Insert anywhere in your site - page/post editor, sidebars, template files.

100 active installs v1.8 PHP + WP 3.6+ Updated Mar 4, 2022
listsordered-listshortcodeunordered-listwidgets
85
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Lists Shortcode and Widget Safe to Use in 2026?

Generally Safe

Score 85/100

Lists Shortcode and Widget has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 4yr ago
Risk Assessment

The "lists-shortcode-and-widget" plugin v1.8 exhibits a concerning security posture primarily due to its unprotected AJAX handlers. With 6 AJAX handlers identified and none of them featuring authentication checks, there's a significant risk of unauthorized actions being performed. The taint analysis further reinforces these concerns, revealing 3 high-severity flows with unsanitized paths, suggesting potential vulnerabilities where user-supplied data could be misused without proper validation. While the plugin utilizes prepared statements for SQL queries and has no recorded CVEs, these strengths are overshadowed by the numerous unprotected entry points and the identified taint issues.

The static analysis highlights a considerable attack surface without adequate authorization. The presence of the `unserialize` function, while not directly implicated in the taint flows, is a known risk factor that should be handled with extreme caution and proper validation of serialized data. The plugin's lack of recorded vulnerabilities historically is a positive sign, potentially indicating good development practices in the past or that previous versions may have been more thoroughly tested. However, the current analysis reveals new areas of concern that require immediate attention.

In conclusion, while the plugin has some good practices like using prepared statements for SQL, the critical weaknesses lie in its unprotected AJAX endpoints and high-severity taint flows. These factors present a clear and present danger to any WordPress site using this plugin, and the absence of historical vulnerabilities should not breed complacency given the current static analysis findings. Prioritizing the securing of AJAX handlers and sanitizing the identified taint flows is paramount.

Key Concerns

  • Unprotected AJAX handlers
  • High severity taint flows (unsanitized paths)
  • Unprotected AJAX handlers (significant attack surface)
  • Use of unserialize function
  • Incomplete output escaping (59% proper)
Vulnerabilities
None known

Lists Shortcode and Widget Security Vulnerabilities

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

Lists Shortcode and Widget Code Analysis

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

Dangerous Functions Found

unserialize$value = unserialize( urldecode( $value ) );include\otw_components\otw_functions\otw_functions.php:596

Bundled Libraries

Select2TinyMCE

Output Escaping

59% escaped46 total outputs
Data Flows
3 unsanitized

Data Flow Analysis

3 flows3 with unsanitized paths
otw_get (include\otw_components\otw_functions\otw_functions.php:558)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
6 unprotected

Lists Shortcode and Widget Attack Surface

Entry Points6
Unprotected6

AJAX Handlers 6

authwp_ajax_otw_shortcode_editor_dialoginclude\otw_components\otw_shortcode\otw_shortcode.class.php:166
authwp_ajax_otw_shortcode_get_codeinclude\otw_components\otw_shortcode\otw_shortcode.class.php:167
authwp_ajax_otw_shortcode_live_previewinclude\otw_components\otw_shortcode\otw_shortcode.class.php:168
authwp_ajax_otw_shortcode_live_reloadinclude\otw_components\otw_shortcode\otw_shortcode.class.php:169
authwp_ajax_otw_shortcode_preview_shortcodesinclude\otw_components\otw_shortcode\otw_shortcode.class.php:170
authwp_ajax_otw_shortcode_preview_front_shortcodesinclude\otw_components\otw_shortcode\otw_shortcode.class.php:171
WordPress Hooks 11
actionwp_enqueue_scriptsinclude\otw_components\otw_functions\otw_component.class.php:90
actionadmin_enqueue_scriptsinclude\otw_components\otw_functions\otw_component.class.php:94
actionadmin_footerinclude\otw_components\otw_shortcode\otw_shortcode.class.php:164
filtermce_external_pluginsinclude\otw_components\otw_shortcode\otw_shortcode.class.php:175
filtermce_buttonsinclude\otw_components\otw_shortcode\otw_shortcode.class.php:176
actionwp_footerinclude\otw_components\otw_shortcode\otw_shortcode.class.php:185
actionadmin_menuinclude\otw_lssw_functions.php:41
actionadmin_print_stylesinclude\otw_lssw_functions.php:43
actionadmin_enqueue_scriptsinclude\otw_lssw_functions.php:45
actioninitotw_content_manager.php:64
actionwidgets_initotw_content_manager.php:65
Maintenance & Trust

Lists Shortcode and Widget Maintenance & Trust

Maintenance Signals

WordPress version tested5.9.13
Last updatedMar 4, 2022
PHP min version
Downloads7K

Community Trust

Rating60/100
Number of ratings2
Active installs100
Developer Profile

Lists Shortcode and Widget Developer Profile

OTWthemes

12 plugins · 6K total installs

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

How We Detect Lists Shortcode and Widget

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/lists-shortcode-and-widget/css/colorpicker.css/wp-content/plugins/lists-shortcode-and-widget/css/datetimepicker.css/wp-content/plugins/lists-shortcode-and-widget/css/otw_form_admin.css/wp-content/plugins/lists-shortcode-and-widget/css/select2.min.css/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/colorpicker.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/datetimepicker.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/otw_form_admin.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/select2.full.min.js
Script Paths
/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/colorpicker.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/datetimepicker.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/otw_form_admin.js/wp-content/plugins/lists-shortcode-and-widget/include/otw_components/otw_form/js/select2.full.min.js
Version Parameters
lists-shortcode-and-widget/css/colorpicker.css?ver=lists-shortcode-and-widget/css/datetimepicker.css?ver=lists-shortcode-and-widget/css/otw_form_admin.css?ver=lists-shortcode-and-widget/css/select2.min.css?ver=lists-shortcode-and-widget/include/otw_components/otw_form/js/colorpicker.js?ver=lists-shortcode-and-widget/include/otw_components/otw_form/js/datetimepicker.js?ver=lists-shortcode-and-widget/include/otw_components/otw_form/js/otw_form_admin.js?ver=lists-shortcode-and-widget/include/otw_components/otw_form/js/select2.full.min.js?ver=

HTML / DOM Fingerprints

CSS Classes
otw-form-controlotw-dynamic-select-wrapperotw-clearotw-form-text-inputotw-form-hint
Data Attributes
data-value
JS Globals
OTW_Form
FAQ

Frequently Asked Questions about Lists Shortcode and Widget