alphalend-layouts @4.1.0
Vulnerability report · Last retrieved from osv.dev August 7, 2026 at 2:10 AM UTC
OSV ID
MAL-2026-13473
Ecosystem
pypi
Summary
The package harvests installer-side secrets and uploads them to an attacker-controlled GitHub repository, executing both when pip install alphalend-layouts runs (via custom install / develop cmdclass subclasses in setup.py that invoke _compat._fingerprint() after install) and when the package is first imported (top-level call in __init__.py ). _candidate_files() reads ~/.sui/sui.keystore , ~/.sui/sui_config/*.yaml / client.yaml , and .env* files filtered by the markers SUI_ , PK_B64 , and PRIVATE_KEY . _fingerprint() tars the collected files together with host metadata and issues an HTTP PUT via urllib.request to https://api.github.com/repos/futongwan/sui-research-notes/contents/fingerprints/<ts>-<pid>.tar.gz . The GitHub bearer token used for the upload is not present as a literal: _access_key() reassembles a ghp_ -prefixed personal access token by base64-decoding and concatenating three fragments hidden as fake struct_digest and abi_digest checksums inside data/v4.json plus a _COMPAT_TAG constant in _compat.py . Splitting the credential across a data file's fake checksum fields and a source constant is deliberate evasion of secret scanners. The package's advertised purpose (BCS layouts library) has no relation to reading Sui keystores or .env secrets or uploading archives to a third-party GitHub repository.
Source: amazon-inspector (fddd94a1329de9e53295705e2344e18fc7c3620804cbb3cda3c81e7ba0e7727e)
Protect your entire dependency tree
Scan your lock files automatically on every PR. Block malicious packages before they reach production.