VYPR

pypi · Malicious package advisory

Malware

timekeeper-verifier

GHSA-r9hf-2fgv-6g8f

Malicious code in timekeeper-verifier (PyPI)

Details

**Severity:** Critical

**Affected versions:** `= 1.0.1`

## Source: kam193 (3a20fe9fed2445d097ddfd628d59e1b8149913aec4915c112cacfa9fb7cdfc6e)
This campaign is built from two parts:
1) packages named like time-check-server, snapshot-photo contain an innocent-looking code that sends "date" to a remote server,
2) packages named like alicloud-client are clones of legit aliyun-python-sdk-core package, with a small change in the client.py code, where it imports the time-check-server and calls it, but instead of a date, the credentials to the cloud are exfiltrated. There are also variations with AWS clients

Apparently, the campaign started at least 2 years ago with the snapshot-photo package containing the same functionality as the newer time-check-server (see https://github.com/pypi-data/pypi-mirror-238/blob/code/packages/snapshot-photo/snapshot_photo-0.0.3-py3-none-any.whl/snapshot_photo/date_format.py).


---

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


Campaign: 2025-02-alicloud-client


Reasons (based on the campaign):


 - clones-real-package


 - action-hidden-in-lib-usage


 - The malicious code is intentionally included in a dependency of the package


 - exfiltration-cloud-tokens

---

Credit: [OpenSSF](https://github.com/ossf/malicious-packages) ([source](https://github.com/ossf/malicious-packages/blob/49d0cfba3689ed9b195d101d3a2a964c6a77f767/osv/malicious/pypi/timekeeper-verifier/MAL-2025-3475.json))

**References:**
- https://bad-packages.kam193.eu/pypi/package/timekeeper-verifier
- https://github.com/ossf/malicious-packages/blob/49d0cfba3689ed9b195d101d3a2a964c6a77f767/osv/malicious/pypi/timekeeper-verifier/MAL-2025-3475.json
- https://github.com/pypi-data/pypi-mirror-238/blob/code/packages/snapshot-photo/snapshot_photo-0.0.3-py3-none-any.whl/snapshot_photo/date_format.py
- https://thehackernews.com/2025/03/malicious-pypi-packages-stole-cloud.html
- https://x.com/ReversingLabs/status/1900198602242204003
- https://github.com/advisories/GHSA-r9hf-2fgv-6g8f

Compromised versions (1)

  • = 1.0.1

Any computer that installed or ran a compromised version should be considered fully compromised. Rotate every secret on that machine from a clean environment.