Finn ut hvordan du administrerer Log4Shell-sikkerhetsproblemet i Microsoft Defender for Endpoint
Log4Shell-sikkerhetsproblemet er et sikkerhetsproblem for ekstern kjøring av kode (RCE) som finnes i loggingsbiblioteket i Apache Log4j 2. Siden Apache Log4j 2 ofte brukes av mange programmer og nettbaserte tjenester, representerer det en kompleks og høyrisikosituasjon for bedrifter over hele verden. Det kalles Log4Shell (CVE-2021-44228, CVE-2021-45046) og introduserer en ny angrepsvektor som angripere kan utnytte til å trekke ut data og distribuere løsepengevirus i en organisasjon.
Obs!
Se veiledningen for blogger for å forebygge, oppdage og jakte på utnyttelse av Log4j 2-sikkerhetsproblemet ogMicrosoft Security Response Center for veiledning og teknisk informasjon om sikkerhetsproblemet og anbefalinger for produktspesifikke begrensninger for å beskytte organisasjonen.
Oversikt over funksjoner for oppdagelse, overvåking og reduksjon
Defender Vulnerability Management gir deg følgende funksjoner for å hjelpe deg med å identifisere, overvåke og redusere organisasjonens eksponering for Log4Shell-sikkerhetsproblemet:
- Oppdagelse: Gjenkjenning av eksponerte enheter, både Microsoft Defender for endepunkt pålastede enheter og enheter som har blitt oppdaget, men som ennå ikke er pålastet, er basert på sårbar programvare og sårbare filer som oppdages på disken.
- Trusselbevissthet: En konsolidert visning for å vurdere organisasjonens eksponering. Denne visningen viser eksponeringen din på enhetsnivå og programvarenivå, og gir tilgang til detaljer om sårbare filer som forrige gang den ble sett, siste gang den ble utført og siste gang den ble utført med åpne porter. Du kan bruke denne informasjonen til å prioritere utbedringshandlingene. Det kan ta opptil 24 timer før data relatert til eksponerte enheter vises på instrumentbordet.
- Begrensningsalternativer: Bruk begrensningsalternativer for å redusere eksponeringsrisikoen.
- Avansert jakt: Bruk avansert jakt til å returnere detaljer for sårbare log4j-filer identifisert på disken.
Obs!
Disse funksjonene støttes på Windows 10 & Windows 11, Windows Server, Linux og macOS.
Støtte på Linux krever Microsoft Defender for Endpoint Linux-klientversjon 101.52.57 (30.121092.15257.0) eller nyere.
Støtte på macOS krever Microsoft Defender for endepunkts macOS-klientversjon 20.121111.15416.0 eller nyere.
Hvis du vil ha mer informasjon om støttede versjoner, kan du se støttede operativsystemplattformer og -funksjoner.
Oppdagelse av eksponerte enheter
Innebygde funksjoner for behandling av sikkerhetsproblemer i Defender, sammen med aktivering av Log4j-gjenkjenning i Microsoft Defender-portalen, vil hjelpe deg med å oppdage enheter som er eksponert for Log4Shell-sikkerhetsproblemet.
Innebygde enheter vurderes ved hjelp av eksisterende innebygde Defender Vulnerability Management-funksjoner som kan oppdage sårbar programvare og filer.
Log4j-gjenkjenning må være aktivert for gjenkjenning på oppdagede, men ennå ikke innebygde enheter. Dette starter sonder på samme måte som enhetsoppdagelse aktivt undersøker nettverket. Sondering omfatter flere innebygde endepunkter (Windows 10+ og Windows Server 2019 + enheter) og bare sondering i delnett for å oppdage enheter som er sårbare og eksternt utsatt for CVE-2021-44228.
Slik aktiverer du Log4-gjenkjenning:
Gå til konfigurasjonen Forsøk etter enhetssøk> for innstillinger>.
Velg Aktiver Log4j2-gjenkjenning (CVE-2021-44228).
Velg Lagre.
Hvis du kjører disse sondene, utløses standard Log4j-flyt uten å forårsake skadelig innvirkning på enheten som undersøkes eller undersøker enheten. Selve sonden utføres ved å sende flere HTTP-forespørsler til oppdagede enheter, rettet mot vanlige nettprogramporter (for eksempel – 80 8000 8080 443 8443) og nettadresser. Forespørselen inneholder HTTP-meldingshoder med en JNDI-nyttelast som utløser en DNS-forespørsel fra den sondede maskinen.
For eksempel Brukeragent: ${jndi:dns://192.168.1.3:5353/MDEDiscoveryUser-Agent} der 192.168.1.3 er IP-adressen til sonderingsmaskinen.
Obs!
Aktivering av Log4j2-gjenkjenning betyr også at innebygde enheter bruker selvsøking for å oppdage lokale sårbarheter.
Sårbar programvare og filgjenkjenning
Defender Vulnerability Management gir lag med gjenkjenning for å hjelpe deg med å oppdage:
Sårbar programvare: Discovery er basert på installerte common platform-opplistinger (CPE) som er kjent for å være sårbare for ekstern kjøring av Log4j-kode.
Sårbare filer: Både filer i minnet og filer i filsystemet vurderes. Disse filene kan være Log4j-core jar-filer med den kjente sårbare versjonen eller en Uber-JAR som inneholder enten en sårbar jndi-oppslagsklasse eller en sårbar log4j-kjernefil. Nærmere bestemt:
- bestemmer om en JAR-fil inneholder en sårbar Log4j-fil ved å undersøke JAR-filer og søke etter følgende fil: \META-INF\maven\org.apache.logging.log4j\log4j-core\pom.properties – hvis denne filen finnes, leses og trekkes Log4j-versjonen ut.
- søker etter JndiLookup.class-filen i JAR-filen ved å se etter baner som inneholder strengen "/log4j/core/lookup/JndiLookup.class" – hvis JndiLookup.class-filen finnes, bestemmer Defender Vulnerability Management om denne JAR inneholder en Log4j-fil med versjonen definert i pom.properties.
- søker etter eventuelle sårbare Log4j-core JAR-filer innebygd i en nestet JAR ved å søke etter baner som inneholder noen av disse strengene:
- lib/log4j-core-
- WEB-INF/lib/log4j-core-
- App-INF/lib/log4j-core-
Denne tabellen beskriver søkefunksjonene som støttes plattformer og versjoner:
Evne | Filtype | Windows 10+, server2019+ |
Server 2012R2, server2016 |
Server 2008R2 | Linux + macOS |
---|---|---|---|---|---|
Søk i minnet | Log4j-kjerne | Ja | Ja[1] | - | Ja |
Uber-JARs | Ja | Ja[1] | - | Ja | |
Søk i alle filer på disken | Log4j-kjerne | Ja | Ja[1] | Ja | - |
Uber-JARs | Ja | Ja[1] | - | - |
(1) Funksjoner er tilgjengelige når KB5005292 er installert på Windows Server 2012 R2 og 2016.
Finn ut mer om alternativene for Log4Shell-eksponering og -begrensninger
Gå tilSvakheter for sårbarhetsadministrasjon> i Microsoft Defender-portalen.
Velg CVE-2021-44228.
Velg siden åpne sikkerhetsproblemer.
Begrensning av Log4Shell-sikkerhetsproblemer
Log4Shell-sikkerhetsproblemet kan begrenses ved å forhindre JNDI-oppslag i Log4j-versjoner 2.10 – 2.14.1 med standardkonfigurasjoner. For å opprette denne begrensningshandlingen, fra instrumentbordet for trusselbevissthet:
Velg Vis detaljer om sikkerhetsproblemet.
Velg alternativer for begrensning.
Du kan velge å bruke begrensningen på alle eksponerte enheter, eller velge bestemte innebygde enheter. Hvis du vil fullføre prosessen og bruke begrensningen på enheter, velger du Opprett begrensningshandling.
Begrensningsstatus
Begrensningsstatusen angir om løsningen for å deaktivere JDNI-oppslag ble brukt på enheten. Du kan vise begrensningsstatusen for hver berørte enhet i kategoriene Eksponerte enheter. Dette kan bidra til å prioritere reduksjon og/eller oppdatering av enheter basert på deres begrensningsstatus.
Tabellen nedenfor viser de potensielle begrensningsstatusene:
Begrensningsstatus | Beskrivelse |
---|---|
Midlertidig løsning er tatt i bruk |
Windows: Miljøvariabelen LOG4J_FORMAT_MSG_NO_LOOKUPS ble observert før siste omstart av enheten. Linux + macOS: Alle kjørende prosesser har LOG4J_FORMAT_MSG_NO_LOOKUPS= sann i miljøvariablene. |
Midlertidig løsning venter på omstart | Miljøvariabelen LOG4J_FORMAT_MSG_NO_LOOKUPS er angitt, men ingen etterfølgende omstart ble oppdaget. |
Ikke brukt |
Windows: Miljøvariabelen LOG4J_FORMAT_MSG_NO_LOOKUPS ble ikke observert. Linux + macOS: Ikke alle kjørende prosesser har LOG4J_FORMAT_MSG_NO_LOOKUPS= sann i miljøvariablene, og begrensningshandling ble ikke brukt på enheten. |
Delvis redusert | Linux + macOS: Selv om begrensningshandling ble brukt på enheten, har ikke alle kjørende prosesser LOG4J_FORMAT_MSG_NO_LOOKUPS = sann i miljøvariablene. |
Gjelder ikke | Enheter som har sårbare filer som ikke er i versjonsområdet for begrensningen. |
Ukjent | Kan ikke fastslå avløsningsstatusen for øyeblikket. |
Obs!
Det kan ta noen timer før den oppdaterte begrensningsstatusen for en enhet gjenspeiles.
Tilbakestillingsbegrensninger brukt for log4Shell-sikkerhetsproblemet
I tilfeller der begrensningen må gjenopprettes, følger du disse trinnene:
For Windows:
Åpne et hevet PowerShell-vindu.
Utfør denne kommandoen:
[Environment]::SetEnvironmentVariable("LOG4J\_FORMAT\_MSG\_NO\_LOOKUPS", $null,[EnvironmentVariableTarget]::Machine)
Endringen trer i kraft etter at enheten startes på nytt.
For Linux:
Åpne filen /etc/miljø, og slett linjen LOG4J_FORMAT_MSG_NO_LOOKUPS=sann
Slett filen /etc/systemd/system.conf.d/log4j_disable_jndi_lookups.conf
Slett filen /etc/systemd/user.conf.d/log4j_disable_jndi_lookups.conf
Endringen trer i kraft etter at enheten startes på nytt.
For macOS:
Fjern filoppsettet. LOG4J_FORMAT_MSG_NO_LOOKUPS.plist fra følgende mapper:
- /Bibliotek/LaunchDaemons/
- /Bibliotek/LaunchAgents/
- /Brukere/[brukernavn]/Bibliotek/LaunchAgents/ – for alle brukere
Endringen trer i kraft etter at enheten startes på nytt.
Sikkerhetsanbefalinger for Apache Log4j
Hvis du vil se aktiv sikkerhetsanbefaling relatert til Apache log4j, velger du fanen Sikkerhetsanbefalinger på siden detaljer om sikkerhetsproblemer. I dette eksemplet, hvis du velger Oppdater Apache Log4j , ser du en annen undermeny med mer informasjon:
Velg Utbedring av forespørsel for å opprette en utbedringsforespørsel.
Utforsk sikkerhetsproblemet i Microsoft Defender-portalen
Når eksponerte enheter, filer og programvare blir funnet, formidles relevant informasjon gjennom følgende opplevelser i Microsoft Defender-portalen:
Programvarebeholdning
Søk etter CVE-2021-44228 på programvarelagersiden for å se detaljer om Log4j-programvareinstallasjoner og -eksponering:
Svakheter
Søk etter CVE-2021-44228 på svakhetssiden for å se informasjon om Log4Shell-sikkerhetsproblemet:
Bruk avansert jakt
Du kan bruke følgende avanserte jaktspørring til å identifisere sikkerhetsproblemer i installert programvare på enheter:
DeviceTvmSoftwareVulnerabilities
| where CveId in ("CVE-2021-44228", "CVE-2021-45046")
Du kan bruke følgende avanserte jaktspørring til å identifisere sårbarheter i installert programvare på enheter for å vise resultatene på filnivå fra disken:
DeviceTvmSoftwareEvidenceBeta
| mv-expand DiskPaths
| where DiskPaths contains "log4j"
| project DeviceId, SoftwareName, SoftwareVendor, SoftwareVersion, DiskPaths