---
id: "MAL-2026-17188"
kind: "package"
aliases: ["MAL-2026-17188"]
title: "Malicious code in sherpy (PyPI)"
severity: "critical"
cvss: null
epss: null
exploited: false
status: "open"
category: "package"
products: [{"name": "sherpy", "fixed": [], "affected": "= 0.1.0; = 0.1.1", "ecosystem": "pypi"}]
ecosystems: ["pypi"]
tags: ["malicious", "package"]
not_affected_if: []
published_at: "2026-09-25T21:13:33+00:00"
first_seen_at: "2026-10-26T20:51:58+00:00"
updated_at: "2026-10-26T21:08:21+00:00"
sources: [{"source": "osv-malicious", "url": "https://osv.dev/vulnerability/MAL-2026-17188", "first_seen_at": "2026-10-26T20:51:58+00:00"}]
---

# Malicious code in sherpy (PyPI)

## Affected

- pypi:sherpy affected = 0.1.0; = 0.1.1 fixed ?

## Timeline

- 2026-10-26T20:51:58+00:00 osv-malicious https://osv.dev/vulnerability/MAL-2026-17188

## From the sources

---
_-= Per source details. Do not edit below this line.=-_

## Source: amazon-inspector (561bac708df60298c46df70c27282912b3955ec3fd83a23e251c268e814cdcbf)
The `sherpy` package presents itself as an OSINT command-line tool but ships all of its logic inside a 10.8 MB precompiled PyO3 native module at `sherpy/_core.abi3.so`. The Python surface is a trivial shim: `sherpy/__init__.py` is empty and `sherpy/cli.py` only forwards to three entry points in the native module — `osi()`, `send_tg_ar()`, and `send_tg_trt()`. The compiled crate manifest links `teloxide` (Telegram Bot API client), `reqwest`/`hyper` (HTTP), `dirs` (home-directory locators), `walkdir` (recursive filesystem enumeration), `zip` (archiving), and wallet-relevant cryptographic crates `aes`, `chacha20`, `bs58`, and `pbkdf2`, plus `windows-sys` for Windows host access. The `send_tg_*` naming combined with this dependency set matches a Telegram-bot exfiltration stealer: enumerate the user's home directory, collect wallet keystores and credential files, package them, and upload to an attacker-controlled Telegram bot whose token and chat ID are hardcoded inside the opaque binary. Running the advertised CLI therefore causes the installer's wallet and credential material to be exfiltrated to the author's Telegram endpoint. The behavior is hidden inside a compiled native module with no source shipped, defeating text-based source review.

## Source: kam193 (2e5440f1e24545fd14e73c7fc459a9abf893f4674683899ed29ff7c4189416b6)
When used, the package exfiltrates Chrome extension files (likely targeting cryptocurrency wallets) and sensitive Telegram files.


---

Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.


Campaign: 2026-09-sherpy


Reasons (based on the campaign):


 - infostealer


 - exfiltration-crypto


 - target:telegram


 - native-extension

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
