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.

vinted-mocked-apis — SECURITY RESEARCH PoC (DO NOT INSTALL)

This is a coordinated-disclosure proof-of-concept for a dependency-confusion finding. It is not a real package and should not be installed by anyone.

If you reached this page unexpectedly, you can ignore and delete it. It performs no harmful action — see Exactly what it does below.

Researcher contact: <fill in your handle / report reference>


The finding (for the program owner)

Dependency confusion occurs when a build pipeline is configured to resolve packages from the public index in addition to (or ahead of) a private/ internal index. If an internal package named vinted-mocked-apis exists and the same name is unclaimed on the public index, a public package published under that name — with a higher version — can be pulled and executed in the internal build/runtime environment instead of the intended private one.

This PoC demonstrates code execution in your environment, which is the core impact. It does not attempt to steal anything.

Exactly what it does

On pip install (via setup.py install hooks) and on import, it fires a single best-effort, fail-silent callback to a researcher-controlled collaborator host carrying only:

  • a pre-registered nonce (cited in the report, so the hit is attributable),
  • the machine hostname (so you can confirm which host executed it),
  • the literal label SECURITY-POC-DO-NOT-INSTALL.

That is the entire payload.

What it deliberately does NOT do

  • No environment variables, secrets, tokens, or credentials are read or sent.
  • No filesystem access, no directory listing, no source-code exfiltration.
  • No persistence, no shell, no process spawning, no host modification.
  • No network destination other than the researcher's collaborator host.
  • A failed callback never breaks the install or the importing process.

Reproducing the proof

  1. Set COLLABORATOR_HOST and POC_NONCE in src/vinted_mocked_apis/beacon.py to your own interactsh/Collaborator values.
  2. Build: python -m build
  3. In a disposable environment that mirrors the affected resolver config, pip install vinted-mocked-apis.
  4. Observe the DNS/HTTP interaction arriving at your collaborator, tagged with the nonce and hostname.

The arrival of that single tagged callback is the proof of execution.

Validity preconditions (confirm before reporting)

  • vinted-mocked-apis (or whatever the exact internal name is) is actually referenced privately by the target.
  • The name is unclaimed on the public index (publishing a name they don't use is squatting, not a valid finding).
  • The target's resolver config actually allows public fallback for that name.

Metadata

Release files for vinted-mocked-apis 99.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 vinted-mocked-apis 99.0.0
File Size Uploaded
vinted_mocked_apis-99.0.0.tar.gz 4.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vinted-mocked-apis 99.0.0
File Interpreter ABI Platform
vinted_mocked_apis-99.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 9.0 kB

Release files / vinted_mocked_apis-99.0.0.tar.gz

Download URL vinted_mocked_apis-99.0.0.tar.gz
Size 4.5 kB
Tags Source
SHA-256 checksum
How to use checksums
53fbd74c97de1bb39f3c2ffb6f82e7b7071da664fea38cb6ae296c7198c807b9
BLAKE2b-256 checksum
How to use checksums
69e9cec38a85de03f88ab5f86d2cadfeb531d50265b6f6767b358141bb0dbef2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / vinted_mocked_apis-99.0.0-py3-none-any.whl

Download URL vinted_mocked_apis-99.0.0-py3-none-any.whl
Size 4.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b6f301372137e27ec2a98f3f1bdeede3bffb962b06e8ba242fafb7e6bf097702
BLAKE2b-256 checksum
How to use checksums
847fef1fb73c4189cb7c1ae598fe76ab2b4d129705f86a4cc47536f5afcd3154
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

99.0.0 This release

2 release files

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