ENNAENNA

cwe_checker vs Semgrep

GitHub Stats

1.3k
Stars
14.8k
142
Forks
913
27
Issues
860
1y ago
Updated
3d ago
LGPL-3.0
License
LGPL-2.1
Rust
Language
OCaml

About cwe_checker

cwe_checker is a binary analysis tool written in Rust that detects common bug classes (CWEs) in compiled executables without requiring source code access, using the Ghidra disassembler as its analysis backend. It identifies vulnerability patterns including buffer overflows, use-after-free, null pointer dereferences, integer overflows, and other memory safety issues by analyzing the program's control flow and data flow at the binary level. Firmware security analysts, vulnerability researchers, and reverse engineers use cwe_checker to perform automated security assessments of compiled software, particularly embedded firmware and closed-source binaries where source code is unavailable. The tool maps its findings to CWE identifiers, provides detailed location information within the binary, and can process ELF and PE binaries across multiple architectures, making it a valuable first-pass triage tool for binary vulnerability assessment.

About Semgrep

Semgrep is a lightweight static analysis engine that helps find bugs and enforce code standards across over 30 programming languages. It uses custom rules to perform code scanning, offering flexibility in detecting vulnerabilities and ensuring best practices. Semgrep's ability to integrate into development environments allows developers to catch issues early in the coding process. Its focus on customizable rules and language support makes it a powerful tool for secure software development.

Platform Support

๐Ÿงlinux๐ŸŽmacos
๐Ÿงlinux๐ŸŽmacos๐ŸชŸwindows

Tags

cwe_checker only

binarycwevulnerabilityghidra

Semgrep only

saststatic-analysiscode-scanningcustom-rules