CodeWhale is a DeepSeek + MiMo coding agent in terminal. From 0.3.0 to 0.8.23, the run_tests tool executes cargo test in the workspace with ApprovalRequirement::Auto, meaning it runs without any user approval prompt. cargo test compiles and executes arbitrary code: test binaries, build.rs build scripts, and proc macros. While auto-approving test execution is a deliberate design choice, it creates an inconsistency in the security boundary. However, in a malicious repository, test code can execute arbitrary shell commands, exfiltrate credentials, or establish persistence with zero approval. The attack is amplified by AGENTS.md (auto-loaded into the system prompt), which can instruct the model to run tests proactively at session start. This vulnerability is fixed in 0.8.23.
CVE-2026-45311
This critical-severity CVE scores 9.6 under NVD CVSS v3. EPSS exploit probability: 0.4%, top 70% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- High severity, but no confirmed exploitation yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 9.6
- EG Score
- 9.6(medium)
- EPSS
- 29.7%
- KEV
- Not listed
Published
May 28, 2026
Last Modified
June 1, 2026
Advisory Details (1)
Auto-updated May 28, 2026run_tests Tool Enables RCE via Malicious Repository Without Approval · Advisory · Hmbown/CodeWhale · GitHub
https://github.com/Hmbown/CodeWhale/security/advisories/GHSA-wx44-2q6h-j6p8Vendor Advisories for CVE-2026-45311(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Affected Packages
(3 across 2 ecosystems)
crates.io(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| deepseek-tui | — | 0.8.23 | — |
| deepseek-tui-cli | — | 0.8.23 | — |
npm(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| deepseek-tui | — | 0.8.23 | — |
Weakness Classification(1)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 11× in last 7d / 80× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
Showing the most recent 100 of 204 total refreshes for this CVE.
- 2026-07-16 17:03 UTCEPSS rescore
- 2026-07-16 10:15 UTCEG score recompute
- 2026-07-16 02:52 UTCEG score recompute
- 2026-07-15 16:57 UTCEPSS rescore
- 2026-07-15 02:00 UTCEPSS rescore
- 2026-07-13 22:30 UTCEPSS rescore
- 2026-07-13 06:13 UTCEPSS rescore
- 2026-07-12 05:46 UTCEPSS rescore
- 2026-07-11 23:51 UTCEG score recompute
- 2026-07-11 19:49 UTCEG score recompute
- 2026-07-11 08:27 UTCEPSS rescore
- 2026-07-09 19:10 UTCEPSS rescore
- 2026-07-08 22:47 UTCEG score recompute
- 2026-07-08 18:05 UTCEG score recompute
- 2026-07-08 15:16 UTCEPSS rescore
- 2026-07-07 13:46 UTCEPSS rescore
- 2026-07-06 16:27 UTCEPSS rescore
- 2026-07-06 02:23 UTCEPSS rescore
- 2026-07-05 02:30 UTCEPSS rescore
- 2026-07-04 06:31 UTCEPSS rescore
- 2026-07-02 23:18 UTCEG score recompute
- 2026-07-02 14:30 UTCEG score recompute
- 2026-07-02 10:27 UTCEG score recompute
- 2026-07-01 19:40 UTCEG score recompute
- 2026-07-01 15:07 UTCEPSS rescore
Show 75 moreShow fewer
- 2026-07-01 13:35 UTCEG score recompute
- 2026-07-01 09:10 UTCEG score recompute
- 2026-07-01 02:48 UTCEG score recompute
- 2026-06-30 23:22 UTCEPSS rescore
- 2026-06-30 05:48 UTCEG score recompute
- 2026-06-30 01:39 UTCEG score recompute
- 2026-06-29 19:41 UTCEG score recompute
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-29 14:06 UTCEPSS rescore
- 2026-06-29 13:39 UTCEG score recompute
- 2026-06-29 00:35 UTCEG score recompute
- 2026-06-28 20:30 UTCEG score recompute
- 2026-06-28 16:24 UTCEG score recompute
- 2026-06-28 14:07 UTCEPSS rescore
- 2026-06-28 10:44 UTCEG score recompute
- 2026-06-28 06:37 UTCEG score recompute
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-28 04:56 UTCEPSS rescore
- 2026-06-28 02:08 UTCEG score recompute
- 2026-06-27 22:06 UTCEG score recompute
- 2026-06-27 18:04 UTCEG score recompute
- 2026-06-27 13:43 UTCEG score recompute
- 2026-06-27 09:38 UTCEG score recompute
- 2026-06-27 05:36 UTCEG score recompute
- 2026-06-27 03:08 UTCEPSS rescore
- 2026-06-27 01:34 UTCEG score recompute
- 2026-06-26 20:44 UTCEG score recompute
- 2026-06-26 16:43 UTCEG score recompute
- 2026-06-26 02:05 UTCEG score recompute
- 2026-06-25 20:07 UTCEG score recompute
- 2026-06-25 16:05 UTCEG score recompute
- 2026-06-25 13:49 UTCEPSS rescore
- 2026-06-25 12:03 UTCEG score recompute
- 2026-06-25 08:01 UTCEG score recompute
- 2026-06-24 22:41 UTCEG score recompute
- 2026-06-24 16:30 UTCEG score recompute
- 2026-06-24 14:05 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-23 21:33 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-22 14:25 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 14:56 UTCEPSS rescore
- 2026-06-21 01:59 UTCEPSS rescore
- 2026-06-19 19:25 UTCEPSS rescore
- 2026-06-18 23:59 UTCEG score recompute
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 17:52 UTCEPSS rescore
- 2026-06-18 01:54 UTCEG score recompute
- 2026-06-17 21:51 UTCEG score recompute
- 2026-06-17 17:53 UTCEPSS rescore
- 2026-06-17 17:49 UTCEG score recompute
- 2026-06-17 11:51 UTCEG score recompute
- 2026-06-17 07:48 UTCEG score recompute
- 2026-06-17 03:44 UTCEG score recompute
- 2026-06-16 23:43 UTCEG score recompute
- 2026-06-16 19:40 UTCEG score recompute
- 2026-06-16 17:52 UTCEPSS rescore
- 2026-06-16 15:36 UTCEG score recompute
- 2026-06-16 09:43 UTCEG score recompute
- 2026-06-16 05:39 UTCEG score recompute
- 2026-06-16 01:37 UTCEG score recompute
- 2026-06-15 21:34 UTCEG score recompute
- 2026-06-15 17:49 UTCEPSS rescore
- 2026-06-15 16:54 UTCEG score recompute
- 2026-06-15 12:51 UTCEG score recompute
- 2026-06-15 05:00 UTCEG score recompute
- 2026-06-15 00:58 UTCEG score recompute
- 2026-06-14 20:56 UTCEG score recompute
- 2026-06-14 16:54 UTCEG score recompute
- 2026-06-14 12:53 UTCEG score recompute
- 2026-06-14 08:51 UTCEG score recompute
- 2026-06-14 04:49 UTCEG score recompute
- 2026-06-14 00:39 UTCEG score recompute
- 2026-06-13 23:00 UTCEPSS rescore
Related CVEs(same CWE)
Same CWE
10 shownCWE-94
- CVE-2006-1359NVD 0.0EG 9.0EPSS 99%NONE
- CVE-2005-1921NVD 0.0EG 9.0EPSS 100%NONE
- CVE-2005-3302EG 7.3HIGH
- CVE-2005-1876EG 4.5MEDIUM
- CVE-2003-1599EG 0.0NONE
- CVE-2006-1318EG 0.0EPSS 96%NONE
- CVE-2006-1301EG 0.0EPSS 95%NONE
- CVE-2006-1308EG 0.0EPSS 95%NONE
- CVE-2006-1309EG 0.0EPSS 95%NONE
- CVE-2006-1304EG 0.0EPSS 95%NONE
Frequently asked(5)
What is CVE-2026-45311?
When was CVE-2026-45311 disclosed?
Is CVE-2026-45311 actively exploited?
What is the CVSS score of CVE-2026-45311?
How do I remediate CVE-2026-45311?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-45311
Is Your Infrastructure Affected by CVE-2026-45311?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.