Security Code Review
Sehr viele Sicherheitsprobleme lassen sich nicht durch einen „von außen“ durchgeführten Pentests aufdecken. Hierfür ist es wichtig den Programmcode selbst zu analisieren und zu verstehen – auch im Hinblick auf die umzusetzenden Maßnahmen.
Statische und dynamsiche Codeanalyse (SAST, IAST) können hier sehr helfen, doch selbst diese Technologien können nicht alle Sicherheitsprobleme aufdecken. Besonders der Programmcode von Anwendungen mit hohem Schutzbedarf sollte daher in Abständen manuell auf mögliche Sicherheitsprobleme hin analyisiert werden.
Im Rahmen einer solchen Tätigkeit führen wir u.a. die folgenden Analyseschritte durch
- Korrekte Verarbeitung eingelesener Daten (z.B. im Hinblick auf korrektes Encoding)
- Anbindung von externen Diensten
- Unsichere Aufrufe (z.B. OS Calls)
- Korrekte Verwendung von Security APIs (z.B. Kryptographie)
- Zugriffskontrollen
- Identifikation von Race Conditions
- Sonstige Möglichkeiten zur Härtung