Security & Token Errors
JWT validation, CSRF, OAuth grants, SELinux, SSH host keys and CSP.
Understanding Security errors
Security errors are usually a control working correctly. A rejected JWT, a CSP violation, an SELinux denial or a host key mismatch is the system telling you an invariant was broken, and the right response is to understand the invariant, never to disable the control. Two of these deserve special caution: an SSH host key mismatch can indicate a genuine interception, and JWT algorithm confusion is an active exploitation technique, not a configuration nuisance.
How to debug Security errors
- Decode tokens locally and check
exp,nbf,issandaud. Never paste a live token into an online decoder. It is a credential. - Pin the accepted JWT algorithm explicitly on the verifying side. Accepting whatever the token's header claims is the algorithm-confusion vulnerability.
- For SELinux, read the actual denial:
ausearch -m avc -ts recent | audit2why. Set the correct file context withsemanage fcontextrather than runningsetenforce 0. - For CSP violations, read the browser console message. It names the exact directive and blocked URI. Add the specific source, not a wildcard.
- For an SSH host key mismatch, verify the new fingerprint out of band before removing the old key. This warning exists to catch man-in-the-middle attacks.
Tools worth reaching for
ausearch / audit2whyopenssl x509 -noout -textssh-keygen -lfbrowser CSP console reportslocal JWT decoding
All 25 Security errors
- Cookie: SameSite=None requires the Secure attribute NewBrowsers reject a cookie that declares SameSite=None without Secure. Cross-site cookies must be sent over HTTPS only…
- CORS: credentialed request cannot use a wildcard origin NewWhen a request sends cookies or an Authorization header, the browser requires Access-Control-Allow-Origin to name one…
- CSP: Refused to connect to URLContent Security Policy blocks outbound fetch/WebSocket/XHR to the target origin because connect-src is restrictive.
- CSP: Refused to execute inline script because it violates the policy NewContent-Security-Policy blocked an inline or an inline event handler. This is the policy preventing the main injection…
- CSRF: Token invalid or missingCross-Site Request Forgery token is invalid, expired, or missing from request.
- GitHub: push declined due to repository rule violations, secret detected NewPush protection found a recognisable credential in a commit and blocked the push. The secret is in history, not just…
- JWT: Invalid audience claimaud claim in JWT does not match expected audience for the API or resource server.
- JWT: Token expiredJSON Web Token has exceeded its expiration time. Need to refresh token or re-authenticate.
- Kerberos: KRB_AP_ERR_SKEW / clock skew too greatKerberos tickets are time-bound. If the client and KDC clocks differ beyond the allowed skew, authentication fails.
- LDAP: invalid credentials / AD data 52eLDAP bind failed. In Active Directory, subcode 52e means wrong password; other subcodes indicate no such user…
- OAuth: redirect_uri_mismatchThe redirect_uri in the authorisation request does not exactly match a registered redirect URI. Scheme, host, port…
- OAuth: Token revokedOAuth access token has been revoked. User revoked access or token was compromised.
- OAuth2: invalid_grant (refresh token expired)Refresh token is expired/revoked or used with wrong client/redirect URI, returning invalid_grant.
- SAML: invalid signature on assertion / responseThe service provider could not validate the SAML response signature. Usually the IdP signing certificate changed or…
- Security: JWT algorithm confusion attackJWT using 'none' algorithm or algorithm confusion between RS256 and HS256. Critical vulnerability.
- Security: Path traversal vulnerabilityUser input used in file path allows access to files outside intended directory. Critical vulnerability.
- Security: Required security header missingHTTP response missing important security headers like CSP, HSTS, or X-Frame-Options.
- Security: SQL injection vulnerability detectedUser input directly concatenated into SQL query. Critical security vulnerability.
- SELinux: Permission deniedSELinux policy blocking operation. File context mismatch or policy violation.
- SSH: Host key verification failedThe remote server's SSH host key has changed, or you're connecting to a new server with the same IP (Man-in-the-Middle…
- ssh: no matching host key type found. Their offer: ssh-rsa NewOpenSSH 8.8 disabled the SHA-1 ssh-rsa signature algorithm by default. The client and an old server or appliance now…
- SSH: Permissions 0644 for 'id_rsa' are too open NewOpenSSH refuses to use a private key that other users on the machine can read. It appears constantly in CI, where a…
- ssh: Received disconnect: Too many authentication failures NewThe server closed the connection after the client offered more keys than MaxAuthTries allows. The agent presents every…
- Subresource Integrity check failed NewThe browser refused a script or stylesheet because its hash did not match the integrity attribute. Either the CDN…
- Trivy: build failed on HIGH and CRITICAL vulnerabilities NewA scanner gated the pipeline on findings in the image. Most are in the base image rather than your code, and many have…
Other categories
- AI 35Rate limits, context windows, GPU memory and model-serving failures.
- Ansible 10Unreachable hosts, become passwords, undefined variables and Jinja2 failures.
- API 14Auth headers, payload limits, versioning, idempotency and webhook signatures.
- Apple 10Command line tools, dyld, Homebrew permissions, notarisation and Keychain.
- Auth 11OIDC, SAML, Auth0, Okta, Keycloak, passkeys and MFA failures.
- BigData 11Spark, Kafka, Airflow, Snowflake, Flink and Databricks failures.
- C# 12NuGet restore, null references, EF Core migrations, async deadlocks and Blazor…
- C++ 11Segfaults, linker errors, memory corruption and template deduction failures.
- Caching 10Cache stampedes, stale content, Varnish and CloudFront failures.
- CI/CD 18GitHub Actions, GitLab CI, Jenkins, CircleCI: permissions, runners and…
- Client 21CORS, mixed content, module resolution, memory limits and framework runtime…
- Cloud 25IAM permissions, quotas, service limits and credential failures.
- Dart 10Null safety, pub version solving and build toolchain problems.
- Database 41Connections, deadlocks, constraints, replication and memory limits.
- DNS 10NXDOMAIN, SERVFAIL, timeouts, propagation and delegation problems.
- Docker 27Daemon connectivity, disk space, image pulls, ports and architecture mismatches.
- Elixir 9GenServer timeouts, supervision failures and Mix compilation problems.
- Email 8Delivery failures, relay denial, authentication, SPF, DKIM and DMARC.
- Frontend 23Hydration mismatches, bundler resolution, layout shift and font loading.
- Git 20Merge conflicts, rejected pushes, detached HEAD, LFS and repository corruption.
- Go 19Nil map assignment, concurrent map access, context cancellation and deadlocks.
- GraphQL 13Validation, depth limits, N+1 queries and fragment problems.
- gRPC 10Status codes, deadlines, message limits, TLS and HTTP/2 transport failures.
- HTTP 494xx client errors, 5xx server errors, redirects, headers and protocol problems.
- ICMP 23Destination unreachable, time exceeded, fragmentation needed and redirects.
- Ingress 8404 default backend, missing TLS secrets, IngressClass and path matching.
- Java 19Class loading, dependency resolution, connection pools and JVM version…
- JavaScript 42npm resolution, async pitfalls, hydration, memory limits and runtime type…
- Kubernetes 34CrashLoopBackOff, ImagePullBackOff, OOMKilled, RBAC, scheduling and storage.
- Logging 9Log4j, Logback, Fluentd, Logstash and CloudWatch ingestion problems.
- MessageQueue 14Kafka, RabbitMQ, SQS, NATS and Celery: lag, rebalancing and poison messages.
- Mobile 17Gradle, CocoaPods, Xcode signing, Metro bundler and toolchain mismatches.
- Monitoring 12Prometheus scrapes, Grafana data sources, OpenTelemetry exporters and agent…
- Network 35Refused connections, timeouts, resets, MTU problems and port exhaustion.
- Performance 6GC pauses, thread pool starvation and event loop blocking.
- PHP 11Memory limits, execution timeouts, autoloading, Composer and PDO connections.
- Proxy 17nginx, Envoy, HAProxy, Traefik, Caddy and Cloudflare upstream failures.
- Python 35Imports, virtual environments, encoding, concurrency and dependency conflicts.
- Regex 8Catastrophic backtracking, back references, escaping and engine differences.
- Ruby 11Bundler, migrations, native extensions, encoding and asset compilation.
- Rust 19Borrow checker, ownership moves, trait bounds and lifetime mismatches.
- Scala 6Dependency resolution, binary compatibility and type inference failures.
- Serverless 11Lambda timeouts, package size limits, VPC networking and cold starts.
- Shell 13Command not found, permissions, quoting, expansion and Makefile syntax.
- Storage 13S3 permissions, NFS mounts, quotas, signed URLs and volume attachment.
- Svelte 10Store subscriptions, load functions and server/client boundaries.
- System 26Disk space, systemd units, file descriptors, OOM killer and scheduled jobs.
- Terraform 18State locks, provider auth, drift, dependency cycles and plan-time unknowns.
- Testing 18Jest, pytest, JUnit, Cypress and Playwright: fixtures, snapshots and timeouts.
- TLS 24Untrusted authorities, expiry, hostname mismatch, chains and cipher negotiation.
- TypeScript 19Assignability, missing declarations, strict null checks and generic constraints.
- Virtualization 8VirtualBox, VMware, Hyper-V, WSL, KVM and hypervisor conflicts.
- Web3 7Gas estimation, nonce management and reverted transactions.
- WebAssembly 7Compile errors, memory bounds and host binding mismatches.
- WebServer 10nginx, Apache, IIS and Caddy: binding, permissions, rewrites and TLS.
- Windows 10Installer failures, missing runtimes, update errors and permission problems.