Taguette
CVE-2025-67502
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malicious next-parameter URL on trusted Taguette host
-
DeliveryDeliver link via phishing email/message
-
ExploitVictim clicks and authenticates or accepts cookies
-
ExecutionApp issues unvalidated 302 redirect
-
PersistVictim lands on attacker-controlled phishing site
-
ImpactCredentials stolen or malware delivered
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Redirect URL validation
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that an attacker lure an authenticated or about-to-authenticate user to click a crafted link to a legitimate Taguette instance containing a malicious 'next' parameter - specifically against the /login handler (redirect after successful login or when an already-logged-in user visits the page) or the /cookies prompt handler (redirect after the user clicks Accept cookies). The affected code passes the user-controlled 'next' value directly to self.redirect() with no same-host or relative-URL validation in Taguette <= 1.5.1. Limiting factors: the attack requires victim user interaction (clicking the link and, for the login path, completing authentication or the cookie prompt), affects only unpatched instances below 1.5.2, and delivers no direct code execution or data access on the server - impact is limited to redirecting the victim's browser for phishing/malware delivery. |
| Impact | This is a genuine but moderate-priority issue, not a critical one. The CVSS 3.1 score of 6.1 (AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N) correctly reflects an open redirect (CWE-601): network-reachable, low complexity, no attacker authentication, but requiring victim user interaction and yielding only low confidentiality/integrity impact via the scope change to an external site. EPSS is low at 0.26% (17th percentile), which is consistent with open redirects rarely being mass-exploited automatically - they are human-driven phishing aids rather than self-propagating exploits. The vulnerability is NOT in CISA KEV (no confirmed active exploitation), but a detailed public PoC and the fixing commit are both available, lowering the bar for opportunistic abuse. The signals are internally consistent: a self-contained open-redirect flaw whose real risk is as a phishing/credential-theft enabler, amplified by the trusted appearance of a legitimate Taguette domain. No key signals conflict; the low EPSS and absence of KEV together indicate this is unlikely to see widespread automated exploitation, so prioritization should be driven mainly by product exposure to untrusted users rather than by urgency of active attack. |
| Exploit ScenarioDerived | An attacker crafts a link such as https://victim-taguette-instance/login?next=https://attacker.example and sends it to a Taguette user via email or chat. The victim trusts the legitimate Taguette domain, logs in (or clicks Accept cookies at /cookies?next=...), and is then transparently redirected to the attacker's lookalike site that harvests credentials or serves malware. A working PoC with three test cases (/login, /cookies, and already-logged-in redirect) is publicly documented in the GHSA advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Open redirect in Taguette 1.5.1 and earlier lets a remote attacker send an authenticated or about-to-authenticate user to an arbitrary external website by appending a crafted 'next' parameter to the legitimate instance's /login or /cookies URL, which the application passes unvalidated into its HTTP redirect. Per the supplied CVSS vector the attacker needs no privileges (PR:N) but the victim must be lured into clicking the link and completing login or accepting the cookie prompt (UI:R), and the impact is limited to browser-level redirection for phishing, credential harvesting, or malware delivery rather than server compromise. Exploit code is publicly available in the GHSA-5923-r76v-mprm advisory, no CISA KEV entry indicates active exploitation, and EPSS is low at 0.26% (17th percentile); this is a genuine but moderate-priority issue, not a critical one.
RemediationAI
Vendor-released patch: upgrade to Taguette 1.5.2 or later (for example 'pip install --upgrade taguette==1.5.2'), which applies the upstream fix in commit 67de2d2612e7e2572c61cd9627f89c2bfd0f2a36 that validates the 'next' parameter against BASE_PATH and falls back to the index route; details are in GHSA-5923-r76v-mprm. If immediate upgrading is not possible, the only effective compensating control is at the edge: configure the reverse proxy or WAF in front of Taguette to reject or strip any 'next' query value that is an absolute URL, begins with '//' (protocol-relative), or contains '://' - accepting only values beginning with a single '/' that contain no '..' segments - for the /login and /cookies endpoints, with the trade-off that over-broad filtering can break legitimate post-login deep links, so logging and testing before enforcement is advised. Because the exploit requires a victim to click a link and either complete authentication or accept the cookie prompt, user awareness around unexpected login links on the deployed domain is a secondary, weaker mitigation and not a substitute for patching. Confirm remediation by checking the running version and re-testing a payload such as /login?next=https://example.com, which on a patched instance must redirect to '/' rather than the external host.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CWE-601 (URL Redirection to Untrusted Site / 'Open Redirect') is the root-cause class here. Taguette is a Python qualitative-research web application built on the Tornado framework, and in versions 1.5.1 and below two handlers in taguette/web/views.py read the user-controlled 'next' argument via self.get_argument('next', '') and pass it verbatim to self.redirect() with no same-host or relative-path check: the login handler (after successful authentication, and immediately when an already-logged-in user opens the page) and the cookies-prompt POST handler (after the user clicks Accept cookies). Because the attacker controls only the destination string, Tornado's redirect emits a plain 302 Location header pointing anywhere, including absolute https:// URLs and protocol-relative //host paths. The upstream fix in commit 67de2d2612e7e2572c61cd9627f89c2bfd0f2a36 introduces is_next_url_safe() in taguette/web/base.py, which regex-anchors the value to the configured BASE_PATH followed by a relative path segment (rejecting absolute URLs, '..' traversal, and prefix-confusion inputs such as '/bose/project/1' against '/b.se'), plus a sanitize_next_url() wrapper that falls back to the index route; accompanying unit tests explicitly cover CVE-2025-67502 cases like https://google.com/, //google.com/, and ../something. The CVSS scope-change component (S:C) reflects that the vulnerable component (Taguette) redirects users into a different security authority (the external site), with low confidentiality and integrity impact (C:L/I:L) and no availability impact. CPE cpe:2.3:a:taguette:taguette:*:*:*:*:*:*:*:* marks all releases of the product with no version ceiling, so the deployed version must be checked directly.
Know when Taguette gets its next vulnerability
- 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
AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
Remote, low-complexity, no attacker auth (PR:N) but victim must click (UI:R); redirect to attacker domain changes scope (S:C) enabling low confidentiality/integrity impact via phishing, no availability effect.
Primary rating from NVD.
CVSS VectorNVD
DescriptionNVD
Taguette is an open source qualitative research tool. In versions 1.5.1 and below, attackers can craft malicious URLs that redirect users to arbitrary external websites after authentication. The application accepts a user-controlled next parameter and uses it directly in HTTP redirects without any validation. This can be exploited for phishing attacks where victims believe they are interacting with a trusted Taguette instance but are redirected to a malicious site designed to steal credentials or deliver malware. This issue is fixed in version 1.5.2.
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
Affected Products (CPE)NVD
Password reset link poisoning in Taguette versions prior to 1.5.0 allows unauthenticated remote attackers to redirect th
Stored cross-site scripting in Taguette versions prior to 1.5.0 lets any existing project member plant JavaScript inside
NVD
CVE.org
EPSS
GitHub
Exploit-DB