{"id":"MAL-2026-5160","summary":"Malicious code in bt-signal-utils (PyPI)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: kam193 (d56152c37c3a078b771d2578dd86495783b51b886c96aa7ebb66a7ec36d72a24)\nDuring import, package exfiltrates environment variables and cloud tokens to a hardcoded location.\n\n\n---\n\nCategory: MALICIOUS - The campaign has clearly malicious intent, like infostealers.\n\n\nCampaign: 2026-06-quant-backtest-helpers\n\n\nReasons (based on the campaign):\n\n\n - exfiltration-env-variables\n\n\n - exfiltration-cloud-tokens\n","modified":"2026-07-23T07:53:00.348722383Z","published":"2026-06-02T10:00:35Z","database_specific":{"iocs":{"domains":["disrupt-evasive-sterility.ngrok-free.app"],"urls":["https://disrupt-evasive-sterility.ngrok-free.app/e","https://disrupt-evasive-sterility.ngrok-free.app/c"]},"malicious-packages-origins":[{"import_time":"2026-06-02T11:33:43.449206995Z","id":"pypi/2026-06-quant-backtest-helpers/bt-signal-utils","modified_time":"2026-06-02T10:00:35.788415Z","versions":["1.0.0","1.0.1"],"source":"kam193","sha256":"d56152c37c3a078b771d2578dd86495783b51b886c96aa7ebb66a7ec36d72a24"},{"source":"reversing-labs","sha256":"914f42d7d535bbbc3513fb948666d930abf08061dbb0c51ca4f8dc70e228fd0f","import_time":"2026-07-09T09:11:38.828260807Z","id":"RLMA-2026-02095","modified_time":"2026-07-07T11:49:25Z","versions":["1.0.0"]},{"modified_time":"2026-07-20T10:12:58Z","versions":["1.0.1"],"source":"reversing-labs","sha256":"0731a160f0f53df6d3cee4265b76b98c5a4d4aea4f5e305d26ff7cbd192a2eb0","import_time":"2026-07-20T13:14:55.033907684Z","id":"RLUA-2026-05385"}]},"references":[{"type":"WEB","url":"https://bad-packages.kam193.eu/pypi/package/bt-signal-utils"}],"affected":[{"package":{"name":"bt-signal-utils","ecosystem":"PyPI","purl":"pkg:pypi/bt-signal-utils"},"versions":["1.0.0","1.0.1"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/pypi/bt-signal-utils/MAL-2026-5160.json"}}],"schema_version":"1.7.5","credits":[{"name":"Kamil Mańkowski (kam193)","contact":["https://github.com/kam193","https://bad-packages.kam193.eu/"],"type":"REPORTER"},{"name":"ReversingLabs","contact":["https://www.reversinglabs.com"],"type":"FINDER"}]}