Technical assessment
A detection-only scanner for CVE-2026-48710 (BadHost) in Starlette/FastAPI. It sends crafted HTTP requests with malformed Host headers to test if authentication middleware can be bypassed, and reports differential findings without exploiting the vulnerability.
Backdoor review
No backdoor observed in reviewed code
The PoC is a detection-only scanner for CVE-2026-48710 (BadHost) in Starlette/FastAPI. It sends crafted HTTP requests to test for Host-header auth bypass and reports results. All reviewed source code, documentation, and lab files are consistent with a legitimate security testing tool. No concealed executable behavior, persistence, credential theft, unrelated payloads, or operator-directed harm was observed.
Model confidence98%
AuthenticationNot required
LanguagesPythonShellYAML
Target softwareStarletteFastAPI
Attack typesAuthentication BypassHTTP Request Smuggling
Evidence & reasoningClassification basis · observed behavior · safety review
Technical evidenceClassification basis and observed behavior
Classification basis
The primary artifact is a Python script (badhost_openapi_scanner.py) that is explicitly described as a 'Detection-only scanner' in its own docstring and README. It sends crafted requests to detect the vulnerability and reports findings, but does not contain any code to exploit the vulnerability for malicious purposes such as extracting data or gaining unauthorized access. The included lab applications are for local testing of the scanner, not for exploitation.
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/README.md:3Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:6Requirements
- Target URL of a Starlette/FastAPI application
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:1083-1084 - OpenAPI specification file or URL, or manual protected paths
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:1107
Observed behavior
- Sends a baseline unauthenticated request to a protected endpoint and verifies it is denied (401/403).
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:481 - Sends a crafted request with a malformed Host header (e.g., 'host:port/health?x=') to attempt to bypass authentication.
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:374-379 - Compares the baseline and test responses to classify the result as CONFIRMED, SUSPECT, BLOCKED, etc.
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:382-406 - Outputs a text summary, JSON, or CSV report of vulnerable endpoints.
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:1231-1244
Safety-review evidenceBehaviors behind the backdoor verdict
Observables
- Network Behavior
- Sends crafted HTTP requests with malformed Host and X-Forwarded-Host headers to target URLsCore functionality of the CVE-2026-48710 scanner; documented in README and implemented in badhost_openapi_scanner.py
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:250-355Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/README.md:6-10 - File Operation
- Reads local OpenAPI JSON/YAML files and fetches OpenAPI specs from URLsUsed to generate probe requests for scanning; implemented in load_json_or_yaml_like function
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:575-600 - Output
- Reports scan results as text summary, JSON, or CSV to stdout; progress to stderrStandard reporting for a security scanner; no exfiltration of sensitive data
Bhanunamikaze-BadHost-CVE-2026-48710-Exploit-588f307/badhost_openapi_scanner.py:1231-1244
Review boundariesWhat the analysis did not establish
- Evidence does not include the full repository snapshot; only selected text files from the PoC unit are provided.
- The analysis is based solely on static code review; the scanner was not executed against a live target.
- 4 unclassified binary files totaling 1741 bytes were present in the artifact but not analyzed; their metadata-only inventory does not indicate executable payloads.
- The review is limited to the supplied text evidence; the actual runtime behavior of the scanner was not executed or observed.
Model interpretationThis review is limited to the supplied PoC code and context. It does not assert that the code works or is safe to execute.