Detect PraisonAI Call Server Unauthenticated Agent Access (CVE-2026-47396) in IBM QRadar
Detects exploitation of CVE-2026-47396, a critical authentication bypass in PraisonAI's call server component. When the CALL_SERVER_TOKEN environment variable is unset, the server exposes unauthenticated endpoints for listing, invoking, and deleting AI agents. An attacker can enumerate available agents, invoke arbitrary agent workflows, or destroy agent configurations without any credentials. CVSS 9.8 (Critical), CWE-284/CWE-306.
MITRE ATT&CK
- Tactic
- Initial Access Persistence Impact
QRadar Detection Query
SELECT sourceip, "URL", "Method", "Response Code", COUNT(*) AS request_count
FROM events
WHERE LOGSOURCETYPENAME(devicetype) IN ('Apache HTTP Server', 'Nginx', 'Microsoft IIS')
AND ("URL" ILIKE '/agents%' OR "URL" ILIKE '/invoke%' OR "URL" ILIKE '/delete%')
AND ("Authorization Header" IS NULL OR "Authorization Header" NOT ILIKE 'Bearer %')
AND DATETIME > NOW() - 1 HOURS
GROUP BY sourceip, "URL", "Method", "Response Code"
HAVING COUNT(*) > 2
ORDER BY request_count DESC
LAST 60 MINUTES QRadar AQL query detecting unauthenticated requests to PraisonAI agent endpoints from web server logs, grouped by source IP, filtered for missing or malformed Authorization headers.
Data Sources
Required Tables
False Positives & Tuning
- Health monitoring agents polling agent listing endpoints
- Network scanners performing web application discovery
- Development environments where token auth is disabled
- Automated testing frameworks without credential configuration
Other platforms for CVE-2026-47396
Testing Methodology
Validate this detection against 4 adversary techniques from Atomic Red Team. Each test below lists the behaviour to exercise and the telemetry you should expect to see. Executable commands and cleanup steps are available with Pro.
- Test 1Enumerate PraisonAI agents without authentication
Expected signal: Web server access log entry: GET /agents HTTP/1.1 from test source IP, no Authorization header, HTTP 200 response with JSON agent listing
- Test 2Invoke PraisonAI agent without authentication
Expected signal: Web server access log entry: POST /invoke HTTP/1.1 from test source IP, no Authorization header, HTTP 200 or 202 response; application log showing agent invocation
- Test 3Delete PraisonAI agent configuration without authentication
Expected signal: Web server access log entry: DELETE /delete HTTP/1.1 from test source IP, no Authorization header; application log showing agent deletion event
- Test 4Confirm CALL_SERVER_TOKEN absence in running process
Expected signal: Process environment read via /proc/<pid>/environ; output contains no CALL_SERVER_TOKEN entry
Unlock Pro Content
Get the full detection package for CVE-2026-47396 including response playbook, investigation guide, and atomic red team tests.