Wie bereits erwähnt lehnt sich diese kleine Serie zur Sicherheit von
HTML5 an meinen
Vortrag
auf der WebTech Conference 2012 an. Womit auch schon das aktuelle Thema
vorgegeben ist: Die mit HTML5 eingeführte Methode
postMessage().
WebSockets dienen dem Aufbau bidirektionaler Verbindungen. Auch das muss
sicher geschehen. Darüber hinaus haben die WebSockets aber noch einen
gewaltigen Nachteil (um es mal höflich zu formulieren).
Cross Origin Requests heben den wichtigsten (um nicht zu sagen einzigen)
Schutz der Webbrowser vor bösartigen JavaScript-Code teilweise auf:
Die Same Origin Policy (die ich
hier
genauer erkläre). Sie verhindert, dass eingeschleuster Schadcode
hemmungslos mit einem Server des Angreifers kommunizieren kann, stört
mitunter aber auch bei harmlosen Anwendungen. HTML5 schafft dafür durch
das Cross Origin Resource Sharing Abhilfe.
Der wichtigste (und eigentlich einzige) Schutz der Webbrowser vor
bösartigen JavaScript-Code ist die Same Origin Policy. Vereinfacht
besagt sie: "Jeder JavaScript-Code darf nur mit dem Server
kommunizieren, von dem er geladen wurde". Das verhindert, dass
eingeschleuster JavaScript-Schadcode hemmungslos mit einem Server des
Angreifers kommunizieren kann, stört mitunter aber auch bei harmlosen
Anwendungen.