Use scan IDs with --scans and --exclude-scans flags to filter which checks VulnAPI runs.
vulnapi scan curl https://api.example.com -H " Authorization: Bearer <token> " --scans jwt.alg_none
# Run all JWT checks using a wildcard
vulnapi scan curl ... --scans " jwt.* "
# Exclude all discovery checks
vulnapi scan curl ... --exclude-scans " discover.* "
Scan ID Name OWASP CVSS jwt.alg_noneJWT Accepts alg: none API2:2023 High jwt.blank_secretJWT Signed With Blank Secret API2:2023 High jwt.weak_secretJWT Signed With Weak Secret API2:2023 High jwt.kid_injectionJWT KID Header Injection (SQL injection & path traversal) API2:2023 9.3 jwt.not_verifiedJWT Signature Not Verified API2:2023 9.3 jwt.null_signatureJWT Null Signature API2:2023 High jwt.hmac_confusionJWT Algorithm Confusion (HMAC confusion) API2:2023 9.3 jwt.psychic_signatureJWT Psychic Signature (CVE-2022-21449) API2:2023 9.3 jwt.jwk_injectionJWT jwk Header Injection API2:2023 9.3 jwt.jku_injectionJWT jku Header Injection API2:2023 9.3 jwt.x5c_injectionJWT x5c Header Injection API2:2023 9.3 jwt.x5u_injectionJWT x5u Header Injection API2:2023 9.3 generic.accept_unauthenticated_operationEndpoint Accepts Unauthenticated Requests API2:2023 9.3
The JWT checks are powered by CerberAuth JWTop . Each check only runs when it applies to the token under test: HMAC-only checks (jwt.blank_secret, jwt.weak_secret) are skipped for asymmetric tokens, asymmetric-only checks (jwt.hmac_confusion, jwt.jwk_injection, jwt.jku_injection, jwt.x5c_injection, jwt.x5u_injection) are skipped for HMAC tokens, and jwt.psychic_signature only runs for ECDSA tokens. jwt.jku_injection and jwt.x5u_injection additionally require a callback server address the target can reach and are skipped when none is configured.
Scan ID Name OWASP CVSS misconfiguration.http_headersSecurity Response Headers Missing API8:2023 Info–Medium misconfiguration.http_cookiesCookie Security Flags Misconfigured API8:2023 0.0 misconfiguration.http_traceHTTP TRACE Method Enabled API8:2023 Info misconfiguration.http_trackHTTP TRACK Method Enabled API8:2023 Info misconfiguration.http_method_overrideHTTP Method Override Headers Accepted API8:2023 Info–High
Scan ID Name OWASP CVSS graphql.introspection_enabledGraphQL Introspection Enabled API8:2023 Low
Discovery scans run automatically with vulnapi discover commands. They can also be included/excluded on scan commands.
Scan ID Name Description discover.apiAPI Fingerprint Detects framework, language, and server from response headers discover.well_known_pathsWell-Known Path Discovery Checks for OpenAPI, GraphQL, and other common paths discover.domainDomain Discovery Common subdomain patterns and reverse DNS lookup
The misconfiguration.http_headers scan covers multiple individual header checks. You can exclude the parent scan ID to skip all of them.
Header Risk Content-Security-PolicyMedium X-Frame-OptionsMedium X-Content-Type-OptionsInfo Strict-Transport-SecurityInfo Access-Control-Allow-Origin (CORS)Medium Server signature leak Info
The misconfiguration.http_cookies scan covers five individual cookie flag checks:
Check ID Description CWE security_misconfiguration.http_cookies_not_http_onlyCookie accessible via JavaScript (XSS risk) CWE-1004 security_misconfiguration.http_cookies_not_secureCookie transmitted over HTTP CWE-614 security_misconfiguration.http_cookies_same_site_noneSameSite=None allows cross-site requestsCWE-1275 security_misconfiguration.http_cookies_without_same_siteSameSite attribute not setCWE-1275 security_misconfiguration.http_cookies_without_expiresSession cookie never expires CWE-613