Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft XSS payload in search-alias value
-
ExploitLure authenticated admin to submit request
-
ExecutionRejected value reflected unescaped in error alert
-
ImpactJavaScript executes in admin back-office session
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated back-office (administrator) session in QloApps ≤1.7.0 and active victim interaction: the attacker cannot self-trigger the flaw but must induce a logged-in admin to submit a crafted request to AdminSearchConfController::processSave() whose alias or search value fails validation, since the rejected value is reflected unescaped into the alerts.tpl validation-error output. Exploitation is LIMITED by three factors: the vulnerable endpoint is admin-only (PR:L), the payload only fires on a validation-rejected value echoed back, and success depends on social-engineering the victim into submitting the request (UI:P). It affects the standard back-office and does not require a non-default configuration. |
| Impact | This is a moderate, not high-priority, issue. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N, score 5.1) describes a reflected XSS requiring both an authenticated back-office user (PR:L) and active user interaction (UI:P) - the victim must be lured into submitting a crafted request to AdminSearchConfController::processSave(). SSVC reinforces a measured posture: Exploitation=poc (proof-of-concept only), Automatable=no (each attack needs a targeted, socially-engineered interaction rather than mass scanning), and Technical Impact=partial. There is no CISA KEV listing and no EPSS score was provided in the input, so there is no signal of widespread or active exploitation; the exploitation status is publicly available exploit code exists (a HackMD write-up and a VulnCheck advisory are referenced), which is distinct from in-the-wild use. No signals conflict: all sources consistently point to a low-to-moderate, interaction- and privilege-gated client-side flaw. The main limiting factor is that exploitation presupposes a logged-in administrator who can be tricked, confining real-world risk to targeted phishing of back-office staff rather than broad opportunistic attack. EPSS data is missing and should be checked to confirm the low expected-exploitation probability implied by the other signals. |
| Exploit ScenarioDerived | An attacker crafts a request to the QloApps back-office search-alias configuration endpoint containing a malicious payload in the alias or search value, then phishes a logged-in administrator into submitting it (e.g., via a prepared link or auto-submitting form). Because processSave() echoes the rejected value unescaped into the validation-error alert, the script executes in the administrator's authenticated session, enabling session-context actions on their behalf. Proof-of-concept exploit code is publicly documented, but exploitation requires both an authenticated victim and their interaction. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Reflected cross-site scripting in QloApps through 1.7.0 lets an attacker execute JavaScript inside a logged-in back-office administrator's session by inducing that administrator to submit a crafted alias or search value to AdminSearchConfController::processSave() which fails validation and is echoed back unescaped into the admin error output. The vulnerable endpoint is admin-only and the victim must be socially engineered into submitting the crafted request, so this is a moderate-priority issue rather than a remotely wormable one; publicly available proof-of-concept material is referenced in the reporting, and no CISA KEV entry has been reported. Successful exploitation can expose the administrative session (cookies, CSRF tokens) and, because the assessment scores a scope change, pivot into privileged back-office functionality, with low confidentiality and integrity impact.
RemediationAI
No vendor-released patch identified at time of analysis: the reporting describes the issue as affecting QloApps "through 1.7.0", and the linked GitHub references point at the vulnerable source at tag v1.7.0 rather than at a fix commit or tagged release, so no exact fixed version can be cited; monitor github.com/Qloapps/QloApps for a patched release and the VulnCheck advisory (https://www.vulncheck.com/advisories/qloapps-through-1.7.0-reflected-xss-via-search-alias-validation-errors) for updates. Until a fix ships, apply targeted compensating controls in order of effectiveness. First, restrict reachability of the back office so the malicious request cannot be delivered: place the admin directory behind IP allowlisting, a VPN, or mutual-TLS/HTTP basic authentication at the reverse proxy; the trade-off is reduced flexibility for remote administrators. Second, deploy a WAF rule that inspects POST bodies to the AdminSearchConf controller and blocks angle brackets, event handlers, or javascript: payloads in the alias/search parameters; this stops the reflected payload before it reaches alerts.tpl but risks false positives that block legitimate alias or search-term saves, so start in detection mode. Third, harden the session layer so a successful injection is less valuable: set HttpOnly and SameSite=Strict (or Lax) on the QloApps back-office cookies to blunt credential theft, and add a Content-Security-Policy on the admin origin that forbids inline and third-party script, noting that PrestaShop-derived Smarty admin themes frequently use inline scripts and a strict CSP may break the interface unless nonces/hashes are added. Finally, treat social engineering as the delivery vector: remind back-office staff not to follow unsolicited links or submit pre-filled forms into the admin panel, and monitor admin logs for unexpected requests to AdminSearchConfController with validation errors, since exploitation requires an authenticated administrator to submit the crafted value.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
QloApps is a PHP/MySQL hotel booking and property management application derived from PrestaShop, and it follows PrestaShop's back-office architecture: privileged Admin*Controller classes in controllers/admin/ render their output through Smarty templates kept under admin/themes/default/template/. The affected code is AdminSearchConfController::processSave() (source lines 328-343 of v1.7.0), which handles persistence of search configuration such as search aliases and search terms. When a submitted alias or search value is rejected by the built-in validation, the error branch reflects the rejected user-supplied value into the standard admin validation-error markup defined in admin/themes/default/template/alerts.tpl (lines 35-43) without HTML-encoding it. That is the classic reflected variant of CWE-79 (Improper Neutralization of Input During Web Page Generation), where untrusted input reaches an HTML sink in the same request/response cycle; because the sink lives in the administrative theme, any injected script executes in the privileged back-office origin rather than in a low-privilege storefront context. Both the NVD CVSS:4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P) and our independent CVSS:3.1 assessment (AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N) agree on the essentials: network reachable, low attack complexity, low privileges required (an authenticated admin session), victim interaction required, and a scope change with limited confidentiality and integrity impact.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
Vulnerable endpoint is an authenticated admin controller (PR:L) requiring victim submission (UI:R); XSS executes in the browser context (S:C) with partial C/I and no availability impact.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
QloApps through 1.7.0 contains a reflected cross-site scripting vulnerability in AdminSearchConfController::processSave() that echoes rejected alias and search values unescaped in validation errors. Attackers can induce an authenticated back-office user to submit a crafted request, executing JavaScript in that user's administrative session.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
EUVD-2026-99009
GHSA-9r6r-wg65-vmq7
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB