Zurück zur Übersicht

Begriff

Static Analysis (SAST)

Security Testing S1
2 Quellen 0 Lernpfade 1 Backlink enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Wie findest du Fehler im Code?

  1. Du startest das Programm und klickst herum (Dynamic Analysis).
  2. Du liest den Code Zeile für Zeile, ohne ihn zu starten. Static Analysis ist Nummer 2, aber automatisiert. Ein Roboter liest deinen Quellcode. Er findet:
  • Bugs ("Hier könnte eine NullPointerException passieren").
  • Sicherheitslücken ("SQL Injection Risiko!").
  • Code Smells ("Diese Funktion ist 500 Zeilen lang, das ist hässlich"). Das passiert meistens in der CI/CD Pipeline ("Quality Gate").

Merksatz: Die automatisierte Untersuchung von Quellcode auf Fehler, Sicherheitslücken und Verstöße gegen Programmierrichtlinien, ohne das Programm auszuführen.


Quick-Check

  1. Unterschied zu DAST?
    DAST (Dynamic Analysis) testet die laufende App von außen (Black Box). SAST testet den Code von innen (White Box). DAST findet Config-Fehler (falscher Header). SAST findet Logik-Fehler. Man braucht beides.
  2. SCA (Software Composition Analysis)?
    Spezialform von SAST. Es scannt nicht deinen Code, sondern deine Dependencies (package.json). "Du nutzt Log4j v1. Das ist unsicher!" Tools: Snyk, Dependabot.
  3. Shift Left?
    Früher lief Security erst vor dem Release. SAST bringt Security nach links (in die IDE des Entwicklers). Fehler fixen, während man tippt, kostet 1€ pro Bug. Nach Release kostet es 10.000€.