[rootshell] Security Bulletin #22

01. ICQ Wachtwoordverificatie Bug

Het lijkt erop dat ICQ opnieuw een bug heeft. Deze melding is binnengekomen van een van onze gebruikers en is inmiddels bevestigd door Rootshell.

***

Van: zack <zallison@rice.edu> Datum: donderdag 13 augustus 1998 Onderwerp: Groot beveiligingslek in ICQ

Bericht:

Ik ontwikkel een Linux ICQ-kloon. Nadat een van mijn gebruikers zijn wachtwoord verkeerd had ingevoerd, merkte ik dat hij toch toegang kreeg tot zijn account. Na verder onderzoek heb ik het volgende ontdekt:

Het is mogelijk om bij de ICQ-servers in te loggen als een willekeurige gebruiker zonder diens wachtwoord te kennen. Dit kan leiden tot diverse vormen van compromittering. Dit is geen eenvoudige spoofing.

Hoe het werkt

De Mirabilis-server gebruikt een wachtwoord van 8 tekens. De officiële clients voeren een bereikcontrole (range checking) uit en verzenden alleen wachtwoorden van 8 tekens of minder. Linux-klonen, waaronder de mijne, doen dit niet.

Wanneer er een wachtwoord van 9 tekens of meer wordt verzonden, treedt er een buffer-overflow op, waardoor inloggen mogelijk wordt.

De exploit

  1. Download een willekeurige ICQ-kloon (bijvoorbeeld: http://hookah.ml.org/zicq).
  2. Stel de UIN in op de UIN van het doelwit.
  3. Stel het wachtwoord in op 123456789 (net groot genoeg om de buffer te laten overlopen).
  4. Start het ICQ-programma.

Indien succesvol, zal het programma inloggen en verbinden als die gebruiker. Eventuele wachtende (offline) berichten worden vervolgens aan jou geleverd. Je kunt nu berichten en URL's verzenden en ontvangen, voor zover de client dit toestaat.

Opmerkingen

  • Dit is geen spoofing; je bent daadwerkelijk ingelogd als de geselecteerde UIN. In tegenstelling tot spoofing kun je hierdoor ook berichten ontvangen.
  • Deze methode werkt voor alle UIN's, zolang er niet al iemand met die UIN is ingelogd.

Mirabilis / AOL moet dit probleem dringend oplossen.

Zack