BETA Shoulder is in beta — Findings may sometimes be wrong. Your feedback shapes what we fix next. Share feedback
#3 A03:2021

Injection

Injection flaws occur when an application sends hostile data to an interpreter. This includes SQL, NoSQL, OS command, ORM, LDAP, and Expression Language injection.

Overview

Injection slides down to #3. 94% of applications were tested for some form of injection. The 33 CWEs mapped into this category have the second most occurrences in applications.

How Attackers Exploit This

Understanding attack patterns helps you build better defenses. These are the techniques security teams watch for.

SQL query manipulation

User input is incorporated into database queries without proper sanitization, allowing attackers to modify query logic or extract unauthorized data.

Detection signal: Database errors in responses, unusual query patterns in logs, timing anomalies

Command execution

User input flows into system commands, allowing attackers to execute arbitrary commands on the server.

Detection signal: Unexpected process spawns, unusual system calls in audit logs

Script injection in pages

User content is reflected in web pages without encoding, allowing script execution in other users' browsers.

Detection signal: Script tags or event handlers appearing in user-generated content

How to Prevent

  • Use a safe API which avoids using the interpreter entirely
  • Use parameterized queries or prepared statements
  • Use positive server-side input validation
  • Escape special characters for any residual dynamic queries
  • Use LIMIT and other SQL controls to prevent mass disclosure

CWEs with Shoulder Detection (9)

These CWEs have Shoulder detection rules. Click to see specific vulnerabilities and fixes.

Other Mapped CWEs (24)

These CWEs are mapped to this category. Use MITRE references for guidance.