Section 27: Analyzing Vulnerabilities Flashcards
Dereferencing
Occurs when the code attempts to remove the relationship between a pointer and the thing it points to
TOCTOU
▪ Occurs when there is a change between when an app checks a resource and when the app uses the resource
Mutually Exclusive Flag (Mutex)
▪ Acts as a gatekeeper to a section of code so that only one thread can be processed at a time
Buffer Overflow
▪ Occurs when a process stores data outside the memory range allocated by the developer
o Buffer
▪ A temporary storage area that a program uses to store data
▪ Over 85% of data breaches were caused by a buffer overflow
Stack
▪ Reserved area of memory where the program saves the return address when a function call instruction is received
Address Space Layout Randomization (ASLR)
Prevents an attacker’s ability to guess where the return
pointer for a non-malicious program has been set to call
back to
Data Execution Protection (DEP)
o Blocks applications that attempt to run from protected
memory locations
o Executable code stored in the user data location will be
marked as non-executable
Integer Overflow
▪ Occurs when a computed result from an operation is too large to fit into its assigned variable type for storage
▪ Integer overflows and buffer overflows can lead to arbitrary code
execution, and in turn, privilege escalations
HTTP Public Key Pinning (HPKP)
▪ Allows HTTPS websites to resist impersonation by attackers using fraudulent certificates
Software Composition Analysis
A process by which software can be analyzed for open-source
components
Regression Testing
Validates any software change does not produce any unintended
consequences
Represented State Transfer (REST)
A client/server model for interacting with content on remote systems
over HTTP
Simple Object Access Protocol (SOAP)
▪ Used for exchanging structural information for web services
▪ Conduct inspection and sanitization of inputs and outputs to the
application
Bytecode
▪ An intermediate form of code produced by a compiler that can be
translated into machine code