Definition Interactive Application Security Testing | IAST Was ist IAST?

Von Dipl.-Ing. (FH) Stefan Luber 4 min Lesedauer

Interactive Application Security Testing ist eine Art von Mischform aus statischem und dynamischem Application Security Testing. Die Test-Tools interagieren mit einer ausgeführten Anwendung. Sie simulieren Nutzerverhalten oder Angriffe und beobachten das Verhalten der Anwendung in Echtzeit. Gleichzeitig überwachen Sensoren die internen Abläufe im Programmcode der Anwendung. So lassen sich Schwachstellen oder Sicherheitslücken direkt mit dem Programmcode in Verbindung bringen.

Interactive Application Security Testing (IAST) ist die interaktive Prüfung von Anwendungen auf Sicherheitslücken und -schwachstellen. (Bild:  gemeinfrei /  Pixabay)
Interactive Application Security Testing (IAST) ist die interaktive Prüfung von Anwendungen auf Sicherheitslücken und -schwachstellen.
(Bild: gemeinfrei / Pixabay)

Das Akronym IAST steht für Interactive Application Security Testing. Die deutsche Übersetzung lautet interaktive Anwendungssicherheitstests. Manchmal wird IAST in Anlehnung an die Begriffe White Box Testing und Black Box Testing auch als Grey Box Testing bezeichnet. Es handelt sich beim Interactive Application Security Testing um eine Art von Mischform aus Static und Dynamic Application Security Testing (SAST und DAST). Ausgeführte Anwendungen werden wie bei DAST von außen auf Sicherheitslücken oder -schwachstellen hin untersucht, indem Tools Verhaltensweisen wie User-Interaktionen oder Angriffe simulieren und das Verhalten der Anwendung in Echtzeit beobachten. Gleichzeitig hat IAST wie SAST Zugriff auf den Quellcode der getesteten Anwendung. Sensoren überprüfen während der Tests die Abläufe im Programmcode und können ein problematisches Verhalten der Anwendung direkt mit dem Code in Verbindung bringen. IAST benötigt einen zumindest in Teilen ausführbaren Programmcode und kann während des Softwareentwicklungsprozesses, in der Anwendungstestphase oder nachlaufend zur Qualitätssicherung oder Weiterentwicklung einer Anwendung zum Einsatz kommen. Wichtig anzumerken ist, dass IAST andere Testverfahren wie SAST oder DAST nicht ersetzt, sondern als Ergänzung der Anwendungssicherheitstests zu verstehen ist und in der Regel in Kombination mit diesen verwendet wird.

Prinzipielle Funktionsweise des Interactive Application Security Testing

Interactive Application Security Testing findet automatisiert über Tools gesteuert statt. Grundsätzlich ist es aber auch möglich, manuelle oder individuell konfigurierte Tests durchzuführen. Scanner simulieren externe Verhaltensweisen und interagieren mit der zu testenden, ausgeführten Anwendung. Die Scanner versuchen beispielsweise die Anwendung über verschiedene Methoden anzugreifen oder simulieren unterschiedliches User-Verhalten. Gleichzeitig beobachten die Scanner das Verhalten der Anwendung in Echtzeit. Schwachstellen, Sicherheitslücken oder problematisches Verhalten der Anwendung wird vom Scanner erkannt. Für die Beobachtung der internen Abläufe im Quellcode der getesteten Anwendung sind sogenannte Sensoren zuständig. Grundsätzlich ist eine Unterscheidung zwischen invasiven Sensoren, die in den Quellcode eingefügt werden, und nichtinvasiven Sensoren, die außerhalb des Quellcodes arbeiten, möglich. Über die Sensoren lassen sich problematische Verhaltensweisen oder Schwachstellen einer Anwendung mit den entsprechenden Teilen des Programmcodes in Verbindung bringen. Im Gegensatz zum Static Application Security Testing werden aber nicht der komplette Programmcode und allen Codezeilen geprüft, sondern nur die Teile, die vom erwarteten Verhalten abweichen und auf Schwachstellen hindeuten.

Abgrenzung von IAST zum Static und Dynamic Application Security Testing

IAST ist eine Mischform aus DAST (Dynamic Application Security Testing) und SAST (Static Application Security Testing). SAST, auch als White Box Testing bezeichnet, hat vollen Zugriff auf den Programmcode und testet die Sicherheit von Anwendungen automatisiert innerhalb des Codes. Ein Kompilieren des Codes oder Ausführen der Anwendung ist nicht notwendig. Die SAST-Tools prüfen den kompletten Quellcode nach einem definierten Regelsatz auf sicherheitstechnisch problematische Codebestandteile. Die Tools müssen mit der verwendeten Programmiersprache kompatibel sein. Da die Anwendung selbst für die Tests noch nicht lauffähig sein muss, ist SAST bereits in einer sehr frühen Phase des Softwareentwicklungsprozesses anwendbar.

DAST hat keinen Zugriff auf den Quellcode der zu testenden Anwendung und betrachtet diese als Black Box. Dynamic Application Security Testing zählt daher zu den Black-Box-Verfahren. Anwendungen werden auf Sicherheitslücken und -schwachstellen hin geprüft, indem DAST-Tools externe Verhaltensweisen wie Angriffe simulieren und von außen auf die Anwendung einwirken. Die Tools beobachten das Verhalten der Anwendung und erkennen sicherheitstechnisch problematisches Verhalten. Da kein Zugriff auf den Quellcode besteht, lässt sich das problematische Verhalten nicht mit den betroffenen Codezeilen in Verbindung bringen. DAST benötigt eine zumindest in Teilen ausführbare Anwendung und kann erst in einer späteren Softwareentwicklungsphase zum Einsatz kommen. Die DAST-Tools arbeiten von der für die Anwendungsprogrammierung verwendeten Sprache unabhängig.

Stärken und Schwächen von IAST

Zu den Stärken des Interactive Application Security Testing zählen:

  • IAST prüft das Verhalten laufender Anwendungen und liefert Ergebnisse in Echtzeit
  • die Tests lassen sich hochgradig automatisieren, sind aber auch individualisierbar
  • problematisches Verhalten einer Anwendung lässt sich direkt mit den entsprechenden Teilen des Programmcodes in Verbindung bringen
  • IAST ist im Entwicklungsprozess und nachlaufend in einer Testphase oder in der Qualitätssicherung anwendbar
  • die Wahrscheinlichkeit für falsch positive Testergebnisse ist gering

Als Schwächen von IAST lassen sich aufführen:

  • es wird Zugriff auf den Quellcode benötigt und Sensoren müssen installiert oder eingebunden werden
  • die Tools müssen mit der verwendeten Programmiersprache kompatibel sein
  • es werden nicht alle Zeilen des Programmcodes geprüft, sondern nur die Teile, die durch problematisches Verhalten der Anwendung auffallen
  • die Anwendung muss zumindest in Teilen ausführbar sein und die Tests sind erst in einer späteren Entwicklungsphase anwendbar
  • IAST ersetzt Verfahren wie DAST und SAST nicht, sondern ist als Ergänzung zu sehen

(ID:49671260)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zur IT-Sicherheit

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung