...
Depending on the library function called, an attacker may be able to use a heap or stack overflow vulnerability to run arbitrary code.
Rule | Severity | Likelihood | Detectable | RepairableRemediation Cost | Priority | Level |
|---|---|---|---|---|---|---|
ARR38-C | High | Likely | No | MediumNo | P18P9 | L1L2 |
Automated Detection
Tool | Version | Checker | Description | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| array_out_of_bounds | Supported Astrée reports all out-of-bound accesses within library analysis stubs. The user may provide additional stubs for arbitrary (library) functions. | |||||||
| CodeSonar |
| LANG.MEM.BO | Buffer overrun | |||||||
| Coverity |
| BUFFER_SIZE BAD_SIZEOF BAD_ALLOC_STRLEN BAD_ALLOC_ARITHMETIC | Implemented | |||||||
| Cppcheck Premium |
| premium-cert-arr38-c | Partially implemented | |||||||
5.0 | Can detect violations of this rule with CERT C Rule Pack | |||||||||
| Helix QAC |
| C2840 DF2840, DF2841, DF2842, DF2843, DF2845, DF2846, DF2847, DF2848, DF2935, DF2936, DF2937, DF2938, DF4880, DF4881, DF4882, DF4883 | ||||||||
| ABV.GENERAL | |||||||||
| LDRA tool suite |
| 64 X, 66 X, 68 X, 69 X, 70 X, 71 X, 79 X | Partially Implmented | |||||||
| Parasoft C/C++test |
| CERT_C-ARR38-a | Avoid overflow when reading from a buffer | |||||||
| Parasoft Insure++ | Runtime analysis | |||||||||
| PC-lint Plus |
| 419, 420 | Partially supported | |||||||
| Polyspace Bug Finder |
| Checks for:
Rule partially covered. | ||||||||
| Security Reviewer - Static Reviewer | 6.02 | C109 | Fully Implemented | |||||||
| ||||||||||
| TrustInSoft Analyzer |
| out of bounds read | Partially verified. |
...