Custom Order Status for WooCommerce Security & Risk Analysis

wordpress.org/plugins/custom-order-statuses-woocommerce

Custom Order Status for WooCommerce allows you to create and manage order statuses. It improves order management & overall order workflow.

10K active installs v2.11.0 PHP 7.4+ WP 4.4+ Updated Feb 24, 2026
custom-statusorder-statuswoo-commercewoocommerce
100
A · Safe
CVEs total1
Unpatched0
Last CVEJan 30, 2024
Safety Verdict

Is Custom Order Status for WooCommerce Safe to Use in 2026?

Generally Safe

Score 100/100

Custom Order Status for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

1 known CVELast CVE: Jan 30, 2024Updated 1mo ago
Risk Assessment

The "custom-order-statuses-woocommerce" plugin, version 2.11.0, presents a generally good security posture with strong adherence to best practices in several areas. The static analysis shows a minimal attack surface with only one AJAX handler, and importantly, no unprotected entry points. The code signals indicate a diligent use of prepared statements for SQL queries (67%), proper output escaping (92%), and the presence of nonce and capability checks, suggesting a focus on preventing common web vulnerabilities. Furthermore, the absence of critical or high severity taint flows is a positive indicator.

However, there are areas that warrant attention. The presence of two flows with unsanitized paths in the taint analysis, even without critical or high severity, suggests potential for subtle vulnerabilities that could be exploited under specific circumstances. The plugin's history of one medium severity CVE, a Cross-Site Request Forgery (CSRF), while currently patched, indicates that the plugin has had past security weaknesses. This, coupled with the fact that the last vulnerability was recent (January 2024), suggests that ongoing vigilance and regular security audits are advisable to maintain its security.

In conclusion, this plugin exhibits strong foundational security practices, particularly in input sanitization and output escaping. The low attack surface and lack of critical immediate code-level risks are commendable. Nevertheless, the past vulnerability and the presence of unsanitized paths in taint analysis highlight the need for continuous security monitoring and prompt patching of any future discovered issues. Overall, it is a moderately secure plugin with room for improvement to achieve a higher security assurance level.

Key Concerns

  • Unsanitized paths in taint flows
  • Past medium severity CVE (CSRF)
  • SQL queries not always prepared
  • Outputs not always escaped
Vulnerabilities
1

Custom Order Status for WooCommerce Security Vulnerabilities

CVEs by Year

1 CVE in 2024
2024
Patched Has unpatched

Severity Breakdown

Medium
1

1 total CVE

Custom Order Status for WooCommerce <= 2.3.0 - Cross-Site Request Forgery

Jan 30, 2024 Patched in 2.4.0 (8d)
Code Analysis
Analyzed Mar 16, 2026

Custom Order Status for WooCommerce Code Analysis

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

SQL Query Safety

67% prepared9 total queries

Output Escaping

92% escaped101 total outputs
Data Flows
2 unsanitized

Data Flow Analysis

3 flows2 with unsanitized paths
maybe_execute_actions (includes\class-alg-wc-custom-order-statuses-tool.php:62)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface

Custom Order Status for WooCommerce Attack Surface

Entry Points1
Unprotected0

AJAX Handlers 1

