Soll der Billion Laughs Attack in C # funktionieren?

8

Ich versuche den XML-Code von einer MSDN-Magazinseite zu testen, wo dies steht Die folgenden Codezeilen führen bei der Verarbeitung zu einer Erhöhung der Speicherbelegung um bis zu 3 GB.

%Vor%

Als ich versuchte, diesen Text in Visual Studio in eine XML-Datei einzufügen, zeigte sich tatsächlich eine Zunahme des Arbeitsspeichers und der CPU-Auslastung. Wenn ich jedoch versuchte, es in eine Textdatei anstatt in eine XML-Datei einzufügen und sie mit c # zu laden, hatte das keinerlei Auswirkungen.

Update: Ich dachte, die LoadXml-Methode sollte Auswirkungen haben, aber ich denke, das ist nicht der Verarbeitungsteil. Als ich versuchte, das erste Kind zu bekommen, warf es (d. H. C #) eine Ausnahme auf, die anzeigte, dass MaxCharactersFromEntities überschritten wurde.

Update: Hier ist auch mein Code:

%Vor%     
J. Rahmati 07.06.2013, 20:36
quelle

1 Antwort

8

Dieser Angriff nutzt eine anfällige Funktion XML .

Durch Ausführen eines XML-Parsers werden die Entitäten rekursiv erweitert und belegen eine große Menge an Speicher Es als reinen Text zu lesen, wird überhaupt nichts tun.

    
SLaks 07.06.2013, 20:39
quelle

Tags und Links