Automated package-squatting & slopsquatting detection signals across PyPI and npm — these are automated, unconfirmed signals. Use them to find candidates to investigate, but don't automatically assume they're malicious.

Sorted by risk score. Cleared packages hidden by default — add verdict:benign_community to include. Packages the registry has since removed are hidden too — see them on the Taken Down tab or add state:taken_down. Very risky packages require manual human audit. • Tag & Signal Legend →

Search & filter syntax reference
Filter with verdict: (malicious, suspicious, unverified_high_signal, squatted_stub…), ecosystem: (pypi/npm), hook: (install, network, pth, gyp, worm, c2, creds, binary, env, stealer, any — malicious hooks & behaviors), email:, domain:, keyword:, version: (comma = OR within a field, space = AND across fields), age:<6h / age:>90d (combine both for a range), state:live / state:taken_down (registry liveness — the feed defaults to state:live), lead:>7d (days we had a since-removed package flagged while it was still up), or a bare word for a package-name search.
Package Score ▼ Age Users Lines Growth Verdict Targeted Ecosystem Version Author Email domain Signals
15 1972d — — —
Possible Squatted Stub
— npm latest — —
Static code signals:
  • MISSING_SOURCE_REPOSITORY_URL

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
15 2147d — — —
Possible Squatted Stub
— npm latest — —
Package purpose: This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.0.6.
Static code signals:
  • MISSING_SOURCE_REPOSITORY_URL

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
15 2224d — — —
Possible Squatted Stub
— npm latest Guillaume Felley —
Static code signals:
  • MISSING_SOURCE_REPOSITORY_URL

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
15 2697d — — —
Possible Squatted Stub
— npm latest — —
Package purpose: Actions on Google channel for stentor
Static code signals:
  • MISSING_SOURCE_REPOSITORY_URL

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
15 3321d — — —
Possible Squatted Stub
— npm latest Progress —
Package purpose: Ripple Package for Angular
Static code signals:
  • MISSING_SOURCE_REPOSITORY_URL

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 14h — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 14h — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 16h — — —
Possible Squatted Stub
— pypi 0.0.0 Taylor (gh0stfqce) —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 16h — — —
Possible Squatted Stub
— pypi 0.0.0 Taylor (gh0stfqce) —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 16h — — —
Possible Squatted Stub
— pypi 0.0.0 Taylor (gh0stfqce) —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 16h — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 16h — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 38h — — —
Possible Squatted Stub
— npm latest John Carroll —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 38h — — —
Possible Squatted Stub
— npm latest John Carroll —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 38h — — —
Possible Squatted Stub
— npm latest John Carroll —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 52h — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 55h — — —
Very Risky
— pypi 0.3.0 Naveenraj Kamalakannan — 🪝
Package purpose: Give an open LLM a fast, calibrated decision path and serve it natively with vLLM.
Static code signals:
  • SOURCE_CODE_NETWORK_CALL: 'fetch/axios/XMLHttpRequest' found in plumbify-0.3.0/plumbify/artifact.py:69
  • SOURCE_CODE_NETWORK_CALL: 'fetch/axios/XMLHttpRequest' found in plumbify-0.3.0/plumbify/core/suffix_lora.py:111
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'eval()' found in plumbify-0.3.0/plumbify/serving/vllm/model.py:71
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'eval()' found in plumbify-0.3.0/plumbify/system1.py:110
  • SOURCE_CODE_NETWORK_CALL: 'fetch/axios/XMLHttpRequest' found in plumbify-0.3.0/plumbify/system1.py:107
  • SOURCE_CODE_DYNAMIC_CODE_LOADER: execution primitive combined with decode/network/obfuscation call in plumbify-0.3.0/plumbify/system1.py
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'eval()' found in plumbify-0.3.0/plumbify/training/eval_head.py:98
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in plumbify-0.3.0/plumbify/training/train.py:24

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 62h — — —
Very Risky
— pypi 0.3.7 — — 🪝
Package purpose: Open-source AI coding agent for the terminal and browser — runs on local Ollama models (even on modest hardware) or any cloud LLM. A self-hostable alternative to Claude Code and opencode.
Static code signals:
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in hexiel-0.3.7/hexiel/config.py:10
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'Python Subprocess / OS Execution' found in hexiel-0.3.7/hexiel/contribute.py:44
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in hexiel-0.3.7/hexiel/doctor.py:80
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'Python Subprocess / OS Execution' found in hexiel-0.3.7/hexiel/gitlab.py:41
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in hexiel-0.3.7/hexiel/gitlab.py:47
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'Python Subprocess / OS Execution' found in hexiel-0.3.7/hexiel/hooks.py:104
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'Python Subprocess / OS Execution' found in hexiel-0.3.7/hexiel/jobs.py:157
  • SYSTEM_PERSISTENCE_TAMPERING: 'Systemd / macOS LaunchAgent Persistence' found in hexiel-0.3.7/hexiel/jobs.py:220

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 65h — — —
Very Risky
— pypi 66.0.3 Yandex — 🪝
Package purpose: A package to prevent Dependency Confusion attacks against Yandex.
Static code signals:
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in yandex-ycs-api-sdk-66.0.3/setup.py:5
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in yandex-ycs-api-sdk-66.0.3/setup.py:5

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 65h — — —
Very Risky
— pypi 66.0.3 Yandex — 🪝
Package purpose: A package to prevent Dependency Confusion attacks against Yandex.
Static code signals:
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in yandex-ydt-core-66.0.3/setup.py:5
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in yandex-ydt-core-66.0.3/setup.py:5

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 3d — — —
Possible Squatted Stub
— pypi 0.0.1 volc-engine —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 3d — — —
Possible Squatted Stub
— pypi 0.0.1 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Very Risky
— pypi 0.0.7 Karellen, Inc. — 🪝
Package purpose: MCP Server for QuickBooks Online
Static code signals:
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in karellen_qbo_mcp-0.0.7/karellen_qbo_mcp/cli.py:170
  • SOURCE_CODE_ENV_VARS_ACCESS: 'Environment Variable Access (process.env / os.environ)' found in karellen_qbo_mcp-0.0.7/karellen_qbo_mcp/config.py:112
  • SOURCE_CODE_DYNAMIC_EXECUTION: 'Python Subprocess / OS Execution' found in karellen_qbo_mcp-0.0.7/karellen_qbo_mcp/login.py:53
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in karellen_qbo_mcp-0.0.7/setup.py:17
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in karellen_qbo_mcp-0.0.7/setup.py:79

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.0.1 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.1.0 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.1.0 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.0.0b1 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.0.0 Praneeth Vadlapati —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.0.0 Praneeth Vadlapati —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 4d — — —
Possible Squatted Stub
— pypi 0.1.5 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Very Risky
— pypi 66.0.3 Yandex — 🪝
Package purpose: A package to prevent Dependency Confusion attacks against Yandex.
Static code signals:
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in yandex-flake8-project-organization-66.0.3/setup.py:5
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in yandex-flake8-project-organization-66.0.3/setup.py:5

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Very Risky
— pypi 66.0.3 Yandex — 🪝
Package purpose: A package to prevent Dependency Confusion attacks against Yandex.
Static code signals:
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in yandex-alembic-checker-66.0.3/setup.py:5
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in yandex-alembic-checker-66.0.3/setup.py:5

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Possible Squatted Stub
— pypi 0.0.1 volc-engine —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Possible Squatted Stub
— pypi 0.0.0 Praneeth Vadlapati —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Possible Squatted Stub
— pypi 0.0.0 Praneeth Vadlapati —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 5d — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 5d — — —
Possible Squatted Stub
— pypi 0.1.0 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.0.0 Cheffelo —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.0 Rawson Consulting B.V. —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.0 Rawson Consulting B.V. —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.0 Rawson Consulting B.V. —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.0 Rawson Consulting B.V. —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.9 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 6d — — —
Possible Squatted Stub
— pypi 0.1.9 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 8d — — —
Possible Squatted Stub
— npm latest Robert King —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 8d — — —
Possible Squatted Stub
— npm latest — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on npm →
0 8d — — —
Very Risky
— pypi 66.0.3 Yandex — 🪝
Package purpose: A package to prevent Dependency Confusion attacks against Yandex.
Static code signals:
  • INSTALL_TIME_EXECUTION: 'Python setup.py Custom Install Hook' found in yandex-crowd-test-lint-66.0.3/setup.py:5
  • SUPPLY_CHAIN_EXECUTION_HOOK: 'PyPI Custom Install Class Override' found in yandex-crowd-test-lint-66.0.3/setup.py:5

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →
0 8d — — —
Possible Squatted Stub
— pypi 0.2.1 — —

No additional detail available for this finding.

Signals reflect what our detector observed, not a confirmed determination of wrongdoing.

View package on PyPI →

LINK COPIED TO CLIPBOARD