C++ detectors
Showing all detectors for the C++ language.
Browse by tags
Browse all detectors by tags.
Browse by severity
Browse all detectors by severity.
Browse by category
Browse all detectors by category.
Browse all detectors
Disabling the HTML autoescape mechanism exposes your web applications to attacks.
Insecure pseudorandom number generators such as rand(), srand(), std::mt19937, or drand48() produce predictable values.
Missing default in switch can lead to unintended bugs.
Hardcoded credentials can be intercepted by malicious actors.
Unsafe file extensions like .exe or .vbs can execute code without consent.
Weakness in software code can be introduced when the developer uses the wrong logical or relational operator in an expression.
if set(e)gid() is called after set(e)uid(), it can regain elevated group privileges.
Out of bounds read can allow attackers to read sensitive information from other memory locations or cause a crash.
Code injection vulnerabilities occur when untrusted input is executed as code.
Out-of-bounds write vulnerability occurs when software attempts to write data beyond the allocated memory bounds, potentially leading to memory corruption and security risks.
A thread safety violation might indicate a data race which can put the system into an inconsistent state.
Pointer subtraction allows unintended behavior.
Mismatched memory management routines are used to create and clean objects.
Concurrent execution using shared resource with improper synchronization.
Use of insecure functions can lead to buffer overflow.
Use of sizeof on a malloced pointer type is incorrect.
Instances of incorrect pointer scaling detected, potentially leading to unexpected behavior and vulnerabilities.
Weak file permissions can lead to privilege escalation.
Sensitive information should not be exposed through log files or stack traces.
Missing authorization checks can lead to unauthorized access to a resource or performance of an action.
A function returns the address of a stack variable will cause unintended program behavior, typically in the form of a crash.
Improper neutralization of special elements used in an OS command ('OS Command Injection')
Using memory after it has been freed can lead to unexpected behavior or exploitation.
Secure comparison type safety recommendation.
Potential Cross-Site Request Forgery (CSRF)
Off-by-one errors occur when a loop or array index is incorrectly incremented or decremented by one, leading to unintended behavior.
This code contains a potential format vulnerability due to the use of function without specifying correct format specifier.
Creating file paths from untrusted input might give a malicious actor access to sensitive files.
Insecure ways of creating temporary files and directories can lead to race conditions, privilege escalation, and other security vulnerabilities.
Use of insecure cryptography.
Connections that use insecure protocols transmit data in cleartext, which can leak sensitive information.
Dereferencing an unchecked value without verification, leading to potential runtime errors or undefined behavior.
Use of untrusted inputs in SQL database query can enable attackers to read, modify, or delete sensitive data in the database.
Using untrusted inputs in a log statement can enable attackers to break the log's format, forge log entries, and bypass log monitors.
Missing checks might cause silent failures that are harder to debug.
Improper restriction of operations within the bounds of a memory buffer.
Converting from one data type to another, data can be omitted or translated in a way that produces unexpected values.
Repeatedly locking critical resources in a concurrent environment can lead to varied consequences.
Improper input validation can enable attacks and lead to unwanted behavior.
Dereferencing a null pointer can lead to unexpected null pointer exceptions.
Improper certificate validation might allow an attacker to spoof a trusted entity by interfering in the communication path between the host and client.
Detects potential cross-site scripting (XSS) vulnerabilities in C++ web applications.
Improper authentication from insufficient identity verification.