Sicherer Node.js-Chat (XSS vermeiden)

Ich baue einen einfachen kleinen Chat mit Node.js und socket.io auf

Wenn ein Benutzer seine Nachricht eingibt, wird sie an alle anderen Benutzer gesendet.

Server sendet die Nachricht:

io.sockets.emit('fromServerToClient', { "message": message });

Client zeigt es an:

socket.on('fromServerToClient', function (data) {
    $('#messages').append(data.message + '<br />');
});

Aber wenn du so etwas schickst<script>alert(1);</script>wird auf jedem Client-Browser ausgeführt.

Dies ist eine schwerwiegende Sicherheitslücke und ich möchte sie so weit wie möglich vermeiden. Ich habe Leute fliehen sehen&, <, > and " Charaktere, aber ich denke nicht, dass es genug ist!

Wie kann ich 100% sicher sein, dass mein Chat keine XSS-Sicherheitslücke aufweist?

Übrigens gebe ich immer den Zeichensatz an, um UTF-7-Angriffe zu vermeiden.

Danke für Ihre Hilfe.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage