Sind JSON-Webdienste anfällig für CSRF-Angriffe?

Ich erstelle einen Webdienst, der ausschließlich JSON für seinen Anforderungs- und Antwortinhalt verwendet (d. H. Keine formularkodierten Nutzdaten).

Ist ein Webdienst anfällig für CSRF-Angriffe, wenn Folgendes zutrifft?

IrgendeinPOST Anfrage ohne JSON-Objekt der obersten Ebene, z.{"foo":"bar"}wird mit einer 400 abgelehnt. Beispiel: aPOST Anfrage mit dem Inhalt42 würde also abgelehnt werden.

IrgendeinPOST Anfrage mit einem anderen Inhaltstyp alsapplication/json wird mit einer 400 abgelehnt. Beispiel: aPOST Anfrage mit Inhaltstypapplication/x-www-form-urlencoded würde also abgelehnt werden.

Alle GET-Anfragen werdenSicherund daher keine serverseitigen Daten ändern.

Clients werden über ein Sitzungscookie authentifiziert, das ihnen der Webdienst gibt, nachdem sie über einen POST mit JSON-Daten, z.{"username":"[email protected]", "password":"my password"}.

Zusatzfrage: SindPUT undDELETE Anfragen, die jemals für CSRF anfällig waren? Ich frage, weil es scheint, dass die meisten (alle?) Browser diese Methoden in HTML-Formularen nicht zulassen.

BEARBEITEN: Element 4 hinzugefügt.

BEARBEITEN: Viele gute Kommentare und Antworten, aber niemand hat einen bestimmten CSRF-Angriff angeboten, für den dieser Webdienst anfällig ist.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage