Binary executables can either include the symbol-table/debugging information ("unstripped") or not
("stripped"). Software producers may strip their binaries for a range of reasons, from benign (saving space), to proprietary (protecting trade secrets against reverse engineering), to hostile (obfuscating the code to hide a virus).
To find bugs, security vulnerabilities, or malicious code (backdoors, time bombs, or logic bombs) in an application delivered as stripped machine code, developers must be able to analyze stripped executables.
Static analysis of stripped executables is beyond the capabilities of most static analysis products. CodeSonar, on the other hand, can perform static analysis on both stripped and unstripped executables.
Through this evolution in static code analysis, developers can inspect and evaluate all externally produced code used in their applications. Binary analysis results can also be used to compare the relative safety of different third-party components, so teams can make the best possible decision when choosing components to include in their applications.
CodeSonar has detected a null pointer dereference in an analyzed binary.
|