Jaa


Opi hallitsemaan Microsoft Defender for Endpoint Log4Shell-haavoittuvuutta

Log4Shell-haavoittuvuus on Apache Log4j 2 -kirjauskirjastosta löytynyt koodin etäsuorittamisen (RCE) haavoittuvuus. Koska Apache Log4j 2 on yleisesti käytössä monissa ohjelmistosovelluksissa ja online-palvelut, se edustaa monimutkaista ja suuren riskin tilannetta yrityksille ympäri maailmaa. Kutsutaan nimellä "Log4Shell" (CVE-2021-44228, CVE-2021-45046) se esittelee uuden hyökkäysvektorin, jota hyökkääjät voivat hyödyntää tietojen poimimiseen ja kiristyshaittaohjelmien käyttöönottoon organisaatiossa.

Huomautus

Lisätietoja ja teknisiä tietoja haavoittuvuuksista ja tuotekohtaisista suojaussuosituksista organisaatiosi suojaamiseksi on blogeissa Log4j 2 -haavoittuvuuden ehkäisemisen, havaitsemisen ja metsästyksen estämistä, havaitsemista ja metsästystä käsittelevistä blogeista sekä Microsoft Security Response Centeristä.

Yleiskatsaus etsinnän, valvonnan ja lievennyksen ominaisuuksiin

Defenderin haavoittuvuuden hallinta tarjoaa seuraavat ominaisuudet, joiden avulla voit tunnistaa, valvoa ja lieventää organisaation altistumista Log4Shell-haavoittuvuudelle:

  • Etsintä: Näkyvien laitteiden, sekä Microsoft Defender for Endpoint laitteiden että laitteiden, jotka on löydetty, mutta joita ei ole vielä otettu käyttöön, tunnistaminen perustuu haavoittuvaan ohjelmistoon ja levyllä havaittuihin haavoittuviin tiedostoihin.
  • Uhkien tietoisuus: Yhdistetty näkymä organisaation altistumisen arvioimiseksi. Tämä näkymä näyttää altistumisesi laitetasolla ja ohjelmistotasolla ja tarjoaa pääsyn haavoittuvassa asemassa olevien tiedostojen tietoihin, kuten edellisen kerran, sen edellisen suoritusajan ja edellisen kerran, kun se suoritettiin avoimien porttien kanssa. Näiden tietojen avulla voit priorisoida korjaustoimintoja. Voi kestää jopa 24 tuntia, ennen kuin paljastettuihin laitteisiin liittyvät tiedot näkyvät koontinäytössä.
  • Lievennysasetukset: Käytä lievennysvaihtoehtoja, jotka auttavat pienentämään altistumisriskiäsi.
  • Kehittynyt metsästys: Käytä kehittynyttä metsästystä, jos haluat palauttaa levyllä tunnistettujen haavoittuvassa asemassa olevien log4j-tiedostojen tiedot.

Huomautus

Näitä ominaisuuksia tuetaan Windows 10 & Windows 11, Windows Serverissä, Linuxissa ja macOS:ssä.

Linux-tuki edellyttää Microsoft Defender for Endpoint Linux-asiakasversiota 101.52.57 (30.121092.15257.0) tai uudempaa versiota.

MacOS-tuki edellyttää Microsoft Defender for Endpoint macOS-asiakasversiota 20.121111.15416.0 tai uudempaa versiota.

Lisätietoja tuetuista versioista on kohdassa Tuetut käyttöjärjestelmäympäristöt ja -ominaisuudet.

Näytettyjen laitteiden etsiminen

Upotetun Defenderin haavoittuvuuden hallintaominaisuudet sekä Log4j-tunnistuksen ottaminen käyttöön Microsoft Defender-portaalissa auttavat sinua löytämään Log4Shell-haavoittuvuudelle alttiina olevia laitteita.

Perehdytetyt laitteet arvioidaan olemassa olevien upotettujen Defenderin haavoittuvuuden hallintaominaisuuksien avulla, jotka voivat löytää haavoittuvassa asemassa olevia ohjelmistoja ja tiedostoja.

