Frage

Für meine Post Einheit speichern i HTML und Abschlag in der Datenbank (HTML aus Abschlag umgewandelt). HTML ist für die Darstellung auf Seite und Abschlag für die Bearbeitung Fähigkeit (mit WMD). Ich sanieren HTML vor dem db speichern. Frage: soll ich Abschlag zu sanieren? oder es ist xss sicher, wenn ich es nur wmd-Editor übergeben?

War es hilfreich?

Lösung

Markdown können beliebige HTML enthalten; dies ist ausdrücklich erlaubt. So sollten Sie es sanieren oder zumindest sanieren das Ergebnis davon zu HTML konvertieren, bevor Sie Web-Clients zu senden.

Ich erinnere mich, dass einer der Exploits möglich mit SO in den frühen Tagen ist, dass Sie JS-Gehalt in der Markdown setzen könnten, und Ihren Artikel wer bearbeitet würde diese Skripte in der Vorschau auslösen. Ich weiß nicht, ob dies noch festgelegt ist.

Andere Tipps

Ich habe bemerkt, dass Sie „sanieren HTML vor db Speichern“ und sprechen von XSS-safe im nächsten Satz. Das sind zwei verschiedene Facetten der Eingabevalidierung, und Sie sollten sie nicht vermischen, und adressieren sowohl in Ihrem Entwurf:

  • Sie sollten sicher alle Benutzereingaben in die Datenbank einfügen, das heißt sicherzustellen, dass die Eingabe korrekt entkam (mysql_real_escape_string, Stored Procedures, ORM Bibliotheken usw.)

  • Sie sollten sicher Ausgabe in HTML / JS (einschließlich Eingang WMD), zu entfernen oder alle Sequenzen zu entkommen, die in XSS Exploits und andere Unannehmlichkeit gedreht werden kann.

In Bezug auf die Frage, bin ich mit Chris - seit Abschriften HTML enthalten können, muss es desinfiziert werden

.

Nur ein Zusatz:
Diese Frage verwenden WMD kam

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top