Esiste il rischio di abilitare CORS con un carattere jolly su S3?

8

Per impostazione predefinita, Amazon S3 blocca le richieste di origine incrociata. Tuttavia, consente agli utenti di configurare policy CORS per bucket. Offre controlli abbastanza elaborati per quali domini e metodi che l'utente desidera abilitare.

Per me, impostazioni predefinite così conservatrici e impostazioni a grana fine suggeriscono che c'è qualche motivo per cui non potrei voler lasciare che tutti i miei bucket rispondano con Access-Control-Allow-Origin: * , ma per la vita di me non riesco a pensare ad un in un unico modo potrebbe essere abusato.

S3 fornisce già una politica ACL abbastanza elaborata e gli utenti non possono autenticarsi tramite i cookie (per quanto ne so), quindi il problema non sembra essere la gente che accede a informazioni che non dovrebbero essere in grado di ottenere.

S3 offre anche un modo completamente separato per bloccare completamente l'accesso a determinati domini, compresi i vecchi tag di immagine, quindi non sembra essere un problema di hotlinking.

C'è qualche rischio per una politica CORS super-aperta?

    
posta user2719333 27.08.2013 - 23:29
fonte

2 risposte

1

Se si utilizza il servizio web Amazon solo per gestire contenuti pubblici non protetti come la memorizzazione di immagini del profilo o qualcos'altro, l'apertura di cors policy non dovrebbe porre alcun thread ma se si sta usando per gestire alcune informazioni sensibili, si dovrebbe bloccare la richiesta cors.

A volte capita che il sito Web consenta cors, ma inseriscono alcune informazioni sensibili come il token csrf ecc. che possono essere utilizzate dall'attentatore in intento malevolo.

Ci sono numerosi casi di mancata implementazione della politica corsica che porta l'attaccante a rubare dati sensibili, token ecc. Ci sono molte segnalazioni di hackerone su questo attacco.

link

link

    
risposta data 29.04.2017 - 17:37
fonte
1

CORS è progettato per controllare il comportamento del browser. Per impostazione predefinita, un browser Web può recuperare il contenuto da un bucket AWS S3 tramite un collegamento diretto, ad esempio navigando verso l'URL.

Con le impostazioni CORS corrette puoi consentire ai browser che visitano altri domini di recuperare questi file tramite AJAX. Una politica CORS super-aperta permetterà a qualsiasi sito web di recuperare i tuoi file tramite AJAX (possibilmente all'insaputa dell'utente). Una politica CORS "chiusa" non ti permetterà di nascondere tutto ciò che hai nel secchio S3, non è progettato per.

La parte di rischio dipende molto dal tuo caso d'uso esatto. Supponiamo che archivi articoli pubblici su S3 e desideri che il tuo sito Web sia in grado di recuperarli nel browser e visualizzarli. Una politica super-aperta, in questo caso, renderà banale la possibilità per gli altri di copiare il tuo sito senza dover raschiare i tuoi documenti perché li servirai volentieri anche per loro.

In generale, direi che una politica super-aperta per S3 non è un problema.

    
risposta data 28.07.2017 - 21:46
fonte

Leggi altre domande sui tag