Skip to main content
Quarantined

This project has been quarantined by PyPI admins. It cannot be installed or modified until a security review is complete.

Security Research — Dependency Confusion PoC

This package was published as a proof-of-concept for a dependency confusion vulnerability in the CrowdStrike AIDR ecosystem.

The official CrowdStrike repository CrowdStrike/aidr-strands-python instructs users to pip install strands-aidr, but the name was not registered on PyPI. This package demonstrates that an attacker could claim the name and serve arbitrary code to anyone following those instructions.

What this package does

  • Performs a single DNS lookup to a researcher-controlled domain to log that the package was installed and imported. The lookup encodes only the machine hostname and local username — no files, secrets, or sensitive data are read or transmitted.
  • Prints a visible warning on import.
  • Exports a placeholder AIGuardModel class that raises NotImplementedError.

What this package does NOT do

  • No file reads, writes, or deletions
  • No network connections beyond one DNS lookup
  • No credential or secret exfiltration
  • No persistent changes to the system
  • No post-install hooks or background processes

Contact

This research is part of an authorized bug bounty engagement.

If you received an unexpected DNS callback from this package, please contact the researcher at the HackerOne profile above.

Metadata

Release files for strands-aidr 9999.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for strands-aidr 9999.0.0
File Size Uploaded Provenance Actions
strands_aidr-9999.0.0.tar.gz 3.3 kB Without provenance Details for strands_aidr-9999.0.0.tar.gz

Release files / strands_aidr-9999.0.0.tar.gz

Download URL strands_aidr-9999.0.0.tar.gz
Size 3.3 kB
Tags Source
SHA-256 checksum
How to use checksums
607e17f59fda8bbc544109e6b193ebe9a399d31bb49aea191f8620106f30e8eb
BLAKE2b-256 checksum
How to use checksums
ed3b582145407b5fb56083be5c84070ec6cdae98d9ccdb4ed1cd929ed00092ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Security for strands-aidr 9999.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page