Malicious code in joule-btp-extension (PyPI)
The 'joule-btp-extension' PyPI package versions 0.1.0, 0.1.1, 0.1.3, 0.1.4, and 0.1.6 contain malicious code that executes during installation. The setup.py script collects sensitive system files and environment variables, reads user files, and exfiltrates this data to a hardcoded attacker URL. It also creates a marker file in the virtual environment's bin directory for persistence and includes code to establish a reverse shell, enabling remote command execution. The package is identified as a proof-of-concept supply-chain attack targeting SAP Joule Desktop on macOS but was publicly uploaded, posing a risk to users who install it.
AI Analysis
Technical Summary
The 'joule-btp-extension' package on PyPI contains malicious code executed during installation via setup.py. This code reads sensitive files such as /private/etc/passwd, /private/etc/hosts, and /private/etc/sudoers, collects environment variables, and recursively reads files in the installer's home and current directories. The harvested data is serialized to JSON and sent via HTTP POST to a hardcoded attacker-controlled URL, with traffic disguised using a pip User-Agent header. Additionally, the package writes a marker file in the virtual environment's bin directory to demonstrate write access and persistence capability. It also includes code to start a reverse shell on a localhost service, allowing remote command execution. The package's own documentation states it is a proof-of-concept sandbox escape and supply-chain attack targeting SAP Joule Desktop on macOS. The OpenSSF Package Analysis project flagged version 0.1.6 as malicious due to communication with a domain associated with malicious activity. The affected versions explicitly include 0.1.0, 0.1.1, 0.1.3, 0.1.4, and 0.1.6.
Potential Impact
Installation of any affected version of the 'joule-btp-extension' package results in unauthorized collection and exfiltration of sensitive system files and environment data. The attacker gains visibility into the victim's system environment and files, potentially exposing user identities and system configurations. The creation of a marker file in the virtual environment's bin directory indicates persistence capability. The reverse shell functionality allows an attacker to execute arbitrary commands remotely on the victim's machine, representing a critical compromise of system integrity and confidentiality.
Mitigation Recommendations
No official patch or remediation is currently documented. Users should avoid installing the 'joule-btp-extension' package, especially the identified affected versions. Since this is a malicious package uploaded to PyPI, users should verify package authenticity before installation and rely on trusted sources. Removal of the package and any marker files created should be performed if installation occurred. Monitor for any unauthorized network connections or reverse shell activity. Patch status is not yet confirmed — check the vendor advisory or PyPI security notices for current remediation guidance.
Malicious code in joule-btp-extension (PyPI)
Description
The 'joule-btp-extension' PyPI package versions 0.1.0, 0.1.1, 0.1.3, 0.1.4, and 0.1.6 contain malicious code that executes during installation. The setup.py script collects sensitive system files and environment variables, reads user files, and exfiltrates this data to a hardcoded attacker URL. It also creates a marker file in the virtual environment's bin directory for persistence and includes code to establish a reverse shell, enabling remote command execution. The package is identified as a proof-of-concept supply-chain attack targeting SAP Joule Desktop on macOS but was publicly uploaded, posing a risk to users who install it.
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 'joule-btp-extension' package on PyPI contains malicious code executed during installation via setup.py. This code reads sensitive files such as /private/etc/passwd, /private/etc/hosts, and /private/etc/sudoers, collects environment variables, and recursively reads files in the installer's home and current directories. The harvested data is serialized to JSON and sent via HTTP POST to a hardcoded attacker-controlled URL, with traffic disguised using a pip User-Agent header. Additionally, the package writes a marker file in the virtual environment's bin directory to demonstrate write access and persistence capability. It also includes code to start a reverse shell on a localhost service, allowing remote command execution. The package's own documentation states it is a proof-of-concept sandbox escape and supply-chain attack targeting SAP Joule Desktop on macOS. The OpenSSF Package Analysis project flagged version 0.1.6 as malicious due to communication with a domain associated with malicious activity. The affected versions explicitly include 0.1.0, 0.1.1, 0.1.3, 0.1.4, and 0.1.6.
Potential Impact
Installation of any affected version of the 'joule-btp-extension' package results in unauthorized collection and exfiltration of sensitive system files and environment data. The attacker gains visibility into the victim's system environment and files, potentially exposing user identities and system configurations. The creation of a marker file in the virtual environment's bin directory indicates persistence capability. The reverse shell functionality allows an attacker to execute arbitrary commands remotely on the victim's machine, representing a critical compromise of system integrity and confidentiality.
Mitigation Recommendations
No official patch or remediation is currently documented. Users should avoid installing the 'joule-btp-extension' package, especially the identified affected versions. Since this is a malicious package uploaded to PyPI, users should verify package authenticity before installation and rely on trusted sources. Removal of the package and any marker files created should be performed if installation occurred. Monitor for any unauthorized network connections or reverse shell activity. Patch status is not yet confirmed — check the vendor advisory or PyPI security notices for current remediation guidance.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-13732
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["PyPI"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a7b6fc7bf8831d5393e9966
Added to database: 08/11/2026, 18:53:59 UTC
Last enriched: 08/11/2026, 18:57:57 UTC
Last updated: 08/12/2026, 02:08:30 UTC
Views: 6
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.