feat(appsec): add HTTPX2 SSRF and API10 protection - #19919
feat(appsec): add HTTPX2 SSRF and API10 protection#19919gh-worker-dd-mergequeue-cf854d[bot] merged 3 commits into
Conversation
Codeowners resolved asResolved from the full PR diff against No remaining files require a CODEOWNERS review. |
Circular import analysis
|
Dependency direction analysis
|
🎉 All green!🧪 All tests passed 🔗 Commit SHA: 9180782 | Docs | View more details | Give us feedback! |
b6eb22a to
77d455f
Compare
BenchmarksBenchmark execution time: 2026-08-31 08:00:30 Comparing candidate commit 9180782 in PR branch Found 0 performance improvements and 6 performance regressions! Performance is the same for 578 metrics, 10 unstable metrics, 2 known flaky benchmarks, 16 flaky benchmarks without significant changes.
|
77d455f to
0fb37d9
Compare
|
/merge |
|
View all feedbacks in Devflow UI.
It will be processed automatically as soon as GitHub reports it as mergeable. View in MergeQueue UI.
florentin.labelle@datadoghq.com unqueued this merge request |
|
/remove |
|
View all feedbacks in Devflow UI.
|
Description
Adds ASM SSRF exploit prevention and OWASP API Top 10 security risk analysis for the Pydantic HTTPX2 client. HTTPX2 now publishes the established HTTPX request events so the existing tracing and AppSec subscribers handle both integrations without coupling contrib code to AppSec.
The shared HTTPX patcher now owns the HTTPX request and send event names directly; the HTTPX and HTTPX2 integrations only provide their library module and configuration. The AppSec Django, Flask, FastAPI, and Tornado threat suites exercise both the HTTPX2 2.0.0 floor and
latest, with synchronized Riot requirements lockfiles.Testing
scripts/run-tests --venv 13baca8 -- -- -q -k "test_exploit_prevention and (parameters42 or parameters50)"— 64 passedscripts/run-tests -s --venv 7207b3b -- -- -k httpx2andscripts/run-tests -s --venv 147970c -- -- -k httpx2— 56 passed across HTTPX2 2.0.0 and latest/2.12.0scripts/run-tests -s --venv 14859e9 --venv 1e7c279 --venv 143e698— 129 passed, 1 expected version-gated skip across HTTPX latest and HTTPX2 floor/latestscripts/lint checksscripts/lint spelling -- releasenotes/notes/appsec-httpx2-ssrf-protection-cb13c93a891fdf2b.yamluv tool run --from reno reno lintRisks
HTTPX2 now uses the same request event names as HTTPX, and those names are fixed in the shared patcher. The HTTPX and HTTPX2 integration suites plus focused AppSec coverage validate normal tracing and security handling. The AppSec Riot matrix doubles its HTTPX2 dependency dimension to cover the compatibility floor and newest compatible release.
Additional Notes
Riot requirements were synchronized with
scripts/ddtest env RIOT_PIP_COMPILE_BACKEND=uv scripts/compile-and-prune-test-requirements.