Informational scan, not a security audit. How this is computed.
API keys, passwords or tokens committed into the repo.
jwt Uncovered a JSON Web Token, which may lead to unauthorized access to web applications and sensitive user data.jwt Uncovered a JSON Web Token, which may lead to unauthorized access to web applications and sensitive user data.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.generic-api-key Detected a Generic API Key, potentially exposing access to various services and sensitive operations.Packages you depend on that have known security holes (CVEs).
CVE-2026-45409 python-idna: idna: Denial of Service via specially crafted long inputsCVE-2025-66416 mcp: DNS Rebinding Protection Disabled by Default in Model Context Protocol Python SDKCVE-2026-52869 MCP Python SDK: HTTP transports serve session requests without verifying the authenticated principalCVE-2026-59950 MCP Python SDK: WebSocket server transport does not support Host/Origin validationCVE-2026-28684 python-dotenv: python-dotenv: Arbitrary file overwrite via symbolic link followingCVE-2026-24486 python-multipart: Python-Multipart: Arbitrary file write via path traversal vulnerabilityCVE-2026-42561 python-multipart: python-multipart: Denial of Service via excessive multipart part headersCVE-2026-53539 python-multipart: Python-Multipart: Denial of Service via crafted form-urlencoded bodiesCVE-2026-40347 python-multipart: Python-Multipart: Denial of Service via crafted multipart/form-data requestsCVE-2025-62727 starlette: Starlette DoS via Range header mergingCVE-2026-48818 starlette: Starlette: SSRF and NTLM credential theft via UNC paths in StaticFiles on WindowsCVE-2026-54283 starlette: Starlette: request.form() limits silently ignored for application/x-www-form-urlencoded enable DoSCVE-2026-48710 starlette: Starlette: Security restriction bypass via malformed HTTP Host headerCVE-2026-48817 starlette: Starlette: Information disclosure and unintended method execution via non-standard HTTP methodsCVE-2026-26007 cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT CurvesCVE-2026-69247 cryptography is a package designed to expose cryptographic primitives ...CVE-2026-69249 python-cryptography is a package designed to expose cryptographic prim ...GHSA-537c-gmf6-5ccf Vulnerable OpenSSL included in cryptography wheelsCVE-2026-39892 cryptography: Cryptography: Buffer overflow via non-contiguous buffer in APICVE-2026-69248 cryptography is a package designed to expose cryptographic primitives ...CVE-2026-45409 python-idna: idna: Denial of Service via specially crafted long inputsCVE-2026-32597 pyjwt: PyJWT accepts unknown `crit` header extensions (RFC 7515 §4.1.11 MUST violation)CVE-2026-48526 python-pyjwt: PyJWT: Authentication bypass due to forged JSON Web TokensCVE-2026-48522 python-pyjwt: PyJWT: Server-Side Request Forgery (SSRF) via uncontrolled URL fetching in PyJWKClientCVE-2026-48523 python-pyjwt: PyJWT: Verifier-side algorithm bypass leads to unauthorized information accessYour dependencies cross-checked against the OSV vulnerability database.
PYSEC-2026-2120 Black is the uncompromising Python code formatter. Black provides a GitHub action for formatting code. This action supports an option, use_pyproject: true, for reading the version of Black to use fromPYSEC-2026-36 cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. From 45.0.0 to before 46.0.7, if a non-contiguous buffer was passed to APIs which accepted PythoPYSEC-2026-2132 Pallets Click, versions 8.3.2 and below, contain a command injection vulnerability in the click.edit() function, allowing attackers to pass arbitrary OS commands from an unprivileged account.PYSEC-2026-215 Internationalized Domain Names in Applications (IDNA) for Python provides support for Internationalized Domain Names in Applications (IDNA) and Unicode IDNA Compatibility Processing. In versions priorPYSEC-2026-1617 Model Context Protocol (MCP) Python SDK does not enable DNS rebinding protection by defaultPYSEC-2026-3482 MCP Python SDK: HTTP transports serve session requests without verifying the authenticated principalPYSEC-2026-3483 MCP Python SDK: WebSocket server transport does not support Host/Origin validationPYSEC-2026-2270 python-dotenv reads key-value pairs from a .env file and can set them as environment variables. Prior to version 1.2.2, `set_key()` and `unset_key()` in python-dotenv follow symbolic links when rewritPYSEC-2026-1852 Python-Multipart has Arbitrary File Write via Non-Default ConfigurationPYSEC-2026-3036 python-multipart: Quadratic-time querystring parsing with semicolon separators causes CPU denial of servicePYSEC-2026-3038 python-multipart affected by Denial of Service via large multipart preamble or epilogue dataPYSEC-2026-3039 python-multipart has Denial of Service via unbounded multipart part headersPYSEC-2026-161 BadHost: Missing Host header validation poisons request.url.path, bypassing path-based security checksPYSEC-2026-1942 Starlette vulnerable to O(n^2) DoS via Range header merging in ``starlette.responses.FileResponse``PYSEC-2026-2280 Starlette is a lightweight ASGI framework/toolkit. In versions 1.0.1 and below, when dispatching a request, HTTPEndpoint selects the handler by lowercasing the HTTP method and looking it up as an attrPYSEC-2026-2281 Starlette is a lightweight ASGI framework/toolkit. In versions 1.0.1 and earlier, StaticFiles on Windows is vulnerable to SSRF. An UNC path such as \\attacker.com\share can cause os.path.realpath to iPYSEC-2026-248 Starlette is a lightweight ASGI framework/toolkit. Prior to 1.3.0, the HTTP request path is not validated before being used to reconstruct request.url. Because request.url is rebuilt by concatenating PYSEC-2026-249 Starlette is a lightweight ASGI framework/toolkit. From 0.4.1 until 1.3.1, request.form() accepts max_fields and max_part_size to bound resource consumption while parsing form data. These limits are ePYSEC-2026-1851 Denial of service (DoS) via deformation `multipart/form-data` boundaryPYSEC-2026-1852 Python-Multipart has Arbitrary File Write via Non-Default ConfigurationPYSEC-2026-3036 python-multipart: Quadratic-time querystring parsing with semicolon separators causes CPU denial of servicePYSEC-2026-3038 python-multipart affected by Denial of Service via large multipart preamble or epilogue dataPYSEC-2026-3039 python-multipart has Denial of Service via unbounded multipart part headersPYSEC-2026-2121 Black is the uncompromising Python code formatter. Prior to 26.3.1, Black writes a cache file, the name of which is computed from various formatting options. The value of the --python-cell-magics optiPYSEC-2026-2122 CairoSVG is an SVG converter based on Cairo, a 2D graphics library. Prior to Kozea/CairoSVG has exponential denial of service via recursive <use> element amplification in cairosvg/defs.py. This causesCode that can be exploited: injection, hardcoded credentials and similar.
Nothing found by this check. ✓
Packages that look intentionally malicious: typosquats, sneaky install scripts.
Nothing found by this check. ✓
A signal about how the project is maintained — not a vulnerability in your code. It doesn’t affect the verdict above.
Maintenance & supply-chain hygiene. A signal about the project, not a vulnerability in your code.
This check didn’t finish — that’s not the same as “clean.” Try Check again above.