Abbiamo api.example.com che comunica con app.example.com, un'app Android nativa e un'app iOS. Vogliamo consentire ad altre terze parti di comunicare con l'API anche se lo desiderano, e come tale abbiamo Access-Control-Allow-Origin: *
header set.
Abbiamo alcune rotte API che non richiedono un'autenticazione precedente come /reset-password
e /login
.
Ogni altra rotta API richiede un token di autenticazione aggiunto ad esso, ad esempio /important-action?authtoken=abc123
. Non accetta i cookie nelle intestazioni o nel corpo delle richieste. app.example.com salva il token di autenticazione in un cookie per preservare la sessione.
Quello che sto cercando di capire è come evil.com possa sfruttare questa configurazione- Può qualcuno dare qualche esempio di come un attacco potrebbe funzionare o fermarmi mi preoccupa e fammi sapere che CSRF non è un rischio applicabile.
Ho letto altre risposte che si riferiscono a "utilizzo dei cookie", ma non chiariscono cosa si intenda esattamente "usare". Nel nostro caso, stiamo memorizzando authtoken in un cookie e aggiungendolo all'URL della richiesta. L'API ignora tutti i cookie inviati nell'intestazione della richiesta.