Log4j-tunnistus on otettava käyttöön löydetyissä mutta ei vielä perehdytetyissä laitteissa. Tämä käynnistää luotaimia samalla tavalla kuin laitteen etsintä tutkii aktiivisesti verkkoasi. Tämä sisältää useiden perehdyttyjen päätepisteiden (Windows 10+ ja Windows Server 2019+ laitteiden) tarkastelun ja vain aliverkkojen sisällä tarkastelun, jotta voidaan tunnistaa laitteet, jotka ovat haavoittuvia ja etäkäytössä CVE-2021-44228:lle.

Log4-tunnistuksen ottaminen käyttöön:

  1. Siirry kohtaan Asetukset>Laitteen etsinnän>etsintäasetukset.
  2. Valitse Ota Log4j2-tunnistaminen käyttöön (CVE-2021-44228).
  3. Valitse Tallenna.

Näyttökuva asetuksesta, joka ottaa log4j2-tunnistuksen käyttöön.

Näiden luotainten suorittaminen käynnistää log4j-vakiovuon aiheuttamatta haitallisia vaikutuksia tutkittavaan laitteeseen tai koelaitteeseen. Itse tutkiminen tehdään lähettämällä useita HTTP-pyyntöjä löydettyihin laitteisiin, kohdistamalla ne yleisiin verkkosovellusportteihin (esimerkiksi - 80 8000 8080 443 8443) ja URL-osoitteisiin. Pyyntö sisältää HTTP-otsikoita, joissa on JNDI-hyötykuorma, joka käynnistää DNS-pyynnön tutkitulta koneelta.

