Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify osTicket instance with API enabled
-
DeliveryEstimate key creation time and client IP
-
ExploitCompute candidate MD5 keys over the window
-
ExecutionBrute-force submit keys to API endpoint
-
PersistAuthenticate with valid key
-
ImpactAccess and manipulate ticket data via API
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Entropy requirements
|
| Exploitation Conditions | Exploitation requires the target osTicket instance to have the REST API enabled and at least one API key generated by the vulnerable 1.18.3 routine, and the attacker must be able to bound the key's creation time and know the client IP address recorded at generation - both feed directly into the MD5 input. Success is further gated by the strength of the nested md5(Misc::randCode(16)) component: if that random value is high-entropy, brute-forcing becomes infeasible despite the predictable time/IP inputs, which is the primary limiting factor. No user interaction or authentication is needed to submit guessed keys, but exploitation is meaningless on instances that expose no API keys or that firewall the API endpoint. |
| Impact | Signals conflict. The reporter's CVSS 9.8 (AV:N/AC:L/PR:N/UI:N, C/I/A:H) and the SSVC rating (automatable=yes, technical impact=total) argue for high priority, yet SSVC exploitation is 'none', there is no CISA KEV listing, no EPSS score was provided, and no working exploit code was supplied - only a disclosure write-up. A key caveat undercuts the CVSS complexity rating: the MD5 input also includes md5(Misc::randCode(16)), a nested random component; if randCode is a strong RNG this adds substantial entropy and real-world brute-forcing would be far harder than AC:L implies, pushing practical complexity toward AC:H. The genuine attack feasibility therefore hinges on (a) how weak Misc::randCode actually is and (b) the attacker's ability to bound the creation timestamp and know the originating IP - none of which is confirmed in the provided data. Treat this as a real design weakness worth patching, but the 9.8 likely overstates unconditional exploitability; verify the randCode entropy before treating it as trivially brute-forceable. |
| Exploit ScenarioDerived | An attacker who can cause or observe API key creation (or estimate when an admin generated one) notes the likely creation timestamp and the client IP used, then computes candidate MD5 keys across that timestamp window and any weakly-random component and submits them to the osTicket API until one authenticates. With a valid key the attacker interacts with the ticketing API to create or manipulate tickets and access ticket data. A public exploit is not identified, but a technical disclosure write-up documenting the weakness exists. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 03, 2026
Predictable API key generation in osTicket 1.18.3 lets remote attackers reconstruct valid staff API keys by exploiting weak MD5-based construction seeded with the request timestamp and client IP address (CWE-331). Because the key is derived from low-entropy, guessable inputs, an attacker who approximates the key creation window can brute-force the key space and gain API access without credentials. Rated CVSS 9.8 by the reporter; no public exploit is identified at time of analysis, though a technical disclosure write-up exists, and CISA SSVC lists exploitation as none but marks the flaw automatable with total technical impact.
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - apply the change in commit feccb6a3a90863fd31215ee738b39762177e658c, which replaces MD5-derived keys with Misc::randCode(48,'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789') and shrouds key display, then upgrade to the first tagged osTicket release that includes it once published. As an immediate compensating control, manually rotate/regenerate all existing API keys after patching (keys created by the old routine remain weak even after upgrade) and, if you cannot patch now, disable or delete unused API keys and restrict access to the API endpoint (api/*) by source IP/firewall so only known integration hosts can reach it - trade-off being that legitimate remote integrations from other addresses will break. Also consider serving osTicket only over trusted networks/VPN until keys are rotated. Confirm details against the VulDB advisory (https://vuldb.com/vuln/385644).
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
osTicket is an open-source PHP helpdesk/ticketing platform; the affected logic is in include/class.api.php, where the API key was computed as strtoupper(md5(time().$vars['ipaddr'].md5(Misc::randCode(16)))). CWE-331 (Insufficient Entropy) is the root cause: MD5 is fast and unsuitable for secret generation, and two of the three inputs (Unix timestamp and the client IP address) are knowable or narrowly guessable by an attacker who observes or triggers key creation. The fix commit (feccb6a3) replaces this with Misc::randCode(48, 'A-Z0-9'), a 48-character random string, and additionally shrouds displayed keys in include/staff/apikeys.inc.php. CPE data is uninformative (cpe:2.3:a:n/a:n/a:*), so affected-product scoping relies on the source references pinning the flaw to the v1.18.3 tree.
Know when N A 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:N/S:U/C:H/I:H/A:H
Network, no auth (PR:N), but brute-force needs attacker-bounded timestamp/IP plus defeating a nested random component, so AC:H; API key access impacts ticket data confidentiality/integrity, not availability.
Primary rating from Vendor (mitre).
CVSS VectorVendor: mitre
Lifecycle Timeline
2DescriptionCVE.org
osTicket 1.18.3 generates API keys using a predictable construction based on MD5 hashing. The use of MD5, combined with predictable inputs such as the current timestamp and client IP address, significantly reduces entropy. An attacker can approximate the key generation time and brute-force the key space within a feasible time window.
Executive ViewAI
osTicket 1.18.3 deployments face immediate critical risk: remote attackers can forge staff API keys without credentials, gaining unauthorized access to sensitive customer support tickets and system data. Although no public exploit identified at time of analysis, the vulnerability mechanism is well-documented and automatable, making widespread exploitation inevitable without immediate remediation. Any organization running this version faces acute risk of data breaches, customer privacy violations, and malicious manipulation of support operations.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict API access to whitelisted IP address ranges via network firewall, implement rate limiting on API authentication endpoints to prevent brute-force key derivation, disable API key-based authentication in osTicket if not operationally required, enable detailed API request logging with alerting for suspicious patterns, and consider Web Application Firewall deployment to detect and block key generation attempts.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
LibreNMS before 24.10.0 allows a remote attacker to execute arbitrary code via OS command injection involving AboutContr
Reachable assertion in Open5GS up to version 2.7.6 allows remote unauthenticated attackers to crash the Diameter CER han
A Command Injection issue in the payload build page in BYOB (Build Your Own Botnet) 2.0 allows attackers to execute arbi
Denial of service in Open5GS 2.7.6 and earlier allows network-adjacent attackers with low-privilege Diameter Gx peer acc
Denial of service in Open5GS HSS (Home Subscriber Server) versions 2.7.0 through 2.7.6 is triggered remotely by manipula
Remote command injection in Control Web Panel allows unauthenticated attackers to execute arbitrary OS commands as root
LINQPad before 5.52.01 Pro edition is vulnerable to Unsafe Deserialization in LINQPad.AutoRefManager::PopulateFromCache(
Remote code execution in dash-uploader (Python package for Plotly Dash) versions 0.1.0 through 0.7.0a2 allows unauthenti
Command injection in LiteLLM 1.18.10 lets attackers who can configure MCP (Model Context Protocol) servers supply arbitr
SQL injection in AzuraCast's backup restore flow (versions up to and including 0.23.7) lets an attacker achieve privileg
Arbitrary file read in Yu AI Code Mother v4.3 lets anonymous, remote attackers retrieve files outside the intended previ
Remote code execution in APScheduler (all versions through 3.10.x and 4.0.0a5) is achievable when applications deseriali
EUVD-2026-52402
GHSA-phjh-749w-3xjq
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB