Manipolare l'informazione alla radice

Come essere la più grande press-agency italiana, avere un sistema editoriale vulnerabile e vivere felici...

 Molti di voi sicuramente conosceranno il portale Ansa.it.

Assieme a Repubblica.it, Google News (e qualche altro portale che posso aver dimenticato) rappresenta uno dei bookmark d'informazione preferiti per milioni di navigatori italiani. Molti di voi sicuramente conoscono il portale ANSA.it. 

ANSA è leader conclamato fra le agenzie di stampa italiane ed uno dei più autorevoli provider di notizie per tutti i quotidiani ed i web media disponibili.

Scontato ritenere che le notizie ANSA siano "trusted".

Molte delle news  che abbiamo modo di leggere sui portali d'informazione/aggregazione nascono da "agenzie" dell'ANSA.  Molti dei notiziari "push" che riceviamo sui nostri cellulari sotto forma di SMS e/o MMS nascono da "agenzie" ANSA. Gli stessi feed RSS  che infarciscono blog e siti d'ogniddove hanno la medesima provenienza.

La radice alla base di questa capillare distribuzione di informazione è una: il sistema editoriale ANSA.

Ebbene, chiunque abbia una minima cognizione in fatto di web applications può improvvisarsi collaboratore ANSA e far circolare liberamente notizie  "di fantasia" in giro per internet; basta essere oculati nella scrittura e non "spararla troppo grossa"...

Due dei pilastri del sistema editoriale ANSA sono le webapp disponibili agli indirizzi:

seanweb.ansa.it

awesweb.ansa.it

Le due applicazioni sono pressocchè identiche e, verosimilmente, svolgono il ruolo di aggregatore delle notizie inviate dai collaboratori ANSA dislocati in ogni angolo del globo.

La prima cosa che  stupisce è che due siti del genere siano accesibili, senza alcuna forma di autenticazione, a qualunque navigatore...

OK - pensi - hanno esposto solo l'interfaccia di accesso, ma al primo click, verrà richiesta l'autenticazione. Infatti è così...più o meno...;-)

Qualunque tentativo di login fallito rimanda ad una pagina di cortesia; dico di cortesia perche è talmente cortese da rivelarci che alla URL  /<dir>/viewlog.asp è presente una bellissima pagina in cui sono disponibili:

  • indice delle notizie inviate
  • username del collaboratore mittente
  • timestamp della notizia
  • redazione di destinazione


Giusto per avere un'idea, a questo link è disponibile uno screenshot.

OK - per viewlog ci è andata bene - ma qualunque altra risorsa disponibile sotto il path /<dir>/ è protetta da autenticazione: quindi se siamo curiosi...o ci procuriamo una password o nisba.

SQLInjection? Persistent XSS? Social engineering? Brute Forcing?

Niente di tutto ciò, basta il sistema più antico da quando la basic authentication è stata concepita:  USERNAME = PASSWORD.

Scandaloso.

La maggior parte degli account riportati nella pagina viewlog.asp hanno username uguali alle password ed entrambi sono costituiti da 2-3 caratteri.

Nella mente dei progettisti l'autenticazione è stata pensata con l'intento di vincolare ciascun collaboratore alla consultazione delle sole news da lui inviate. Peccato che una cosa è l'autenticazione, altra è l'autorizzazione. La seconda (che ho detto) è...inesistente.

Basta trovare un solo account e con esso è possibile visionare qualunque  notizia inviata da qualunque collaboratore.

E' sufficiente usare un tool che consenta  il tampering delle chiamate HTTP (es. Tamper Data per FireFox) ed inserire nella post di richiesta le credenziali di un qualsiasi account valido:

POST http://seanweb.ansa.it/<dir>/viewXXXX.asp 

Invia i dati:
      file[XXX.WEB]
      username[XXX]
      password[XXX]
      varFtp[XXX.XXX.XXX.XXX]
      backup[]

Ma il grosso del divertimento ha da venire: tornando alla home page è possibile inviare una qualunque notizia alla redazione e, dopo poco tempo, vederla pubblicata sul sito ANSA. Con un pò di fortuna la notizia potrebbe addirittura essere ripresa dai principali news aggregator del Web. 

E' sufficiente, come scritto sopra, un pò di "furbizia" nell'impostazione della notizia in modo che ad un controllo di un supervisore (I suppose...) essa risulti verosimile. Nel workflow di approvazione delle notizie pervenute un controllo umano è infatti sicuramente presente: alcune notizie sono debitamente "tagliate" per adattarsi al formato web, mentre altre sono pubblicate "as is". Ad ogni modo, in taluni casi il gap temporale tra l'acquisizione della notizia e la sua pubblicazione online è talmente breve (3-4 min.) da supporre che le agenzie ricevute siano completamente "trusted" e quindi pubblicate (con le ovvie rielaborazioni) senza verificarne l'autenticità.

Questo modello di gestione, unito alla totale assenza di un adeguato controllo degli accessi,  è gravissimo.

Di seguito qualche screenshot che mette a confronto le notizie acquisite sul sistema editoriale e le stesse dopo la pubblicazione sul portale ANSA. Tutte le notizie qui presentate sono state inviate da veri collaboratori ANSA e non sono state in alcun modo alterate dal sottoscritto.

Link1    Link2     Link3

Per chi non si accontenta ecco la ciliegina sulla torta: un reflective XSS che consente di visualizzare a schermo le coordinate di connessione del database: link

Questo equivale alla concreta possibilità di prendere completo possesso del database tramite attcco al listener ed alterare account e dati presenti.

Quando la radice è malata...

NdR. 

Le vulnerabilità descritte sono state notificate ai gestori di ANSA.it che hanno prontamente provveduto al patching delle anomalie.

Le informazioni contenute in questo documento sono state volutamente desensibilizzate per non rivelare dettagli tecnici relativi


9 Ottobre 2007

Č
ą
Rosario Valotta,
Jun 11, 2009, 12:29 PM
ą
Rosario Valotta,
Jun 11, 2009, 12:32 PM
ą
Rosario Valotta,
Jun 11, 2009, 12:31 PM
ą
Rosario Valotta,
Jun 11, 2009, 12:31 PM
ą
Rosario Valotta,
Jun 11, 2009, 12:29 PM
Comments