
Ein Problem in Data Illusion Survey Software Solutions NGSurvey v2.4.28 und darunter ermöglicht es Angreifern, eine Denial-of-Service (DoS) durch eine manipulierte Umfrage zu verursachen.
ngSurvey Version 2.4.28 und darunter ist anfällig für einen Denial-of-Service, wenn eine Umfrage ein „Textfeld“, „Kommentarfeld“ oder „Kontaktdaten“ enthält. Das Problem besteht, weil die Felder keine Zeichenbegrenzung enthalten. Ein Angreifer kann eine unendliche Anzahl von Zeichen in die Felder eingeben. Während der Tests stürzte die Docker-Anwendung beim Absenden der Anfrage ab. Die Antwort der Umfrage wurde in anderen Fällen trotzdem übermittelt. Wenn der ngSurvey-Administrator versucht, die Daten der Befragten einzusehen oder einen Export durchzuführen, verbraucht der Webbrowser übermäßig viel RAM oder der Server gibt einen internen Fehler (500) zurück. Dadurch werden die Umfragedaten unzugänglich, zumindest über die Weboberfläche. Selbst wenn der ngSurvey-Administrator eine Zeichenbegrenzung für die Antwort festlegt, ist der Exploit weiterhin möglich, da die Überprüfung nur clientseitig im Browser erfolgt.
Hinweise: Die „Slider“-Frage könnte ebenfalls mit einer großen Ganzzahl anstelle eines Strings anfällig sein. Dies konnte in meiner lokalen Umgebung nicht bestätigt werden.
dospayload ein (alles andere funktioniert auch, aber ich werde diesen String zur Demonstration verwenden).import requests den folgenden Code ein: dospayload = "A" * 123456789.burp0_json. Sie wird wie folgt aussehen: "value" : "dospayload"."value" : dospayload.Der endgültige Code sollte so aussehen:

Ich habe keinen Weg gefunden, Text- oder Kommentarfelder von anderen Antworttypen (Einzelauswahl, Dropdown-Liste usw.) zu unterscheiden. Ich glaube, sie werden von der Anwendung anhand ihrer ID identifiziert. Wenn Sie einen Weg finden, ein funktionierendes Skript zu erstellen, das eine URL als Eingabe nimmt und die Exploitation-Schritte ausführt, werde ich es gerne referenzieren.