WP Inventory Manager Security & Risk Analysis

wordpress.org/plugins/wp-inventory-manager

Manage inventory in WordPress without WooCommerce. Unlimited items, custom fields, shortcode display. Trusted by 120,000+ sites since 2013.

1K active installs v2.4.0 PHP + WP 3.5.0+ Updated Jun 10, 2026
inventoryinventory-managerproduct-catalogstock-managementwoocommerce-alternative
72
B · Generally Safe
CVEs total7
Unpatched1
Last CVEJul 2, 2026
Safety Verdict

Is WP Inventory Manager Safe to Use in 2026?

Mostly Safe

Score 72/100

WP Inventory Manager is generally safe to use. 7 past CVEs were resolved.

7 known CVEs 1 unpatched Last CVE: Jul 2, 2026Updated 2mo ago
Risk Assessment

The wp-inventory-manager plugin v2.3.5 exhibits a mixed security posture. While it utilizes prepared statements for a majority of its SQL queries and has a moderate number of nonce and capability checks, several areas raise concerns. The presence of an unprotected AJAX handler significantly expands the attack surface and presents a direct avenue for unauthorized actions. Furthermore, the taint analysis revealed one flow with an unsanitized path, indicating a potential for injection vulnerabilities, although it was not classified as critical or high severity. The plugin's vulnerability history, with six known medium severity CVEs primarily related to CSRF and XSS, suggests a recurring pattern of input validation and authorization weaknesses. Although all previously disclosed vulnerabilities are currently patched, the historical data indicates a need for vigilant code review and more robust security controls. The presence of bundled outdated libraries also adds a potential risk, as these may contain known vulnerabilities. Overall, the plugin has some good security practices but requires attention to its unprotected entry points, taint flows, and historical vulnerability patterns to improve its security.

Key Concerns

  • AJAX handler without auth checks
  • Flow with unsanitized paths
  • Bundled outdated library: DataTables v1.10.15
  • Bundled outdated library: Select2
  • Historical medium CVEs (6)
  • Only 50% of outputs properly escaped
Vulnerabilities
7 published

WP Inventory Manager Security Vulnerabilities

CVEs by Year

4 CVEs in 2023
2023
2 CVEs in 2025
2025
1 CVE in 2026 · unpatched
2026
Patched Has unpatched

Severity Breakdown

Medium
7

7 total CVEs

CVE-2026-57772medium · 6.5Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

WP Inventory Manager <= 2.4.0 - Authenticated (Contributor+) SQL Injection

Jul 2, 2026Unpatched
CVE-2025-49977medium · 4.3Cross-Site Request Forgery (CSRF)

WP Inventory Manager <= 2.3.4 - Cross-Site Request Forgery

Jun 19, 2025 Patched in 2.3.5 (252d)
CVE-2024-13434medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Inventory Manager <= 2.3.2 - Reflected Cross-Site Scripting

Jan 16, 2025 Patched in 2.3.3 (1d)
CVE-2023-2842medium · 4.3Cross-Site Request Forgery (CSRF)

WP Inventory Manager <= 2.1.0.13 - Cross-Site Request Forgery via delete_item

Jun 5, 2023 Patched in 2.1.0.14 (232d)
CVE-2023-34002medium · 4.3Cross-Site Request Forgery (CSRF)

WP Inventory Manager <= 2.1.0.13 - Cross-Site Request Forgery via delete_item

Jun 2, 2023 Patched in 2.1.0.14 (235d)
CVE-2023-2123medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Inventory Manager <= 2.1.0.12 - Reflected Cross-Site Scripting via 'message'

Apr 26, 2023 Patched in 2.1.0.13 (272d)
CVE-2023-1806medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

WP Inventory Manager <= 2.1.0.11 - Reflected Cross-Site Scripting via 'message'

Apr 12, 2023 Patched in 2.1.0.12 (286d)
Version History

WP Inventory Manager Release Timeline

v2.4.0Current1 CVE
v2.3.71 CVE
v2.3.61 CVE
Code Analysis
Analyzed Mar 16, 2026

WP Inventory Manager Code Analysis

Dangerous Functions
0
Raw SQL Queries
24
107 prepared
Unescaped Output
273
275 escaped
Nonce Checks
14
Capability Checks
2
File Operations
3
External Requests
1
Bundled Libraries
2

Bundled Libraries

DataTables1.10.15Select2

SQL Query Safety

82% prepared131 total queries

Output Escaping

50% escaped548 total outputs
Data Flows · Security
1 unsanitized

Data Flow Analysis

7 flows1 with unsanitized paths
list_items (includes\wpinventory.admin.class.php:813)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
1 unprotected

WP Inventory Manager Attack Surface

Entry Points4
Unprotected1

AJAX Handlers 2

authwp_ajax_wpim_notice_handlerwpinventory.core.php:103
authwp_ajax_wpim_send_supportwpinventory.core.php:180

Shortcodes 2

