2010-09-20 6 views
6

So che ci sono già alcune domande su SO riguardo l'exploit del pad Oracle, ma nessuno di loro spiega come scarica web.config. Gestisco un paio di app ASP .NET che ho già testato utilizzando i fattori di mitigazione consigliati da Microsoft, ma ho ancora paura che le persone siano in grado di ottenere il web.config.Oracle padding exploit - come scarica web.config?

Qualcuno può spiegare come lo fa o anche fornire un collegamento a uno strumento che posso utilizzare per testare il mio sito. Trovo che la spiegazione ufficiale di questa parte dell'attacco sia davvero carente.

L'attacco che è stato mostrato in pubblico si basa su una caratteristica in ASP.NET che permette di file (in genere JavaScript e CSS) da scaricare, e che è fissato con una chiave che viene inviato come parte della richiesta. Sfortunatamente se si è in grado di forgiare una chiave è possibile utilizzare questa funzione per scaricare il file web.config di un'applicazione (ma non i file all'esterno di dell'applicazione).

+0

Beh, se hanno dato informazioni che sarebbe un po 'pericoloso! – redsquare

+0

Apparentemente è là fuori su un video ma non riesco a trovarlo. Le informazioni sono già disponibili per il resto dell'exploit. – Alex

+0

Non è necessario trasmettere le informazioni attraverso un sito q & a pubblico. – redsquare

risposta

0

Scott Guthrie ha un post che lo spiega in una certa misura.

+4

"Un oracolo nel contesto della crittografia è un sistema che fornisce suggerimenti mentre le poni domande." Non ha nulla a che fare con Oracle (il produttore di software). Oracle PR non può essere troppo felice per la nomenclatura qui ... – Thilo

+1

Questo post non aiuta con i dettagli su web.config che è ciò che il richiedente vuole sapere –

3

Guys - la risposta è che una volta che hanno ottenuto il machineKey, possono utilizzare la chiave per recuperare i file utilizzando un altro elemento in ASP.NET

"In ASP.NET 3.5 Service Pack 1 e ASP.NET 4.0 esiste una funzione che viene utilizzata per servire i file dall'applicazione Questa funzione è normalmente protetta dalla chiave della macchina, tuttavia, se la chiave della macchina è compromessa, questa funzionalità è compromessa, che va direttamente a ASP.NET e non a IIS Le impostazioni di sicurezza di IIS non sono applicabili Una volta che questa funzionalità è stata compromessa, l'utente malintenzionato può scaricare i file dall'applicazione, incluso il file web.config, che spesso contiene password.

Versioni di A SP.NET precedente a ASP.NET 3.5 SP1 non ha questa funzionalità, ma è ancora vulnerabile all'attacco della chiave del computer principale. "

(vedere il post in fondo qui: http://forums.asp.net/t/1603799.aspx dal team asp.net)

+0

Questa 'funzione' sembra essere fornita da WebResource.axd e/o ScriptResource.axd. Non ho visto conferme che disabilitando/rimuovendo queste cose risolverà il problema di divulgazione di file web.config, ma sembra probabile. Sembra che l'attacco possa essere in grado di recuperare la chiave della macchina, che è il prerequisito per attaccare questi file. – intoOrbit

+1

Ho provato a utilizzare l'approccio WebResource.axd con i metodi 'ClientScript' e da quello che posso dire, non solo i file che si desidera servire in questo modo devono essere compilati come risorse incorporate, ma è necessario aggiungere una dichiarazione nel AssembilyInfo anche. Se non sto facendo nulla di tutto ciò, come funziona questo exploit? E come ottiene qualcosa di così critico come web.config? –

0

afaik va in questo modo:

  • questi vengono colpiti: WebResource.axd e ScriptResource.axd, entrambi utilizzano una e n crittografato/valore firmato che asp.net prova a verificare se è valido
  • a causa di differenze nella risposta quando i file sono o non sono validi, possono rendere l'attacco padding.
  • una volta che l'attacco ha successo possono generare una richiesta di risorse come se fosse originariamente emesso da asp.net

Ora, per quanto ne sapevo, sia di quelli si suppone per servire le risorse incorporate, ma suppongo che non sia il caso (Scott Gu ha menzionato nei commenti del suo post quelli che sono stati usati nell'attacco mostrato).