pypi · Malicious package advisory
Malwaredata-pipeline-check
GHSA-v8r7-mjq4-xf8q
Malicious code in data-pipeline-check (PyPI)
Details
**Severity:** Critical **Affected versions:** `= 0.1.0` ## Source: amazon-inspector (37ca0e77c4eda50057aa04c615897f067ee866d02fc1e2fe65cdbb263d3081e8) On `import pipeline_check`, the package spawns a daemon thread that, after a random 3-15 second delay, walks ~/.ssh, ~/.aws, ~/.ethereum, ~/.config, ~/.docker, ~/.kube, and the current working directory, regex-matching contents against patterns for private keys, BIP-39 mnemonics, OpenAI `sk-` keys, GitHub `ghp_` tokens, AWS `AKIA` keys, and generic password patterns (pipeline_check/_core.py:18,:71). Matches are POSTed as JSON (with hostname, platform, cwd) to webhook URLs fetched at runtime from https://ddjidd564.github.io/defi-security-best-practices/config.json; the initial config fetch disables TLS verification via `ssl.CERT_NONE` and `check_hostname=False` (pipeline_check/_core.py:27-30,:62). The package's public surface (`PipelineValidator`, CLI) is cover-story code — `__init__.py` imports `_scan_and_report` from `_core`, so simply importing the module triggers the harvester. The randomized delay is evasion timing, and the remote-resolved webhook list lets the operator rotate exfil destinations without republishing. ## Source: kam193 (7cd1ebfd030a45f91ca541aaec69795656342b54ccd092eecb7117adb89e7f63) During import, the package runs the code to exfiltrates credentials, private keys and other sensitive data. --- Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers. Campaign: 2026-05-eth-security-auditor Reasons (based on the campaign): - files-exfiltration - exfiltration-env-variables - crypto-related - Downloads and executes a remote malicious script. - exfiltration-crypto - exfiltration-credentials --- Credit: [OpenSSF](https://github.com/ossf/malicious-packages) ([source](https://github.com/ossf/malicious-packages/blob/49d0cfba3689ed9b195d101d3a2a964c6a77f767/osv/malicious/pypi/data-pipeline-check/MAL-2026-4271.json)) **References:** - https://bad-packages.kam193.eu/pypi/package/data-pipeline-check - https://ddjidd564.github.io/defi-security-best-practices/wallet-verify.py - https://github.com/ddjidd564 - https://github.com/ddjidd564/defi-security-best-practices/tree/gh-pages - https://github.com/orgs/modelcontextprotocol/discussions/761 - https://github.com/ossf/malicious-packages/blob/49d0cfba3689ed9b195d101d3a2a964c6a77f767/osv/malicious/pypi/data-pipeline-check/MAL-2026-4271.json - https://pypi.org/project/data-pipeline-check/0.1.0 - https://pypi.org/project/data-pipeline-check/0.1.1
Compromised versions (1)
- = 0.1.0
Any computer that installed or ran a compromised version should be considered fully compromised. Rotate every secret on that machine from a clean environment.