This release adds 4 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+12 more
Affected surfaces
Summary
AI summaryUpdates Probe hardening, New probes, and New primitive across a mixed release.
Full changelog
Highlights
Catch rate against a self-hosted 20-vuln Flask honeypot moved from 9/20 (45%) to 20/20 (100%) inside a single deterministic three-pass scan.
New probes
web.sqli_login_bypass— classic' OR 1=1 ---family auth-bypass against POST login endpoints. Six payloads × four username-field names × two body shapes across eight login-path candidates. Bypass detected via session-cookie minting, 3xx redirect to a non-login path, or 401→200 status flip with logged-in markers.web.path_traversal— filename-style query-param LFI. Thirteen payload depths (raw../etc/passwd3–7, URL-encoded%2e%2e/, Windows..\\..\\..\\windows\\win.ini) across six param names and twelve default paths.web.response_headers— missing security headers (CSP / XFO / XCTO / Referrer-Policy / Permissions-Policy / HSTS-on-HTTPS), insecure session cookie attributes (HttpOnly / Secure / SameSite), and Server / X-Powered-By info disclosure — one GET on the base URL.
New primitive
http_post_form—application/x-www-form-urlencodedPOST helper matching thehttp_post_jsonshape. Form-handler endpoints can now be attacked without each probe re-rolling the Content-Type.
New bug-class taxonomy entries
security_misconfig, insecure_cookie, info_disclosure.
Probe hardening
web.api_path_discoverynow accepts 400/405/422 as "endpoint exists, wants different args/method" — unblocks SSRF / XXE / path-traversal probes that depend on discovery for seeding.web.xxe_uploadtries multipart AND rawapplication/xmlshapes per path, propagatescaptured_auth, unionsALWAYS_PROBEDwith discovery candidates.web.sqli_fuzzforwardscaptured_authinto crawler and fuzz, expandsctx.candidate_endpointsinto{path}?{param}={payload}templates.web.stored_xsstries(json, form)shapes per(path, field)with read-back after every accepted POST, candidate union, numeric-id sink defaults.web.race_conditionswaps local Bearer-only helper for canonicalauth_headers; folds baseline into the sameasyncio.gatheras the burst (was sequencing baseline first, hiding atomic-gate-with-sleep bugs); iteratesCOMMON_COUPON_CODES.probe_jwt_alg_noneiteratesCOMMON_ADMIN_SUBJECTSin the forged token — apps that DB-look-up thesubclaim no longer silently reject the canary value.
Bug fixes
@registry.probedecorator misattachment regression inrace_conditionandstored_xss(helper got the decorator instead of the probe entry point). Unit tests passed because they imported the probe directly; the three-pass orchestrator surfaced the break. Added registry-correctness asserts.
Tests
In-process aiohttp honeypot (tests/honeypot/server.py) grew five new vulnerable sinks mirroring TaskFlow: /api/import, /api/search, /tasks/{id}, /auth/login, /files?name=. Five new e2e tests, six new unit-test files. Discovery + injection sweep: 40 passing → 174 passing.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About pentest-ai
Offensive-security MCP server with 205 wrapped tools, 17 specialist agents, and 60 SPA-aware probes for OWASP Top 10. CLI + MCP, BYO LLM. No API key needed on MCP path.
Related context
Related tools
Beta — feedback welcome: [email protected]