RedTomahawk

In questo blog voglio mostrarvi una serie di attacchi che possono essere sferrati a voi o ai sistemi informatci aziendali. Il WWW è ormai diventata la strada digitale per eccellenza. Come nel mondo reale se gli edifici sono ben protetti potremmo sentirci sicuri all'interno delle nostre "mura domestiche", mentre se lasciamo le porte aperte, prima o poi qualcuno proverà ad entrare.

venerdì, gennaio 13, 2006

Ottenere i sorgenti delle pagine WEB

Il problema fondamentale della sicurezza dei sistemi informatici, è dato dal fatto che le aziende pensano che un programmatore neolaureato che guadagna 900 euro al mese, abbia le stesse competenze e uguale produttività di un professionista con 10 anni di esperienza che invece guadagna 3000 euro al mese. Questo fa si che interi portali aziendali vengano sfondati di continuo da chicchessia perché l'azienda vuole risparmiare.

Dopo questo sfogo, eccovi un trucchetto per accedere a utili informazioni di debug che possono rivelarsi assai preziose per lo svolgimento di un penetration test.

Su tanti siti non vengono mai effettuati i controlli di formato sulle stringhe che vengono passate dal client al server, lasciando passare oltre a SQL malevolo, quei caratteri che poi possono interropere il flusso di esecuzione degli scripts server-side. Un esempio è dato dagli apici.

Mettiamo caso che vogliamo recuperare la stringa di connessione al DB dell'applicazione. Come ci comportiamo?
Semplice.
Inseriamo nel campo USERID una stringa del tipo: hac'ker (attenzione all'apice).
Scriviamo la stessa cosa nel campo password.
Mettiamo caso che il tentativo precedente di SQL Injection sia andato a buon fine, e che quindi abbiamo la certezza che non vengano fatti controlli di formato server-side.
Facciamo la SUBMIT e magia:

Error Type:
Microsoft OLE DB Provider for SQL Server (0x80040E14)
Line 1: Incorrect syntax near 'ker'.
/login/authentication.inc, line 18

Abbiamo così identificato che al path www.victim.com/login/ esiste un file authentication.inc che contiene il codice per la connessione al DATABASE di autenticazione.

Come Proteggersi?

  1. Verificare sempre il contenuto dei parametri passati al server.
  2. Abilitare l'esecuzione dei files .inc dal modulo asp nella configurazione del sito web. In questo modo IIS interpreterà i files .INC come delle pagine ASP e non come dei semplici files di testo.

0 Comments:

Posta un commento

Links to this post:

Crea un link

<< Home

Statistiche sito,contatore visite, counter web invisibile