
Alex Reservations: Smart Restaurant Booking Security & Risk Analysis
wordpress.org/plugins/alex-reservationsRestaurant reservations solution to help you manage your daily bookings.
Is Alex Reservations: Smart Restaurant Booking Safe to Use in 2026?
Generally Safe
Score 96/100Alex Reservations: Smart Restaurant Booking has a strong security track record. Known vulnerabilities have been patched promptly.
The alex-reservations plugin v2.3.5 exhibits a mixed security posture. On the positive side, a high percentage of SQL queries utilize prepared statements and output escaping is generally well-implemented, indicating good development practices in these areas. However, there are significant concerns regarding the attack surface, with 4 out of 5 entry points lacking authentication checks. This presents a considerable risk for unauthorized access or manipulation of plugin functionality. The taint analysis shows no critical or high severity flows with unsanitized paths, which is a positive indicator, but the presence of 5 flows with unsanitized paths, even if currently assessed as lower severity, warrants attention. The plugin's vulnerability history, with two known CVEs including a high-severity one (Unrestricted File Upload), and a recent vulnerability in late 2025, suggests a recurring pattern of security weaknesses. While no CVEs are currently unpatched, this history raises concerns about the overall robustness of the plugin's security.
Key Concerns
- Multiple AJAX handlers without auth checks
- Vulnerability history with high severity CVE
- Flows with unsanitized paths (though low severity)
- Bundled library (Guzzle) without version check
Alex Reservations: Smart Restaurant Booking Security Vulnerabilities
CVEs by Year
Severity Breakdown
2 total CVEs
Alex Reservations: Smart Restaurant Booking <= 2.2.3 - Authenticated (Admin+) Arbitrary File Upload
Alex Reservations: Smart Restaurant Booking <= 2.0.5 - Authenticated (Contributor+) Stored Cross-Site Scripting via Shortcode
Alex Reservations: Smart Restaurant Booking Code Analysis
Bundled Libraries
SQL Query Safety
Output Escaping
Data Flow Analysis
Alex Reservations: Smart Restaurant Booking Attack Surface
AJAX Handlers 4
Shortcodes 1
WordPress Hooks 33
Maintenance & Trust
Alex Reservations: Smart Restaurant Booking Maintenance & Trust
Maintenance Signals
Community Trust
Alex Reservations: Smart Restaurant Booking Alternatives
LatePoint – Calendar Booking Plugin for Appointments and Events
latepoint
Optimize your appointment scheduling with our plugin. Sync calendars, automate reminders, and keep your bookings organized.
Booking for Appointments and Events Calendar – Amelia
ameliabooking
Amelia is a powerful booking plugin for appointments and events. Manage scheduling, calendars, and availability with an all-in-one booking system.
Appointment Booking Calendar — Simply Schedule Appointments Booking Plugin
simply-schedule-appointments
Unlimited appointments, booking calendars, and notifications. Powerful appointment booking plugin and booking system. Start scheduling for free today!
SimplyBook.me – Booking and reservations calendar
simplybook
Simply add a booking calendar to your site to schedule bookings, reservations, appointments and to collect payments.
Bookings for WooCommerce – Create Booking Calendar, Start Scheduling, Manage Bookings And Appointments
mwb-bookings-for-woocommerce
This WordPress Booking Plugin lets you manage full-day bookings, service appointments, Accept/reject bookings, show booking availability & much more.
Alex Reservations: Smart Restaurant Booking Developer Profile
1 plugin · 200 total installs
How We Detect Alex Reservations: Smart Restaurant Booking
Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.
Asset Fingerprints
/wp-content/plugins/alex-reservations/public/css/alex-reservations-public.css/wp-content/plugins/alex-reservations/public/js/alex-reservations-public.js/wp-content/plugins/alex-reservations/admin/css/alex-reservations-admin.css/wp-content/plugins/alex-reservations/admin/js/alex-reservations-admin.js/wp-content/plugins/alex-reservations/includes/framework/assets/css/backend.css/wp-content/plugins/alex-reservations/includes/framework/assets/js/backend.js/wp-content/plugins/alex-reservations/includes/framework/assets/css/frontend.css/wp-content/plugins/alex-reservations/includes/framework/assets/js/frontend.js+81 more/wp-content/plugins/alex-reservations/public/js/alex-reservations-public.js/wp-content/plugins/alex-reservations/admin/js/alex-reservations-admin.js/wp-content/plugins/alex-reservations/includes/framework/assets/js/backend.js/wp-content/plugins/alex-reservations/includes/framework/assets/js/frontend.js/wp-content/plugins/alex-reservations/includes/framework/assets/js/admin_menu.js/wp-content/plugins/alex-reservations/includes/framework/assets/js/menu.js+75 morealex-reservations/public/css/alex-reservations-public.css?ver=alex-reservations/public/js/alex-reservations-public.js?ver=alex-reservations/admin/css/alex-reservations-admin.css?ver=alex-reservations/admin/js/alex-reservations-admin.js?ver=alex-reservations/includes/framework/assets/css/backend.css?ver=alex-reservations/includes/framework/assets/js/backend.js?ver=alex-reservations/includes/framework/assets/css/frontend.css?ver=alex-reservations/includes/framework/assets/js/frontend.js?ver=alex-reservations/includes/framework/assets/js/admin_menu.js?ver=alex-reservations/includes/framework/assets/js/menu.js?ver=alex-reservations/includes/framework/assets/js/dashboard.js?ver=alex-reservations/includes/framework/assets/js/user.js?ver=alex-reservations/includes/framework/assets/js/media-upload.js?ver=alex-reservations/includes/framework/assets/js/admin_ajax.js?ver=alex-reservations/includes/framework/assets/js/chart.min.js?ver=alex-reservations/includes/framework/assets/js/moment.min.js?ver=alex-reservations/includes/framework/assets/js/daterangepicker.min.js?ver=alex-reservations/includes/framework/assets/js/fullcalendar.min.js?ver=alex-reservations/includes/framework/assets/js/select2.min.js?ver=alex-reservations/includes/framework/assets/js/select2_locale_en.js?ver=alex-reservations/includes/framework/assets/js/bootstrap-datepicker.min.js?ver=alex-reservations/includes/framework/assets/js/bootstrap-timepicker.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.validate.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.validate.methods.min.js?ver=alex-reservations/includes/framework/assets/js/bootstrap-notify.min.js?ver=alex-reservations/includes/framework/assets/js/pace.min.js?ver=alex-reservations/includes/framework/assets/js/sweetalert.min.js?ver=alex-reservations/includes/framework/assets/js/magnific-popup.min.js?ver=alex-reservations/includes/framework/assets/js/datatables.min.js?ver=alex-reservations/includes/framework/assets/js/dataTables.buttons.min.js?ver=alex-reservations/includes/framework/assets/js/buttons.html5.min.js?ver=alex-reservations/includes/framework/assets/js/buttons.print.min.js?ver=alex-reservations/includes/framework/assets/js/summernote.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.sortable.min.js?ver=alex-reservations/includes/framework/assets/js/prism.min.js?ver=alex-reservations/includes/framework/assets/js/app.js?ver=alex-reservations/includes/framework/assets/js/form-wizard.js?ver=alex-reservations/includes/framework/assets/js/custom.js?ver=alex-reservations/includes/framework/assets/js/jquery.nestable.js?ver=alex-reservations/includes/framework/assets/js/dragula.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.sparkline.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.counterup.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.easing.min.js?ver=alex-reservations/includes/framework/assets/js/waypoints.min.js?ver=alex-reservations/includes/framework/assets/js/echarts.min.js?ver=alex-reservations/includes/framework/assets/js/echarts.init.js?ver=alex-reservations/includes/framework/assets/js/jquery.flot.tooltip.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.flot.js?ver=alex-reservations/includes/framework/assets/js/jquery.flot.resize.js?ver=alex-reservations/includes/framework/assets/js/jquery.flot.categories.js?ver=alex-reservations/includes/framework/assets/js/chartist.min.js?ver=alex-reservations/includes/framework/assets/js/chartist.init.js?ver=alex-reservations/includes/framework/assets/js/raphael.min.js?ver=alex-reservations/includes/framework/assets/js/morris.min.js?ver=alex-reservations/includes/framework/assets/js/morris.init.js?ver=alex-reservations/includes/framework/assets/js/peity.js?ver=alex-reservations/includes/framework/assets/js/peity.init.js?ver=alex-reservations/includes/framework/assets/js/isotope.pkgd.min.js?ver=alex-reservations/includes/framework/assets/js/jquery.magnific-popup.min.js?ver=alex-reservations/includes/framework/assets/js/isotope.init.js?ver=alex-reservations/includes/framework/assets/js/masonry.pkgd.min.js?ver=alex-reservations/includes/framework/assets/js/imagesloaded.pkgd.min.js?ver=alex-reservations/includes/framework/assets/js/parsley.min.js?ver=alex-reservations/includes/framework/assets/js/parsley.init.js?ver=alex-reservations/includes/framework/assets/js/gmaps.min.js?ver=alex-reservations/includes/framework/assets/js/gmaps.init.js?ver=alex-reservations/includes/framework/assets/js/ckeditor.js?ver=alex-reservations/includes/framework/assets/js/ckeditor.init.js?ver=alex-reservations/includes/framework/assets/js/ckeditor-classic.js?ver=alex-reservations/includes/framework/assets/js/ckeditor-classic.init.js?ver=alex-reservations/includes/framework/assets/js/jquery-repeater.js?ver=alex-reservations/includes/framework/assets/js/jquery-repeater.init.js?ver=alex-reservations/includes/framework/assets/js/jquery.bootstrap-growl.js?ver=alex-reservations/includes/framework/assets/js/admin-form.js?ver=alex-reservations/includes/framework/assets/js/chart-morris.init.js?ver=alex-reservations/includes/framework/assets/js/chart-echarts.init.js?ver=alex-reservations/includes/framework/assets/js/form-wizard.init.js?ver=alex-reservations/includes/framework/assets/js/form-elements.init.js?ver=alex-reservations/includes/framework/assets/js/form-advanced.init.js?ver=alex-reservations/includes/framework/assets/js/form-editor.init.js?ver=alex-reservations/includes/framework/assets/js/form-validation.init.js?ver=alex-reservations/includes/framework/assets/js/form-mask.init.js?ver=alex-reservations/includes/framework/assets/js/form-xeditable.init.js?ver=alex-reservations/includes/framework/assets/js/form-repeater.js?ver=alex-reservations/includes/framework/assets/js/form-repeater.init.js?ver=HTML / DOM Fingerprints
alex-reservationsalexr_booking_formalexr_restaurant_sectionalexr_restaurant_listalexr_single_restaurantalexr_booking_calendaralexr_admin_dashboardalexr_settings_page+6 more<!-- ALEX RESERVATIONS START --><!-- ALEX RESERVATIONS END --><!-- ALEXR FRAMEWORK START --><!-- ALEXR FRAMEWORK END -->data-alexr-plugin-urldata-alexr-restaurant-iddata-alexr-booking-iddata-alexr-noncealexr_paramsalexr_translationsalex_reservations_admin_paramsalex_reservations_public_paramsalexr_framework_params/wp-json/alexreservations/v1/booking/wp-json/alexreservations/v1/restaurant/wp-json/alexreservations/v1/settings/wp-json/alexreservations/v1/users[alex_reservations_booking_form][alex_reservations_restaurant_list][alex_reservations_single_restaurant][alex_reservations_dashboard]