Esimerkiksi käyttäjäagentti: ${jndi:dns://192.168.1.3:5353/MDEDiscoveryUser-Agent}, jossa 192.168.1.3 on tutkimuskoneen IP-osoite.

Huomautus

Log4j2-tunnistuksen ottaminen käyttöön tarkoittaa myös sitä, että perehdytyt laitteet käyttävät itsetutkistuksen avulla paikallisia haavoittuvuuksia.

Haavoittuvassa asemassa olevien ohjelmistojen ja tiedostojen tunnistaminen

Defenderin haavoittuvuuden hallinta tarjoaa tunnistuskerroksia, joiden avulla voit löytää:

  • Haavoittuvassa asemassa oleva ohjelmisto: Etsintä perustuu asennettuun sovelluksen Common Platform -luettelointeihin (CPE), joiden tiedetään olevan alttiita Log4j-etäkoodin suorittamiselle.

  • Haavoittuvassa asemassa olevat tiedostot: Sekä muistissa olevat tiedostot että tiedostojärjestelmän tiedostot arvioidaan. Nämä tiedostot voivat olla Log4j-core-purkkitiedostoja, joilla on tunnettu haavoittuva versio, tai Uber-JAR-tiedosto, joka sisältää joko haavoittuvan jndi-hakuluokan tai haavoittuvan log4j-core-tiedoston. Tarkemmin sanottuna se:

    • määrittää, sisältääkö JAR-tiedosto haavoittuvan Log4j-tiedoston tutkimalla JAR-tiedostoja ja etsimällä seuraavaa tiedostoa: \META-INF\maven\org.apache.logging.log4j\log4j-core\pom.properties – jos tämä tiedosto on olemassa, Log4j-versio luetaan ja poimitaan.
    • etsii JAR-tiedostosta JndiLookup.class-tiedostoa etsimällä polkuja, jotka sisältävät merkkijonon "/log4j/core/lookup/JndiLookup.class" – jos JndiLookup.class-tiedosto on olemassa, Defender Vulnerability Management määrittää, sisältääkö tämä JAR Log4j-tiedoston, jonka versio on määritetty pom.properties-tiedostossa.
    • etsii sisäkkäiseen JAR-tiedostoon upotettuja haavoittuvassa asemassa olevia Log4j-ydin-JAR-tiedostoja etsimällä polkuja, jotka sisältävät jonkin näistä merkkijonoista:
      • lib/log4j-core-
      • WEB-INF/lib/log4j-core-
      • App-INF/lib/log4j-core-

Tässä taulukossa kuvataan tuettujen ympäristöjen ja versioiden hakuominaisuudet:

Valmiudet Tiedostotyyppi Windows10+,
server2019+
Server 2012R2,
palvelin2016
Server 2008R2 Linux + macOS
Haku kohteesta muisti Log4j-core Kyllä Kyllä[1] - Kyllä
Uber-JARs Kyllä Kyllä[1] - Kyllä
Haku kaikki levyllä olevat tiedostot Log4j-core Kyllä Kyllä[1] Kyllä -
Uber-JARs Kyllä Kyllä[1] - -

(1) Ominaisuudet ovat käytettävissä , kun KB5005292 on asennettu Windows Server 2012 R2:een ja 2016:een.

Lisätietoja Log4Shell-altistumisen ja lievennyksen vaihtoehdoista

  1. Siirry Microsoft Defender portaalissa kohtaan Haavoittuvuuden hallinnan>heikkoudet.
  2. Valitse CVE-2021-44228.
  3. Valitse Avaa haavoittuvuussivu.

Näyttökuva haavoittuvuuden hallintakoontinäytön haavoittuvuussivusta.

Log4Shell-haavoittuvuuden lievennys

Log4Shell-haavoittuvuutta voidaan lieventää estämällä JNDI-haut log4j-versioissa 2.10 - 2.14.1 oletusmäärityksillä. Voit luoda tämän lievennystoiminnon Uhkatietoisuus-koontinäytöstä seuraavasti:

  1. Valitse Näytä haavoittuvuuden tiedot.
  2. Valitse Lievennysasetukset.

Voit ottaa lievennyksen käyttöön kaikissa alttiina oletetuissa laitteissa tai valita tietyt käyttöönotetut laitteet. Viimeistele prosessi ja ota lievennys käyttöön laitteissa valitsemalla Create lievennystoiminto.

Näyttökuva CVE-2021-44228:n lievennysvaihtoehdoista.

Lievennyksen tila

Lievennyksen tila ilmaisee, onko JDNI-hakujen käytöstä poistamisen kiertotapoja lievennetty laitteessa. Voit tarkastella kunkin kyseessä olevan laitteen lievennyksen tilaa Paljastetut laitteet -välilehdissä. Tämä voi auttaa priorisoimaan laitteiden lievennystä ja/tai korjauksea niiden lievennyksen tilan perusteella.

Näyttökuva mahdollisista lievennystilaista.

Alla olevassa taulukossa luetellaan mahdolliset lievennyksen tilat:

Lievennyksen tila Kuvaus
Vaihtoehtoinen menetelmä käytössä Windows: LOG4J_FORMAT_MSG_NO_LOOKUPS ympäristömuuttuja havaittiin ennen laitteen viimeisintä uudelleenkäynnistystä.

Linux + macOS: Kaikissa käynnissä oleissa prosesseissa on LOG4J_FORMAT_MSG_NO_LOOKUPS =true ympäristömuuttujissa.
Vaihtoehtoinen menetelmä odottaa uudelleenkäynnistystä LOG4J_FORMAT_MSG_NO_LOOKUPS ympäristömuuttuja on määritetty, mutta seuraavaa uudelleenkäynnistystä ei havaittu.
Ei käytössä Windows: LOG4J_FORMAT_MSG_NO_LOOKUPS-ympäristömuuttujaa ei havaittu.

Linux ja macOS: Kaikissa käynnissä ole prosesseissa ei ole LOG4J_FORMAT_MSG_NO_LOOKUPS =true ympäristömuuttujissa, eikä lievennystoimintoa otettu käyttöön laitteessa.
Osittain lievennys Linux + macOS: Vaikka lievennystoimintoa käytettiin laitteessa, kaikilla käynnissä olevilla prosesseilla ei ole LOG4J_FORMAT_MSG_NO_LOOKUPS=true ympäristömuuttujissa.
Ei käytettävissä Laitteet, joissa on haavoittuvassa asemassa olevia tiedostoja, jotka eivät ole lievennyksen versioalueella.
tuntematon Lievennyksen tilaa ei voitu tällä hetkellä määrittää.

Huomautus

Laitteen päivitetyn lievennyksen tilan näkyminen voi kestää muutamia tunteja.

Log4Shell-haavoittuvuudessa käytössä olevat palautusten lievennykset

Jos lievennys on palautettava, toimi seuraavasti:

For Windows:

  1. Avaa laajennettu PowerShell-ikkuna.
  2. Suorita seuraava komento:
  [Environment]::SetEnvironmentVariable("LOG4J\_FORMAT\_MSG\_NO\_LOOKUPS", $null,[EnvironmentVariableTarget]::Machine)

Muutos tulee voimaan, kun laite käynnistyy uudelleen.

Linux:lle:

  1. Avaa tiedosto /etc/environment ja poista rivi LOG4J_FORMAT_MSG_NO_LOOKUPS=true
  2. Poista tiedosto /etc/systemd/system.conf.d/log4j_disable_jndi_lookups.conf
  3. Poista tiedosto /etc/systemd/user.conf.d/log4j_disable_jndi_lookups.conf

Muutos tulee voimaan, kun laite käynnistyy uudelleen.

MacOS:lle:

Poista tiedosto setenv. LOG4J_FORMAT_MSG_NO_LOOKUPS.plist seuraavista kansioista:

  • /Library/LaunchDaemons/
  • /Library/LaunchAgents/
  • /Users/[username]/Library/LaunchAgents/ - kaikille käyttäjille

Muutos tulee voimaan, kun laite käynnistyy uudelleen.

Apache Log4j -suojaussuositukset

Jos haluat nähdä Apache Log4j :hen liittyvän aktiivisen suojaussuosituksen, valitse Suojaussuositukset-välilehti haavoittuvuuden tietosivulta. Tässä esimerkissä, jos valitset Päivitä Apache Log4j , näet toisen pikaikkunan, jossa on lisätietoja:

Näyttökuva päivityksen apache log4j -suojaussuosituksesta.

Luo korjauspyyntö valitsemalla Pyydä korjausta .

Microsoft Defender portaalin haavoittuvuuden tutkiminen

Kun paljastetut laitteet, tiedostot ja ohjelmistot löytyvät, olennaiset tiedot välitetään myös seuraavien Microsoft Defender portaalin käyttökokemusten kautta:

Ohjelmistoluettelo

Etsi ohjelmistovarastosivulta CVE-2021-44228 nähdäksesi lisätietoja Log4j-ohjelmistoasennuksista ja altistumisesta:

Näyttökuva log4j-haavoittuvuudesta ohjelmistovarastosivulla.

Heikkouksia

Etsi heikkouksien sivulla CVE-2021-44228 nähdäksesi tietoja Log4Shell-haavoittuvuudesta:

Näyttökuva log4j-haavoittuvuudesta heikkoussivulla.

Käytä kehittynyttä metsästystä

Voit käyttää seuraavaa kehittynyttä metsästyskyselyä laitteiden asennettujen ohjelmistojen heikkouksien tunnistamiseen:

   DeviceTvmSoftwareVulnerabilities
   | where CveId in ("CVE-2021-44228", "CVE-2021-45046")

Voit käyttää seuraavaa kehittynyttä metsästyskyselyä tunnistaaksesi laitteissa asennetun ohjelmiston haavoittuvuudet, jotta saat esiin levyn tiedostotason havainnot:

   DeviceTvmSoftwareEvidenceBeta
   | mv-expand DiskPaths
   | where DiskPaths contains "log4j"
   | project DeviceId, SoftwareName, SoftwareVendor, SoftwareVersion, DiskPaths