authwp_ajax_tyche_plugin_deactivation_submit_actionincludes\component\plugin-deactivation\class-tyche-plugin-deactivation.php:93
WordPress Hooks 50
actioninitclass-alg-wc-custom-order-statuses.php:94
filteralg_orders_custom_statusesclass-alg-wc-custom-order-statuses.php:98
actionbefore_woocommerce_initclass-alg-wc-custom-order-statuses.php:99
actionadmin_footerclass-alg-wc-custom-order-statuses.php:100
actionadmin_initclass-alg-wc-custom-order-statuses.php:101
actioncos_lite_init_tracker_completedclass-alg-wc-custom-order-statuses.php:102
filtercos_lite_ts_tracker_dataclass-alg-wc-custom-order-statuses.php:103
filterwoocommerce_get_settings_pagesclass-alg-wc-custom-order-statuses.php:111
actionadmin_initclass-alg-wc-custom-order-statuses.php:123
filterwc_order_statusesincludes\class-alg-wc-custom-order-statuses-core.php:67
actioninitincludes\class-alg-wc-custom-order-statuses-core.php:68
actionadmin_headincludes\class-alg-wc-custom-order-statuses-core.php:69
filterwoocommerce_thankyouincludes\class-alg-wc-custom-order-statuses-core.php:72
filterwoocommerce_reports_order_statusesincludes\class-alg-wc-custom-order-statuses-core.php:76
filterbulk_actions-edit-shop_orderincludes\class-alg-wc-custom-order-statuses-core.php:82
filterbulk_actions-woocommerce_page_wc-ordersincludes\class-alg-wc-custom-order-statuses-core.php:83
actionadmin_footerincludes\class-alg-wc-custom-order-statuses-core.php:85
filterwoocommerce_admin_order_actionsincludes\class-alg-wc-custom-order-statuses-core.php:91
actionadmin_headincludes\class-alg-wc-custom-order-statuses-core.php:92
actionadmin_headincludes\class-alg-wc-custom-order-statuses-core.php:97
filterwoocommerce_admin_order_preview_actionsincludes\class-alg-wc-custom-order-statuses-core.php:102
filterwc_order_is_editableincludes\class-alg-wc-custom-order-statuses-core.php:107
filterwoocommerce_order_is_paid_statusesincludes\class-alg-wc-custom-order-statuses-core.php:112
actionwoocommerce_order_status_changedincludes\class-alg-wc-custom-order-statuses-core.php:114
actionwoocommerce_order_status_changedincludes\class-alg-wc-custom-order-statuses-core.php:118
actionadmin_enqueue_scriptsincludes\class-alg-wc-custom-order-statuses-core.php:120
actionadmin_menuincludes\class-alg-wc-custom-order-statuses-tool.php:29
actionadmin_menuincludes\class-alg-wc-custom-post-type-for-order-statuses.php:30
actionadmin_initincludes\class-alg-wc-custom-post-type-for-order-statuses.php:31
actionadmin_noticesincludes\class-alg-wc-custom-post-type-for-order-statuses.php:32
actionadmin_noticesincludes\class-alg-wc-custom-post-type-for-order-statuses.php:33
actioninitincludes\class-alg-wc-custom-post-type-for-order-statuses.php:34
actionadd_meta_boxesincludes\class-alg-wc-custom-post-type-for-order-statuses.php:35
actionsave_post_custom_order_statusincludes\class-alg-wc-custom-post-type-for-order-statuses.php:36
filtermanage_custom_order_status_posts_columnsincludes\class-alg-wc-custom-post-type-for-order-statuses.php:37
actionmanage_custom_order_status_posts_custom_columnincludes\class-alg-wc-custom-post-type-for-order-statuses.php:38
filterpost_updated_messagesincludes\class-alg-wc-custom-post-type-for-order-statuses.php:39
actionparent_fileincludes\class-alg-wc-custom-post-type-for-order-statuses.php:40
actionadmin_footerincludes\class-alg-wc-custom-post-type-for-order-statuses.php:41
actionadmin_initincludes\class-alg-wc-custom-post-type-for-order-statuses.php:42
actionwp_trash_postincludes\class-alg-wc-custom-post-type-for-order-statuses.php:43
actionadmin_print_scripts-plugins.phpincludes\component\plugin-deactivation\class-tyche-plugin-deactivation.php:92
actionadmin_noticesincludes\component\plugin-tracking\class-tyche-plugin-tracking.php:81
filtercron_schedulesincludes\component\plugin-tracking\class-tyche-plugin-tracking.php:82
actionadmin_initincludes\component\plugin-tracking\class-tyche-plugin-tracking.php:83
actioninitincludes\settings\class-alg-wc-custom-order-statuses-settings-advanced.php:44
actioninitincludes\settings\class-alg-wc-custom-order-statuses-settings-emails.php:44
actioninitincludes\settings\class-alg-wc-custom-order-statuses-settings-general.php:44
filterwoocommerce_get_sections_alg_wc_custom_order_statusesincludes\settings\class-alg-wc-custom-order-statuses-settings-section.php:29
filterwoocommerce_admin_settings_sanitize_optionincludes\settings\class-alg-wc-settings-custom-order-statuses.php:32
Maintenance & Trust

Custom Order Status for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedFeb 24, 2026
PHP min version7.4
Downloads315K

Community Trust

Rating66/100
Number of ratings32
Active installs10K
Developer Profile

Custom Order Status for WooCommerce Developer Profile

tychesoftwares

20 plugins · 160K total installs

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

How We Detect Custom Order Status for WooCommerce

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/custom-order-statuses-woocommerce/includes/js/plugin-deactivation.js
Version Parameters
custom-order-statuses-woocommerce/custom-order-statuses-for-woocommerce.php?ver=custom-order-statuses-woocommerce/includes/js/plugin-deactivation.js?ver=

HTML / DOM Fingerprints

Data Attributes
data-slug="custom-order-statuses-woocommerce"
FAQ

Frequently Asked Questions about Custom Order Status for WooCommerce