Attackers Exploit CVE-2026-42016, CVE-2026-42018, and CVE-2026-82329 in Artifactory
Detection stack
- AIDR
- Alert
- ETL
- Query
Summary
Threat actors are actively exploiting three vulnerabilities in JFrog Artifactory to bypass authentication and escalate privileges. By chaining the flaws, attackers can obtain administrative tokens, create persistent accounts, and deploy malicious Groovy plugins or Rust-based backdoors. Successful exploitation can provide complete administrative control over Artifactory instances and the artifacts stored or managed within them.
Investigation
Wiz Research identified exploitation patterns involving distinctive HTTP request sequences, including unauthenticated POST requests sent to token-related endpoints. Researchers also observed custom Rust backdoors and specific naming conventions used for malicious accounts. The investigation mapped how attackers progress from unauthenticated access to full administrative control by chaining multiple vulnerabilities.
Mitigation
Organizations should prioritize upgrading JFrog Artifactory to vendor-specified fixed versions. Network access should be restricted to trusted users and systems, particularly for internet-facing Artifactory instances. Security teams should also review authentication logs, administrative activity, and configuration changes for signs of unauthorized access.
Response
If exploitation is detected, security teams should investigate suspicious account creation and unauthorized plugin deployment. Compromised Artifactory instances should be isolated, and all administrative actions performed during the suspected exploitation window should be audited. Immediate patching of the affected CVEs is essential to prevent continued or repeated access.
Attack Flow
We are still updating this part.
Detections
Possible JFrog Artifactory Account Creation For Persistence (via webserver)
Possible JFrog Artifactory Command Execution via Plugin Endpoint (via webserver)
Possible JFrog Artifactory Configuration Discovery Attempt (via webserver)
Possible CVE-2026-82329 (JFrog Artifactory Authentication Bypass) Exploitation Attempt (via webserver)
IOCs (HashSha1) to detect: Artifactory Under Attack: In-the-Wild Exploitation of CVE-2026-42016, CVE-2026-42018 & CVE-2026-82329
IOCs (SourceIP) to detect: Artifactory Under Attack: In-the-Wild Exploitation of CVE-2026-42016, CVE-2026-42018 & CVE-2026-82329
IOCs (DestinationIP) to detect: Artifactory Under Attack: In-the-Wild Exploitation of CVE-2026-42016, CVE-2026-42018 & CVE-2026-82329
Detect In-the-Wild Exploitation of CVE-2026-42018, CVE-2026-42016 & CVE-2026-82329 in JFrog Artifactory [Azure Activity Logs]
Simulation Execution
Prerequisite: The Telemetry & Baseline Pre-flight Check must have passed.
Rationale: This section details the precise execution of the adversary technique (TTP) designed to trigger the detection rule. The commands and narrative MUST directly reflect the TTPs identified and aim to generate the exact telemetry expected by the detection logic. Abstract or unrelated examples will lead to misdiagnosis.
-
Attack Narrative & Commands: An adversary identifies an exposed JFrog Artifactory instance. To gain administrative control and potentially move laterally into the cloud environment, they attempt to exploit CVE-2026-42018 and CVE-2026-82329. The attacker specifically targets the
/access/api/v1/tokensand/access/api/v1/registry/joinendpoints using POST requests to bypass authentication and generate highly privileged tokens. -
Regression Test Script:
#!/bin/bash # Simulation script to trigger the JFrog Artifactory vulnerability detection rule. # Target URL represents the Artifactory endpoint. TARGET_URL="https://artifactory.example.com" echo "[+] Starting Simulation: Exploitation of CVE-2026-42018/82329" # Scenario 1: Attempt to exploit via the tokens endpoint (Selection 2) echo "[*] Executing Selection 2: POST to /access/api/v1/tokens" curl -X POST "$TARGET_URL/access/api/v1/tokens" -d '{"exploit": "true"}' -s -o /dev/null # Scenario 2: Attempt to exploit via the registry join endpoint (Selection 3) echo "[*] Executing Selection 3: POST to /access/api/v1/registry/join" curl -X POST "$TARGET_URL/access/api/v1/registry/join" -d '{"exploit": "true"}' -s -o /dev/null echo "[+] Simulation complete. Check SIEM for alerts." -
Cleanup Commands:
# No persistent changes are made to the system by the curl commands. # If any temporary files were created by the script, remove them: rm -f simulation_log.txt