How to secure memory-safe vs. manually managed languages
Mar 14, 2023Fernando Diaz

Summary
This post details how GitLab's SAST capabilities support security scanning for both memory-safe (Python, Go, Java, JavaScript, Ruby) and manually managed (C, C++) languages. It highlights specific scanners like Semgrep, Flawfinder, Bandit, GoSec, SpotBugs, ESLint, and Brakeman, and provides examples of detecting vulnerabilities like buffer overflows in C and SQL injection in Python. The post also emphasizes the importance of unit tests, fuzzing, and CI pipelines for further reliability and security, and introduces other security scanners like DAST, IaC scanning, dependency scanning, container scanning, license scanning, secret detection, and API fuzzing.
More from the Bug Triage and Reporting trail
- Shai-Hulud copycat campaign targets Python developers through PyPI typosquatting
- Manage vulnerability noise at scale with auto-dismiss policies
- How to transform compliance observation management with GitLab
- Self-service security alert handling with GitLab's UAM
- How GitLab measures Red Team impact: The adoption rate metric