Python vulnerability classes es-python reports
One page per class of flaw that es-python reports in running Python code: what it looks like in Django, Flask, FastAPI and the standard library, the variants hard to see from source or the network edge, the event you would see on the dashboard, and how to fix it. Each page also says where coverage stops.
Grouped by OWASP Top 10:2025 category. Each class names its CWE entry.
The coloured pill is the impact tag the dashboard puts on the event, coloured by how serious the class is in general. The event itself is graded separately, from where the data came from.
-
SQL injection
SQL injection is a flaw where data an attacker controls becomes part of the text of a SQL statement, so the database runs a query the developer never wrote.
-
Command injection
Command injection is a flaw where data an attacker controls ends up in an operating-system command the program runs, so the attacker gets to run commands of their own with the program's privileges.
-
Code injection
Code injection is a flaw where data an attacker controls is run as Python code, through eval(), exec(), a dynamic import or a name-based lookup, so the attacker can do anything the program can.
-
Server-side template injection (SSTI)
Server-side template injection is a flaw where data an attacker controls becomes part of a template's source instead of its data, so the template engine evaluates the attacker's expressions on the server.
-
NoSQL injection
NoSQL injection is a flaw where data an attacker controls changes the structure of a database query rather than supplying a value to it, most often by smuggling query operators into a document store like MongoDB.
-
Insecure deserialization
Insecure deserialization is a flaw where a program rebuilds Python objects from bytes an attacker controls, and the rebuilding itself runs attacker-chosen code, before the program ever looks at the result.
-
Untrusted code loading
Untrusted code loading is a flaw where the program imports or runs a Python file that someone other than the owner could have written, so whoever can edit that file runs code inside the program.
-
Path traversal
Path traversal is a flaw where data an attacker controls decides which file the program opens, letting them escape the directory the program meant to stay in and read or write files elsewhere.
-
Server-side request forgery (SSRF)
Server-side request forgery is a flaw where an attacker makes the server itself send a request to a destination of their choosing, reaching internal services and cloud metadata that the attacker could never reach directly.
-
Hardcoded credentials
Hardcoded credentials are passwords, API keys, tokens or private keys written directly into source code, where they are copied into every checkout, build and backup, and cannot be rotated without a code change.
-
Weak randomness
Weak randomness is a flaw where a value that has to be unguessable, a session token, a password-reset link, an API key, is generated by a random source that is not meant for security, so an attacker can predict or reproduce it.
Not in an OWASP Top 10:2025 category
Its CWE is not mapped to any of the ten categories.
-
Regular expression denial of service (ReDoS)
ReDoS is a flaw where a regular expression takes time that grows explosively on certain inputs, so an attacker can hang a request, or a whole worker, with a short string.
See these flows in your own application
es-python runs your existing Python code unchanged and reports untrusted data that reaches one of these operations, with the path it took. A live demo walks through it on a real application.