Come sfruttare una politica CORS mal configurata quando è richiesto un token di autorizzazione per utente?

4

Recentemente abbiamo ottenuto un'API per la verifica della sicurezza. Le intestazioni CORS dell'API sembrano configurate in modo errato come quando abbiamo provato a richiedere l'endpoint con http://attacker.com come origine il server ha restituito quanto segue nelle intestazioni di risposta:

access-control-allow-credentials: true    
access-control-allow-methods: GET, POST, DELETE, PUT    
access-control-allow-origin: http://attacker.com

Sebbene il sito sia vulnerabile, ma il problema che ci impedisce di creare un impatto sugli exploit è che il sito invia un token di autorizzazione in ogni richiesta, che è univoco per ogni utente. Qualche idea su come andare avanti in una situazione come questa?

    
posta StackB00m 07.02.2017 - 12:38
fonte

1 risposta

3

Le richieste di origine incrociata sono pericolose perché consentono di utilizzare la sessione dell'utente per effettuare richieste come tale utente. Funziona perché un cookie viene inviato insieme alla richiesta e autentica implicitamente l'utente nell'applicazione Web sotto attacco.

Se l'applicazione non utilizza i cookie ma utilizza un'intestazione per mantenere il token di sessione, il rischio di richieste di origine incrociata viene mitigato. Puoi ancora fare richieste al server, ma non sotto la sessione dell'utente.

    
risposta data 07.02.2017 - 13:13
fonte

Leggi altre domande sui tag