---
id: MAL-2026-13490
title: Malicious code in fast-hashes (PyPI)
summary: Malicious code in fast-hashes (PyPI)
severity: none
vendor: fast-hashes
product: fast-hashes
ecosystem: pip
affected:
  - fast-hashes
published: '2026-08-07'
updated: '2026-08-07'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/MAL-2026-13490'
references:
  - url: >-
      https://www.virustotal.com/gui/file/425f5336182e359211b5d751786d2ce1d31a673ea9c82107358a888803742649/detection
  - url: 'https://tria.ge/260807-fkycrazzg1/behavioral1'
  - url: 'https://bad-packages.kam193.eu/pypi/package/fast-hashes'
  - url: 'https://pypi.org/project/fast-hashes/0.1.0/'
tags:
  - osv
  - pip
ingestedAt: '2026-08-07T19:14:15.228Z'
---

## Overview


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

## Source: amazon-inspector (503b750458783954b66f8dea6ee8b0300fd7db5b225280f1af432cf78c1faf6d)
setup.py defines a custom install command (NativeInstall.run) that decodes a base64 blob and passes it to exec(compile(...)) at install time. The decoded payload downloads an opaque binary from https://github.com/totti2188/8gp1Q7iZD3h4VW/releases/download/v1.3A/something to /tmp/something, chmods it to 0755, and Popen-launches it detached with start_new_session=True. The fetch target's GitHub account (totti2188) is unrelated to the declared package publisher, the binary is unpinned and unverified, and the fetch-and-execute logic is concealed behind a base64 blob labeled _COMPAT_PAYLOAD with a benign-sounding '_configure_native_bindings' cover story. The package's non-install code only wraps hashlib and has no legitimate need for a native binary. Any pip install of this version triggers arbitrary code execution on the installer's host under the identity of a third-party GitHub account.

## Source: kam193 (658a96d4157086ae099c38b27ef8fb7d1664956a251f21d55a9d8cb208c0a8fc)
Package imitates name of a popula library. During installation, obfuscated code downloads a malicious executable and starts it. It then exfiltrates at least cryptocurrency wallet data, probably more.


---

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


Campaign: 2026-08-flasq


Reasons (based on the campaign):


 - typosquatting


 - The package overrides the install command in setup.py to execute malicious code during installation.


 - exfiltration-generic


 - Downloads and executes a remote executable.


 - obfuscation


 - exfiltration-crypto


## Affected packages

- `fast-hashes`

## Remediation

Refer to the advisory for the patched release.
