Advisory: lanuovastagione.it ed altri [xss e le credenziali amministrative in chiaro]
Sarò sincero. E' tutto il giorno che mi pongo la domanda : "dovrei rilasciare pubblicamente le vulnerabilità rilevate o dovrei contattare direttamente il vendor ed informarlo del tutto?"
Non ce la faccio.
Domenica scorsa parlavo di un interessante argomento. L'importanza dei programmatori nell'era del mondo digitale. Siamo a tre giorni dalle primarie ed ecco come si presenta il comitato per il partito democratico di Walter Veltroni & company. Una catastrofe.
Mi rendo conto di rischiare e anche grosso pubblicando queste informazioni. Ma qualcuno deve pur capire a cosa si va incontro continuando a portare avanti questa politica di settore.. ahimè totalmente errata.
Partiamo da Cross Site Scripting. La pagina index.aspx, attraverso il non controllo della variabile GET t può condurre a differenti exploit. Ecco un esempio. Il codice javascript non codificato HTML è il seguente
1: </xss
2: /*complimenti signori*/
3: style=xss:expression(alert('owned'))
4: >
il quale codificato HTML si trasforma in
1: /* Cyphersec.com
2: 11 settembre 2007
3: www.lanuovastagione.it [index.aspx] || craftato con IE ||
4: variabile GET t non verificata >> XSS
5: */
6:http://www.lanuovastagione.it/gw/producer/index.aspx?t=%3C%2Fxss%2F%2Acomplimenti%20signori%2A%2Fstyle%3Dxss%3Aexpression%28alert%28%27owned%27%29%29%3E
Ma non finisce qui. Le vulnerabilità SQL Injection (su ricerca.aspx) diventano inutili quando possiamo tranquillamente andare a recuperare username e password ed altre informazioni "critiche" dal file web.config. Si avete letto bene. L'applicativo in questione vi mostrerà tutto.. ma proprio tutti i file che sono presenti all'interno della directory virtuale. Come?
Aprite il sito www.lanuovastagione.it nel menù in alto identificate la voce "discorsi ed intervalli" controllate il link a cui porta. DING!
vedete la nostra tanto amata variabile t? si vedete bene. questa variabile.. legge il contenuto della pagina (occhio ai valori querystring) /documenti/indice.htm e ne renderizza il contenuto a video. Bene perfetto.. complimenti ancora.
Come i programmatori .NET sapranno.. le applicazioni web "dovrebbero" archiviare le informazioni importanti in un file chiamato web.config. Questo file non può (e grazie a dio) essere visualizzato a video attraverso una chiamata diretta. Per esempio
1: http://www.lanuovastagione.it/web.config
vi ripoterà ad una pagina .NET la quale v'informerà che non potete visualizzare il suo contenuto perché a livello di architettura il framework non lo permette. giustissimo.
Con dispiacere.. andando a trasformare t=/documenti/indice.htm&<serie di chiave valore> in t=\web.config arriviamo a questo link
1: http://www.lanuovastagione.it/gw/producer/index.aspx?t=/web.config
Cosa ho fatto? ho semplicemente chiesto di chiamare sulla root principale il file web.config. Se notate si aprirà una pagina totalmente bianca (o del colore di background da voi impostato). Tutto qui? No. La pagina è stata correttamente renderizzata.. solo che non è visibile... Ora provate a fare "Visualizza Sorgente Pagina" o (se preferite) "View Source" e copritevi gli occhi.
username e password + databasename del database contenete i contenuti del portale. Poco importa se il database, a prima vista, sembra non essere totalmente esposto su internet. Ma che dire dei valori "impersonateLogin" e "ImpersonatePassword" oppure dei valori contenuti nel ramo "credentials"?
Vergogna.
update : su suggerimento di Denis, utilizzando la dork "inurl:/index.aspx?t=" sono "saltati" fuori altri siti vulnerabili.
http://www.diregiovani.it/gw/producer/index.aspx?t=/web.config
http://www.dsonline.it/gw/producer/index.aspx?t=/web.config
http://www.saperidemocratici.it/gw/producer/index.aspx?t=/web.config
http://www.italiafrica.it/gw/producer/index.aspx?t=/web.config
http://bologna07.festaunita.it/gw/producer/index.aspx?t=/web.config
http://byebye900.festaunita.it/gw/producer/index.aspx?t=/web.config
September 12th, 2007 - 00:01
Naturalmente l’utente utilizzato per accedere al db è ’sa’ così si fanno meglio i danni!!
PAZZESCO!!!
September 12th, 2007 - 13:30
oggi è il 12.09.2007, credo siano passate quasi 24 ora dalla pubblicazione dell’articolo, o poco ci manca.
credo anche tu abbia inviato un avviso ai gestori del sito e…trovo sia deprecabile che a tutt’oggi la falla sia ancora presente.
sai cos’è la cosa ridicola?
che basta una ricerca con google di questo tipo
inurl:”/index.aspx?t=”
per trovare un altro sito, legato alla stessa corrente politica, con lo stesso bug e anche…CON LE STESSE CREDENZIALI!!!
sig..sig..quelli trovati in due pagine di risultati bastano e avanzano.
‘na tristezza
September 12th, 2007 - 13:53
Ho utilizzato la dork proposta. Ne sono saltati fuori altri quattro.
Io non ho parole..
PS = Gli admin sono stati informati.
C’è solo da vedere i tempi di risposta.
September 12th, 2007 - 14:06
fermandosi alle prime due pagine di risultati relativi alla sola ricerca su siti in italiano.
hai notato che le credenziali sono sempre le stesse?
fargli un applauso allo sviluppatore?!?!
premetto che non mi occupo di web application, mi sono solo limitato ad usare quanto da te individuato, ma se lo facessi e per realizzare quei siti intascassi migliaia di euro…bhè..dovrei almeno presentare al cliente un prodotto ben fatto!
una curiosità: cosa ti rispondono i curatori dei siti a cui fai notare la presenza di vulnerabilità?
nel caso specifico hai ricevuto risposta?
September 12th, 2007 - 14:12
mi riferivo a questi
http://bologna07.festaunita.it/gw/producer/index.aspx?t=/web.config
http://byebye900.festaunita.it/gw/producer/index.aspx?t=/web.config
September 12th, 2007 - 14:22
Il problema è uno. Lo sviluppo di questi siti è assegnato sempre alle stesse aziende. Loro creano una piattaforma e la riusano ogni volta che c’è richiesta. La logica è semplice : faccio il lavoro una volta e lo rivendo 10. Il problema.. come in questo caso.. è che tutti i siti che utilizzano la piattaforma sono vulnerabili allo stesso modo.
Ti faccio un esempio , il 16 aprile (http://www.cyphersec.com/?p=60) in un colpo solo evidenziai le vulnerabilità di:
http://www.romanoprodi.it
http://www.incontriamoci.fabbricadelprogramma.it
http://www.ulivo.it
http://www.governareper.it
http://www.lafabbricadelprogramma.it
http://www.rosybindi.it
http://www.paologentiloni.it
http://www.ulivisti.it
http://www.margheritaonline.it
http://www.margheritaperlunione.it
In questo caso l’azienda responsabile dell’applicativo mi rispose prontamente, ringraziandomi e assicurandomi che l’errore era stato preso in carico dal loro team di sviluppo. Il giorno successivo, il problema non era più replicabile.
Nei casi degli advisory qui pubblicati, ho ricevuto solo un paio di email di ringraziamenti. Altre volte, invece, mi è stato chiesto di non effettuare più test senza autorizzazione.
La serietà e la professionalità delle persone, la puoi percepire anche dalle risposte a segnalazioni di questo tipo.
September 12th, 2007 - 14:41
buon lavoro..sia come giudizio che come augurio
September 12th, 2007 - 14:46
Ti ringrazio
A presto!
September 7th, 2008 - 18:04
un giudizio su nTze e’ un vero mago,sul pc anche nella vita!! complimenti uahuahuh che pazzo ciao e ricordati che le persone come te contano molto. ciao
March 1st, 2009 - 23:54
ahah vedo che i bersagli del signor nTze non sono cambiati
(commento 6)