Chapter 8
- No, memory corruption is a type of software vulnerability but many more exist. For instance, race condition vulnerabilities:
- CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
The program contains a code sequence that can run concurrently with other code, and the code sequence requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence that is operating concurrently.
Several other memory corruption vulnerabilities were not covered. For instance, double-free vulnerabilities:
- CWE-415: Double Free
The product calls
free()
twice on the same memory address, potentially leading to the modification of unexpected memory locations. - It is considered unsafe because the size of the destination buffer where the source buffer will be copied is not taken into account, so it can easily lead to a buffer overflow.
- The three...