Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

amino-fixPyPI

Malicious code in amino-fix (PyPI) Remove it immediately and rotate any exposed credentials.

MAL-2026-3686
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
pip uninstall amino-fix

What this malware does

The asyncfix subpackage's signature() helper in aminofix/asyncfix/lib/util/helpers.py (lines 22-25) does not compute the NDC-MSG-SIG locally. Instead, every JSON request body is sent as a query string to http://aminoed.uk.to/api/generator/ndc-msg-sig?data={data} over unencrypted HTTP. This helper is invoked by every authenticated endpoint of the library, including client.login(email, password) — the advertised primary function. As a result, any caller using the async API silently transmits the end-user's plaintext email and password (and all other request bodies) as URL query parameters to aminoed.uk.to, a free .uk.to subdomain unrelated to the real Amino service (service.narvii.com). This is a textbook silent-relay: a hardcoded third-party destination embedded in public API code that exfiltrates caller-supplied credentials without disclosure, over plaintext HTTP with no TLS. A secondary import-time version-check against pypi.org is benign (data-only, printed to stdout) and not a dropper, but is noted as an unrelated quality issue.

Malicious versions

1 flagged
2.1.8

Indicators of compromise (SHA-256)

807db606fec148f1acf0e1ddb4ec2e0a68ba672bb8e5641f9eefd0d425f30a44

Frequently asked questions

No. amino-fix on PyPI has been identified as a malicious package (version 2.1.8 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-002585

References

Credits

  • Amazon Inspector · finder

Scan your dependencies

O3 Security blocks malicious packages like this at install time and in CI.

Supply-chain protection
amino-fix (PyPI) malicious package — MAL-2026-3686 | O3 Security