Home Cyber Security News XSS Vulnerability Found In ReDi Restaurant Reservation WordPress Plugin

XSS Vulnerability Found In ReDi Restaurant Reservation WordPress Plugin

by Abeerah Hashim
ReDi Restaurant Reservation WordPress Plugin bug

A serious security vulnerability existed in the WordPress plugin ReDi Restaurant Reservation. Specifically, researchers found an XSS vulnerability in the plugin that allowed an adversary to steal sensitive customer data.

ReDi Restaurant Reservation Plugin Vulnerability

Security researcher Bastijn Ouwendijk publicly shared the details of his findings of an XSS vulnerability in ReDi Restaurant Reservation plugin. It’s a popular WordPress plugin helping online businesses in managing reservations. Currently, the plugin boasts over 1000+ active installations.

As elaborated in his post, exploiting this bug could allow an attacker to run malicious codes to steal customers’ data. This may include customers’ reservation information without authentication.

Demonstrating the exploit, the researcher first uploaded a malicious JavaScript code to the server.

When the reservation form is submitted, a POST request is received by the website… The code shows data is not sanitized or validated before being saved to the variables… Next, the saved variables are pushed to the database. Also note here, that variables are not sanitized or validated before being pushed to the database. This means the strings we submit through the form for the variables UserName, UserPhone, UserEmail and UserComments will be saved to the database without changes.

After uploading the payload to the database, the next step requires loading it onto the webpage. For this, the researcher aimed at the Upcoming Reservation page that displays the reservations for a specific time. The researcher noticed that this webpage actually loaded from an iframe and had a separate source code. That’s where the JavaScript payload executed.

When the https://upcoming.reservationdiary.eu/Entry/[API-key]/ is loaded, and you click on ‘View upcoming reservations’ the JavaScript payload is executed twice.

Thus, an attacker may easily pilfer the plugin API key and thus, customers’ data.

The following video demonstrates the exploit.

Patch Released – Update Asap

Upon discovering the vulnerability, the researcher reached out to the developers who then worked out a patch.

The bug basically affected the plugin versions 20.0307 and earlier. Hence, the developers released the fix with ReDi Restaurant Reservations plugin version 21.0426.

Thus, all users must ensure updating their sites with the latest plugin version to avoid potential exploits.

You may also like

Latest Hacking News

Privacy Preference Center


The __cfduid cookie is used to identify individual clients behind a shared IP address and apply security settings on a per-client basis.

cookie_notice_accepted and gdpr[allowed_cookies] are used to identify the choices made from the user regarding cookie consent.

For example, if a visitor is in a coffee shop where there may be several infected machines, but the specific visitor's machine is trusted (for example, because they completed a challenge within your Challenge Passage period), the cookie allows Cloudflare to identify that client and not challenge them again. It does not correspond to any user ID in your web application, and does not store any personally identifiable information.

__cfduid, cookie_notice_accepted, gdpr[allowed_cookies]


DoubleClick by Google refers to the DoubleClick Digital Marketing platform which is a separate division within Google. This is Google’s most advanced advertising tools set, which includes five interconnected platform components.

DoubleClick Campaign Manager: the ad-serving platform, called an Ad Server, that delivers ads to your customers and measures all online advertising, even across screens and channels.

DoubleClick Bid Manager – the programmatic bidding platform for bidding on high-quality ad inventory from more than 47 ad marketplaces including Google Display Network.

DoubleClick Ad Exchange: the world’s largest ad marketplace for purchasing display, video, mobile, Search and even Facebook inventory.

DoubleClick Search: is more powerful than AdWords and used for purchasing search ads across Google, Yahoo, and Bing.

DoubleClick Creative Solutions: for designing, delivering and measuring rich media (video) ads, interactive and expandable ads.



The _ga is asssociated with Google Universal Analytics - which is a significant update to Google's more commonly used analytics service. This cookie is used to distinguish unique users by assigning a randomly generated number as a client identifier. It is included in each page request in a site and used to calculate visitor, session and campaign data for the sites analytics reports. By default it is set to expire after 2 years, although this is customisable by website owners.

The _gat global object is used to create and retrieve tracker objects, from which all other methods are invoked. Therefore the methods in this list should be run only off a tracker object created using the _gat global variable. All other methods should be called using the _gaq global object for asynchronous tracking.

_gid works as a user navigates between web pages, they can use the gtag.js tagging library to record information about the page the user has seen (for example, the page's URL) in Google Analytics. The gtag.js tagging library uses HTTP Cookies to "remember" the user's previous interactions with the web pages.

_ga, _gat, _gid