Apache Struts 2 -ohjelmistokehyksestä korjattu kriittinen haavoittuvuus | Traficom

Apache Struts 2 -ohjelmistokehyksestä korjattu kriittinen haavoittuvuus

13. joulukuuta 2023 klo 14.35, päivitetty 15. joulukuuta 2023 klo 15.20

Apache-projektin tuottamassa web-sovellusten toteuttamiseen käytettävässä avoimen lähdekoodin Struts 2 -ohjelmistokehyksessä on havaittu kriittinen haavoittuvuus CVE-2023-50164. Haavoittuvuutta hyväksikäyttämällä hyökkääjä voi suorittaa verkon yli kohteessa mielivaltaista koodia ja ottaa mahdollisesti haltuunsa haavoittuvan järjestelmän. Haavoittuvuuden korjaamiseen on julkaistu ohjelmistopäivitys, joka tulee ottaa käyttöön välittömästi.

Apache Software Foundation julkaisi 9.12.2023 haavoittuvuustiedotteen vakavasta mielivaltaisen koodin suorittamisen verkon yli mahdollistavasta (RCE) haavoittuvuudesta Struts 2 -ohjelmistokehyksessä. Haavoittuvuus liittyy tiedoston lautauksen toteuttamiseen käytettävän komponentin syötetietojen käsittelyn puutteellisuuteen ja sen seurauksena mahdolliseen haittakoodin suorittamiseen haavoittuvalla web-palvelimella.

Apache Struts 2 on varsin yleisesti käytetty ohjelmistokehys Java-pohjaisten web-sovellusten toteuttamisessa. Haavoittuvuuden laajempaa esiintyvyyttä on kuitenkin vaikeaa arvioida koska se liittyy vain tiettyyn yksittäiseen toiminnallisuuteen, joka ei välttämättä ole käytössä sellaisenaan Struts 2 -ohjelmistokehystä käyttävässä web-sovelluksessa.

Korjaava ohjemistoversio tulee ottaa käyttöön viipymättä heti kun se on omien ympäristöjen osalta mahdoilista tai heti kun se on käytössä olevan haavoittuvan ohjelmiston valmistajalta tarjolla.

Tilanne 13.12.2023:

Haavoittuvuuden hyväksikäyttömenetelmä on julkisesti tiedossa mutta varsinaista hyväksikäytön havainnollistavaa esimerkkikoodia ei ole vielä yleisesti saatavilla. Haavoittuvuuden aktiivisesta hyväksikäytöstä ei ole vielä merkkejä mutta tilanne saattaa muuttua hyvinkin nopeasti.

Useilla ohjelmistovalmistajilla on edelleen kesken tutkinta, siitä koskeeko haavoittuvuus heidän tuotteitaan ja sen johdosta on hyvä seurata aktiivisesti oman organisaation käytössä olevien Java-pohjaisten web-sovellusten valmistajien haavoittuvuustiedotteita ja toimia niiden antamien ohjeiden mukaisesti haavoittuvuuden hyväksikäytön estämiseksi.

Päivitys 15.12.2023:

Haavoittuvuuden hyväksikäyttöyrityksiä perustuen julkiseen PoC-menetelmään on havaittu maailmalla mutta meillä ei ole tiedossa tietomurtotapauksia, joissa hyväksikäyttö olisi kuitenkaan vielä onnistunut. Haavoittuvuuden korjaavan version käyttöönotto kannattaa priorisoida hyvin korkealle, jotta ei päädy ensimmäisten onnistuneiden tapausten joukkoon.

 

Haavoittuvuuden kohde

  • Apache Struts 2.0.0 - 2.5.32
  • Apache Struts 6.0.0 - 6.3.0.1
     

Mistä on kysymys?

Päivitä käyttöön haavoittuvuuden korjaavat ohjelmistoversiot valmistajan ohjeiden mukaisesti:

  • Struts 2.5.33
  • Struts 6.3.0.2 tai uudempi

Mitä voin tehdä?

Valmistajan haavoittuvuustiedote: Apache Security Bulletin S2-066

NIST NVD haavoittuvuustieto: CVE-2023-50164

Cisco tiedote haavoittuvuuden vaikutuksiin liittyen: Apache Struts Vulnerability Affecting Cisco Products: December 2023

RedHat tiedote haavoittuvuudesta: CVE-2023-50164

Palvelimet ja palvelinsovellukset

Palvelinten ja palvelinohjelmistojen haavoittuvuudet koskevat esimerkiksi sähköisten asiointipalvelujen tarjoajia. Tyypillisiä kohteita ovat palvelinten käyttöjärjestelmät ja www- tai sähköpostipalvelinohjelmistot kuten esimerkiksi SunOS, Linux, Apache, IIS tai Sendmail.

Etäkäyttö

Etäkäyttöisesti tehtävän hyökkäyksen voi tehdä tietoverkkoyhteyden tai vastaavan kautta ilman että pääsee itse kohteena olevan järjestelmän luokse.

Ilman käyttäjän toimia

Ilman käyttäjän toimia tapahtuva hyökkäys kohdistuu suoraan haavoittuvuuteen ilman että järjestelmän käyttäjältä vaaditaan mitään toimia hyökkäyksen onnistumiseksi. Käyttäjän ei esimerkiksi tarvitse selailla www-sivuja tai käynnistää ohjelmaa tietokoneessa, vaan hyökkäys onnistuu ilman käyttäjän apua.

Ilman kirjautumista

Hyökkäys ei vaadi kohteena olevaan järjestelmään kirjautumista. Vastakohtana ovat sellaiset hyökkäykset, jotka vaativat käyttäjätunnuksen ja salasanan käyttöä ja esimerkiksi komentojen suorittamista järjestelmään kirjautuneena.

Komentojen mielivaltainen suorittaminen

Komentojen mielivaltaisen suorittamisen mahdollistavaa haavoittuvuutta on pidettävä vakavana, sillä se tarkoittaa sitä, että hyväksikäyttäjä voi käyttää kohteena olevaa järjestelmää aivan kuin sen tavallinen käyttäjäkin. Se voi johtaa myös siihen, että järjestelmään murtautunut hyökkääjä voi ladata verkon kautta järjestelmään omia ohjelmiaan suoritettavaksi.

Suojauksen ohittaminen

Suojauksen ohittamisella tarkoitetaan sitä, että haavoittuvuutta hyväksikäyttämällä ohitetaan järjestelmän käytön rajoittamiseksi tehty suojaus esimerkiksi liikennöimällä palomuurin ohi suojattuun verkkoon.

Haavoittuvuuden havainnollistava esimerkkikoodi

Proof of concept.

Korjaava ohjelmistopäivitys

Ohjelmisto- tai laitevalmistaja julkaisee tavallisesti pian uuden version tai osittaisen päivityksen ohjelmistoon tai käyttöjärjestelmään sen jälkeen kun haavoittuvuus on tullut julki. Päivitys voi olla saatavilla samalla kun haavoittuvuuskin julkaistaan, mutta usein sitä joudutaan odottelemaan jonkin aikaa.


15. joulukuuta 2023 klo 15.20 Päivitetty tilanne haavoittuvuuden hyväksikäytön havaintojen osalta.