Malicious code in okite (PyPI)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (3cc7d54b0e30e24367551e3f19ab7387cf397cf9e1b5889c9f04ff871c771c38) The package installs okite-setup.pth, which Python auto-loads on every interpreter start. The.pth file contains a one-line obfuscated exec() of a string program (variables reduced to one- and two-character names like _o, _s, _u, _b, _z, _zf) that performs urllib.request.urlretrieve against https://github.com/oven-sh/bun/releases/download/bun-v1.3.13/bun-{platform}-{arch}.zip, extracts the Bun JavaScript runtime to /tmp/b/bun, chmods it 0755, and runs a sibling _index.js (with a glob fallback `*/_index.js`) via subprocess as `bun run _index.js`. Execution is gated only by a /tmp/.bun_ran sentinel so it fires once per temp directory lifetime. The stated package purpose is "A Pythonic RPC package" — there is no legitimate reason an RPC library would fetch and execute an alternate language runtime, and routing the payload through Bun deliberately bypasses Python-level inspection of the actual behavior. The combination of (a) execution at every interpreter start via.pth abuse, (b) outbound fetch of a runtime from a third-party release host, (c) use of that runtime to execute a bundled JS file, and (d) heavy obfuscation in a file format that should contain only `import` statements is an unambiguous alternate-runtime-dropper pattern. ## Source: kam193 (ec7e17ca2529781ce61d69b2d7e765c5e3e790d3ae2e2f187b006d710d7f9ed1) Versions 0.0.7, 0.0.8 were compromised. Compromised packages start an obfuscated infostealer. The infostealer is a heavily obfuscated JavaScript code executed using Bun runtime on Python startup. It collectes all kinds of sensitive data, including API keys, credentials to package repositories, cryptocurrency assets, password manager data. Infostealer actively queries online services to collect additional secrets as well as attempts to gain persistence and spread further by publishing infected packages using collected credentials. Data are exfiltrated likely using Github. The code seems to threaten to wipe the user's data if it detects invalid GitHub tokens. Cleanup should be done with caution. It seems to be related to the recent Mini Shai Hulud campaign. --- Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-06-compr-woodpecker Reasons (based on the campaign): - compromised-package - exfiltration-env-variables - exfiltration-cloud-tokens - exfiltration-credentials - abuses-pth - obfuscation - infostealer - The package contains code to detect if it is running in a sandbox environment. - exfiltration-crypto - files-exfiltration - destructive-actions
AI Analysis
Technical Summary
The compromised okite PyPI package versions 0.0.7 and 0.0.8 install a .pth file that auto-executes obfuscated code on Python startup. This code downloads the Bun JavaScript runtime from a third-party GitHub release, extracts it, and runs a bundled obfuscated JavaScript infostealer. The infostealer collects a wide range of sensitive information including environment variables, cloud tokens, package repository credentials, cryptocurrency assets, and password manager data. It also queries online services for additional secrets and attempts to maintain persistence and propagate by publishing infected packages using stolen credentials. The malware includes destructive capabilities triggered by invalid GitHub tokens. The use of Bun runtime bypasses Python-level inspection, and the obfuscation and .pth abuse confirm a malicious alternate-runtime-dropper pattern. This campaign is linked to the Mini Shai Hulud campaign and is categorized as a malicious package attack.
Potential Impact
The malicious code compromises user security by stealing sensitive credentials, API keys, cryptocurrency assets, and password manager data. It enables attackers to gain persistence on infected systems and spread by publishing further infected packages. Data exfiltration is likely conducted via GitHub, increasing the risk of widespread credential leakage and further compromise. The destructive payload threatens data loss if invalid tokens are detected, raising the risk of data destruction alongside data theft.
Mitigation Recommendations
No official patch or remediation is currently available. Users should immediately uninstall versions 0.0.7 and 0.0.8 of the okite package and avoid installing these versions. Due to the destructive potential of the malware, cleanup should be performed with caution, preferably by restoring affected environments from known good backups. Monitor for suspicious activity related to package publishing and credential usage. Check vendor advisories or PyPI security notices for updates or official remediation guidance.
Malicious code in okite (PyPI)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (3cc7d54b0e30e24367551e3f19ab7387cf397cf9e1b5889c9f04ff871c771c38) The package installs okite-setup.pth, which Python auto-loads on every interpreter start. The.pth file contains a one-line obfuscated exec() of a string program (variables reduced to one- and two-character names like _o, _s, _u, _b, _z, _zf) that performs urllib.request.urlretrieve against https://github.com/oven-sh/bun/releases/download/bun-v1.3.13/bun-{platform}-{arch}.zip, extracts the Bun JavaScript runtime to /tmp/b/bun, chmods it 0755, and runs a sibling _index.js (with a glob fallback `*/_index.js`) via subprocess as `bun run _index.js`. Execution is gated only by a /tmp/.bun_ran sentinel so it fires once per temp directory lifetime. The stated package purpose is "A Pythonic RPC package" — there is no legitimate reason an RPC library would fetch and execute an alternate language runtime, and routing the payload through Bun deliberately bypasses Python-level inspection of the actual behavior. The combination of (a) execution at every interpreter start via.pth abuse, (b) outbound fetch of a runtime from a third-party release host, (c) use of that runtime to execute a bundled JS file, and (d) heavy obfuscation in a file format that should contain only `import` statements is an unambiguous alternate-runtime-dropper pattern. ## Source: kam193 (ec7e17ca2529781ce61d69b2d7e765c5e3e790d3ae2e2f187b006d710d7f9ed1) Versions 0.0.7, 0.0.8 were compromised. Compromised packages start an obfuscated infostealer. The infostealer is a heavily obfuscated JavaScript code executed using Bun runtime on Python startup. It collectes all kinds of sensitive data, including API keys, credentials to package repositories, cryptocurrency assets, password manager data. Infostealer actively queries online services to collect additional secrets as well as attempts to gain persistence and spread further by publishing infected packages using collected credentials. Data are exfiltrated likely using Github. The code seems to threaten to wipe the user's data if it detects invalid GitHub tokens. Cleanup should be done with caution. It seems to be related to the recent Mini Shai Hulud campaign. --- Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-06-compr-woodpecker Reasons (based on the campaign): - compromised-package - exfiltration-env-variables - exfiltration-cloud-tokens - exfiltration-credentials - abuses-pth - obfuscation - infostealer - The package contains code to detect if it is running in a sandbox environment. - exfiltration-crypto - files-exfiltration - destructive-actions
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The compromised okite PyPI package versions 0.0.7 and 0.0.8 install a .pth file that auto-executes obfuscated code on Python startup. This code downloads the Bun JavaScript runtime from a third-party GitHub release, extracts it, and runs a bundled obfuscated JavaScript infostealer. The infostealer collects a wide range of sensitive information including environment variables, cloud tokens, package repository credentials, cryptocurrency assets, and password manager data. It also queries online services for additional secrets and attempts to maintain persistence and propagate by publishing infected packages using stolen credentials. The malware includes destructive capabilities triggered by invalid GitHub tokens. The use of Bun runtime bypasses Python-level inspection, and the obfuscation and .pth abuse confirm a malicious alternate-runtime-dropper pattern. This campaign is linked to the Mini Shai Hulud campaign and is categorized as a malicious package attack.
Potential Impact
The malicious code compromises user security by stealing sensitive credentials, API keys, cryptocurrency assets, and password manager data. It enables attackers to gain persistence on infected systems and spread by publishing further infected packages. Data exfiltration is likely conducted via GitHub, increasing the risk of widespread credential leakage and further compromise. The destructive payload threatens data loss if invalid tokens are detected, raising the risk of data destruction alongside data theft.
Mitigation Recommendations
No official patch or remediation is currently available. Users should immediately uninstall versions 0.0.7 and 0.0.8 of the okite package and avoid installing these versions. Due to the destructive potential of the malware, cleanup should be performed with caution, preferably by restoring affected environments from known good backups. Monitor for suspicious activity related to package publishing and credential usage. Check vendor advisories or PyPI security notices for updates or official remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-5283
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["PyPI"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a50ba4568715ace4357e5b9
Added to database: 07/10/2026, 09:24:21 UTC
Last enriched: 07/10/2026, 09:36:18 UTC
Last updated: 07/27/2026, 13:09:26 UTC
Views: 26
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.