[wpinventory_categories] includes\wpinventory.shortcodes.class.php:24
[wpinventory_latest_items] includes\wpinventory.shortcodes.class.php:25
WordPress Hooks 43
actioninitincludes\wpinventory.bxslideshow.class.php:36
actionwpim_edit_settings_mediaincludes\wpinventory.bxslideshow.class.php:37
actionwpim_footerincludes\wpinventory.bxslideshow.class.php:38
actioninitincludes\wpinventory.bxslideshow.class.php:42
actionwpim_load_add_onsincludes\wpinventory.bxslideshow.class.php:264
actionadmin_noticesincludes\wpinventory.class.php:119
actionadmin_initincludes\wpinventory.db.class.php:726
filterwpim_do_fresh_installincludes\wpinventory.default.php:34
filterwpim_display_settingsincludes\wpinventory.filters.php:12
filterwpim_display_listing_settingsincludes\wpinventory.filters.php:13
filterwpim_display_detail_settingsincludes\wpinventory.filters.php:14
actionwpim_single_before_the_fieldincludes\wpinventory.filters.php:19
actionwpim_the_field_closeincludes\wpinventory.filters.php:20
filterwpim_reserve_email_messageincludes\wpinventory.filters.php:24
actionwpim_before_reserve_formincludes\wpinventory.filters.php:106
actionwpim_template_loop_all_item_startincludes\wpinventory.filters.php:107
actionwpim_admin_pre_edit_itemincludes\wpinventory.filters.php:108
filterwpim_out_of_stockincludes\wpinventory.filters.php:109
filterwpim_low_quantity_noticeincludes\wpinventory.filters.php:110
filterbody_classincludes\wpinventory.loop.class.php:508
actionadmin_noticesincludes\wpinventory.promo.class.php:15
actionwpim_admin_menuincludes\wpinventory.promo.class.php:16
actionadmin_enqueue_scriptsincludes\wpinventory.promo.class.php:17
actionadmin_footerincludes\wpinventory.promo.class.php:18
actionwpincludes\wpinventory.reserve.class.php:39
actionwpim_reserve_sentincludes\wpinventory.reserve.class.php:40
actionwpim_core_loadedincludes\wpinventory.search.class.php:45
filterthe_postsincludes\wpinventory.search.class.php:94
actionloop_startincludes\wpinventory.search.class.php:95
actionloop_endincludes\wpinventory.search.class.php:96
filterwpim_detail_back_linkincludes\wpinventory.shortcode.class.php:75
filterhttp_request_timeoutincludes\wpinventory.support.class.php:197
filterredirect_canonicalwpinventory.core.php:90
filterusers_have_additional_contentwpinventory.core.php:93
filterwpim_shortcode_renderedwpinventory.core.php:96
filterwpim_display_filter_formwpinventory.core.php:97
filterwpim_display_paginationwpinventory.core.php:98
filterwpim_loop_query_argswpinventory.core.php:99
filtercron_scheduleswpinventory.core.php:100
filterquery_varswpinventory.core.php:516
filterwpim_enqueue_datatableswpinventory.core.php:588
actionadmin_noticeswpinventory.php:55
actionplugins_loadedwpinventory.php:77
Maintenance & Trust

WP Inventory Manager Maintenance & Trust

Maintenance Signals

WordPress version tested7.0.2
Last updatedJun 10, 2026
PHP min version
Downloads128K

Community Trust

Rating92/100
Number of ratings32
Active installs1K
Developer Profile

WP Inventory Manager Developer Profile

WP Inventory

1 plugin · 1K total installs

59
trust score
Avg Security Score
72/100
Avg Patch Time
213 days
View full developer profile
Detection Fingerprints

How We Detect WP Inventory Manager

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

Asset Fingerprints

Asset Paths
/wp-content/plugins/wp-inventory-manager/css/wpinventory.css/wp-content/plugins/wp-inventory-manager/css/wpinventory.admin.css/wp-content/plugins/wp-inventory-manager/js/wpinventory.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.settings.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.items.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.search.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.reserve.js+8 more
Script Paths
/wp-content/plugins/wp-inventory-manager/js/wpinventory.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.settings.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.items.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.search.js/wp-content/plugins/wp-inventory-manager/js/wpinventory.admin.reserve.js+8 more
Version Parameters
wp-inventory-manager/css/wpinventory.css?ver=wp-inventory-manager/css/wpinventory.admin.css?ver=wp-inventory-manager/js/wpinventory.js?ver=wp-inventory-manager/js/wpinventory.admin.js?ver=wp-inventory-manager/js/wpinventory.admin.settings.js?ver=wp-inventory-manager/js/wpinventory.admin.items.js?ver=wp-inventory-manager/js/wpinventory.admin.search.js?ver=wp-inventory-manager/js/wpinventory.admin.reserve.js?ver=wp-inventory-manager/js/wpinventory.admin.promo.js?ver=wp-inventory-manager/js/wpininventory.datatable.js?ver=wp-inventory-manager/js/wpinventory.shortcode.js?ver=wp-inventory-manager/js/wpinventory.reserve.js?ver=wp-inventory-manager/js/wpinventory.template.js?ver=wp-inventory-manager/js/wpinventory.admin.labels.js?ver=wp-inventory-manager/js/wpinventory.admin.categories.js?ver=wp-inventory-manager/js/wpinventory.admin.statuses.js?ver=

HTML / DOM Fingerprints

CSS Classes
wpinventory-listingwpinventory-item-detailswpinventory-search-formwpinventory-admin-menuwpinventory-settings-sectionwpinventory-data-tablewpinventory-promo-bannerwpinventory-modal
HTML Comments
<!-- WP Inventory Manager --><!-- WP Inventory Admin --><!-- WP Inventory Core --><!-- WP Inventory Settings -->+1 more
Data Attributes
data-wpinventory-iddata-wpinventory-namedata-wpinventory-categorydata-wpinventory-actiondata-wpinventory-nonce
JS Globals
WPIMDataWPIM_AJAX_URLWPIM_NONCEWPIM_ADMIN_AJAX_URL
Shortcode Output
[wpinventory][wpinventory-categories][wpinventory-search][wpinventory-item-details]
FAQ

Frequently Asked Questions about WP Inventory Manager