Background Print only logo
Viestintäviraston etusivulle
Etusivu | | | | | | | |

CERT-FI

PL 313
00181 Helsinki
Puh: 09 6966 510
Fax: 09 6966 515

Salausavaimet

Viestintävirasto

Itämerenkatu 3 A
00180 HELSINKI
Puh: 09 6966 500
Fax: 09 6966 410

Tarkat yhteystiedot

Tietoa evästeistä

Etusivu > Haavoittuvuudet > 2008 > CERT-FI haavoittuvuustiedote 140/2008

CERT-FI haavoittuvuustiedote 140/2008

Palvelimet ja palvelinsovellukset Työasemat ja loppukäyttäjäsovellukset Verkon aktiivilaitteet Matkaviestimet Sulautetut järjestelmät Muut

17.11.2008

Haavoittuvuus SSH-protokollassa

     
Kohde: - palvelimet ja palvelinsovellukset
- työasemat ja loppukäyttäjäsovellukset
- verkon aktiivilaitteet
Lisätietoja
Hyökkäystapa: - etäkäyttö
Lisätietoja
Hyväksikäyttö: - luottamuksellisen tiedon hankkiminen
Lisätietoja
Ratkaisu: - korjaava ohjelmistopäivitys
- ongelman rajoittaminen
Lisätietoja

SSH, eli Secure Shell, on protokolla jonka avulla käyttäjät voivat muodostaa turvallisen, salatun yhteyden internetin yli. Sen avulla voidaan esimerkiksi suorittaa komentoja etäjärjestelmässä ja siirtää tiedostoja tietokoneelta tai palvelimelta toiselle. Protokollaa tukevia palvelin- ja asiakassovelluksia, eli server ja client -sovelluksia, on saatavilla useimmille käyttöjärjestelmille. SSH on korvannut käytännössä telnetin ja ftp:n jotka lähettävät muun muassa kirjautumistiedot eli tunnuksen ja salasanan selkokielisenä.

SSH-protokollasta on löytynyt suunnitteluvirheestä johtuva protokollatason haavoittuvuus. Protokolla määrittelee paketin pituuden 32-bittiä pitkässä kentässä. Kenttää käytetään määrittelemään kuinka paljon tietoa pakettia kohden odotetaan, joten kentän sisältämän tiedon salaus pitää purkaa ennenkuin loput paketista on vastaanotettu ja viestin eheyden tarkistuksessa käytettävä MAC-koodi (Message authentication code) voidaan tarkistaa.

Syöttämällä kohteelle lohkollinen salattua tietoa SSH-paketin ensimmäisenä osana, hyökkääjä voi saada SSH-palvelimen kohtelemaan tuloksena saatavaa selkokielistä tekstiä uuden paketin ensimmäisenä osana. Hyökkääjä voi sen jälkeen syöttää SSH-yhteyteen satunnaisia lohkoja salattua tietoa ja päätellä kuinka paljon tietoa tarvitsee lähettää ennenkuin palvelin päättelee koko paketin vastaanotetuksi ja lopettaa vastaanottamisen tuottamalla MAC-virheen. Virheilmoituksen laukaisemiseen tarvittava määrä tietoa paljastaa tällöin 32-bittisen paketin pituus -kentän sisällön. Lohkosalaimissa käytettyjen Cipher block-chaining (CBC) -tilan ominaisuuksien vuoksi tämän 32-bittisen kentän arvo paljastaa myös saman mittaisen osan lähetetystä paketista selkokielisenä. Lohkoja tarvitsee kuitenkin lähettää SSH-yhteyteen palvelimen toteutuksesta riippuen huomattavia määriä ennenkuin MAC-tarkistus käynnistyy.

HAAVOITTUVAT OHJELMISTOT:

  • OpenSSH 4.7p1 sekä muut SSH-protokollaa käyttävät ohjelmistot
  • SSH Tectia Client ja Server ja ConnectSecure 6.0.4 ja vanhemmat 6.x sarjassa
  • SSH Tectia Client ja Server ja Connector 5.3.8 ja vanhemmat 5.3.x sarjassa
  • SSH Tectia Client ja Server ja Connector 5.2.4 ja vanhemmat 5.x sarjassa
  • SSH Tectia Client ja Server ja Connector 4.4.11 ja vanhemmat 4.x sarjassa
  • SSH Tectia Server for Linux on IBM System z 6.0.4
  • SSH Tectia Server for IBM z/OS 6.0.1 ja 6.0.0
  • SSH Tectia Server for IBM z/OS 5.5.1 ja vanhemmat
  • SSH Tectia Client 4.3.3-J (Japani) ja vanhemmat 4.x-J sarjassa
  • SSH Tectia Client 4.3.10-K (Korea) ja vanhemmat 4.x-K sarjassa

RATKAISU- JA RAJOITUSMAHDOLLISUUDET:

Ongelman voi poistaa käyttämällä haluttua lohkosalainta CBC-tilan sijaan CTR-tilassa. Esimerkiksi OpenSSH-palvelimessa on toteutettu AES-salaus CTR-tilassa. Halutun algoritmin ja tilan käytön voi helpoiten varmistaa rajoittamalla tarjolla olevaa salausalgoritmien valikoimaa salauksen kättelyvaiheessa.

SSH Communication Securityn tuotteiden ja OpenSSH:n korjatuissa versioissa voidaan turvallisesti käyttää CBC-moodia.

LISÄTIETOA:

PÄIVITYSHISTORIA:

17.11.2008, kello 16.34: Julkaistu
18.11.2008, kello 17.30: Päivitetty SSH Communications Securityn tuotteiden osalta
18.3.2009, kello 17.16: Päivitetty OpenSSH:n osalta

Sivua päivitetty 19.03.2009   Tulostusversio Tulostusversio