Sichere Python Markdown Library [geschlossen]

8

Ich möchte Benutzern ermöglichen, Rich-Text-Kommentare zu hinterlassen, möglicherweise mithilfe von Abschriften. Ich habe die Bibliotheken installiert, die auf Reddit verwendet werden, bin aber besorgt über den Javascript-Injektionsangriff, der letztes Jahr stattfand, zumal ich immer noch nicht genau weiß, wie der Angriff durchgeführt wurde. Sollte ich mich noch um die Kommentarsicherheit kümmern? Gibt es eine Testzeichenkette, die ich durch mein System legen kann, um nach den gleichen Fehlern zu suchen, die reddit genommen haben?

    
MichaelBlume 01.03.2010, 18:52
quelle

3 Antworten

4

reddit verwendet die Rabatt Abschlag Bibliothek jetzt.

    
jedberg 06.03.2010 17:26
quelle
4

Python-Markdown - der "Standard" mehr oder weniger - hat eine "Safe Mode" -Funktion das entkommt HTML-Tags. Das sollte ausreichen, um den meisten HTML-Injection-Angriffen entgegenzuwirken.

    
Wander Nauta 02.03.2010 10:52
quelle
2

Die anderen Antworten erwähnen den abgesicherten Modus von Python-Markdown, aber das ist jetzt veraltet. Die Autoren von Python-Markdown wurden zitiert:

  

"safe-mode" war eine schlechte Namenswahl, die wir weiterhin für rückwärts verwenden   Vergleichbarkeit (alter Code funktioniert immer noch mit unseren neueren Versionen). Was es wirklich ist   Dies ist ein Nicht-Markup-Modus. Mit anderen Worten, es ist nur eine Möglichkeit, rohes HTML zu verbieten   und garantiert wirklich keine Sicherheit.

Sie empfehlen jetzt, einen HTML-Desinfizierer wie Bleach zu verwenden, um die Markdown-Ausgabe zu bereinigen. mdx_bleach ist eine Python-Markdown-Erweiterung, die genau das tut. Haftungsausschluss: Ich bin der Autor dieser Erweiterung.

Da es HTML5lib verwendet, um Dokumentfragmente auf die gleiche Weise wie Browser zu parsen, ist Bleach extrem widerstandsfähig gegenüber unbekannten Angriffen, viel mehr als auf regulären Ausdrücken basierende Desinfektionsmittel.

    
Wenzil 16.04.2015 10:38
quelle