GrammaTech Releases Open Source API Security Tool
Application security testing company GrammaTech announced on Wednesday that it has released an open source tool designed to detect API usage errors.
The tool, named SWAP Detector, was developed as part of a research project sponsored by the U.S. Department of Homeland Security (DHS) and GrammaTech says it can be highly useful for DevOps application security testing.
A lot of software applications rely on third-party APIs and it’s important for developers to identify API usage errors, which can introduce security and reliability issues.
SWAP Detector analyzes function calls in code in an effort to detect potential swapped argument errors. If such an error is detected, the user is warned and the warning is also assigned a score.
The tool can be integrated with static analysis products such as Clang-Tidy, Clang Static Analyzer, and PyLint. SWAP Detector initially focuses on applications written in C and C++, but GrammaTech says it’s applicable to code written in other programming languages as well, particularly for interpreted — rather than compiled — languages.
“SWAP Detector uses multiple error-detection techniques, layered together to increase accuracy. For example, it compares argument names used in call sites with the parameter names used in corresponding declarations,” GrammaTech explained.
“In addition, it uses ‘Big Code’ techniques, applying statistical information about usages of ‘known good’ API-usage patterns collected from a large corpus of code, and flagging usages that are statistically anomalous as potential errors. To improve the precision of the reported warnings, SWAP Detector applies false-positive reduction strategies to the output of both techniques,” it added.
The SWAP Detector source code is available on GitHub.