Kwetsbaarheden verholpen in Apache Log4j
Deze pagina zet de platte tekst van officiële advisories automatisch om naar HTML. Hierbij kan mogelijk informatie verloren gaan. De Signed PGP-versies zijn leidend.
Publicatie | Kans | Schade | |||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Versie 1.07 | 22-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
22-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.07] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Kenmerken |
|
||||||||||||||||||||||||||||||||||||
Omschrijving |
Er zijn vier kwetsbaarheden verholpen in Apache Log4j. Log4j is een Java log-tool die door een groot aantal applicaties en diensten wordt gebruikt. Voor misbruik van de kwetsbaarheden dient een kwaadwillende malafide gegevens door Log4j te laten verwerken. Dit kan bijvoorbeeld worden bereikt door de malafide gegevens in een login-veld van een website te plaatsen. Houdt er rekening mee dat de kwetsbaarheid mogelijk ook op systemen kan worden misbruikt die niet rechtstreeks voor de kwaadwillende bereikbaar zijn. De kwetsbaarheden hebben de kenmerken CVE-2021-44228, CVE-2021-45046, CVE-2021-4104 en CVE-2021-45105 gekregen. CVE-2021-44228: De eerste kwetsbaarheid met kenmerk CVE-2021-44228, beter bekend als Log4shell, stelt een ongeauthenticeerde kwaadwillende op afstand in staat om willekeurige code uit te voeren. De rechten waaronder de kwaadwillende code kan uitvoeren is afhankelijk van de rechten waarmee de bovenliggende applicatie draait. Het is daarom niet uit te sluiten dat de code van de kwaadwillende onder verhoogde rechten wordt uitgevoerd. De kwetsbaarheid is aanwezig in Log4j 2.0-beta9 t/m 2.12.1 en 2.13.0 t/m 2.14.1. Het NCSC ontvangt meldingen dat de kwetsbaarheid met kenmerk CVE-2021-44228 actief wordt misbruikt. CVE-2021-45046: De tweede kwetsbaarheid met kenmerk CVE-2021-45046 stelt een ongeauthenticeerde kwaadwillende in staat om een denial-of-service te veroorzaken of om willekeurige code uit te voeren. De impact is vergelijkbaar met de hierboven genoemde kwetsbaarheid CVE-2021-44228. Eerder gaf Apache aan dat deze kwetsbaarheid alleen kon worden misbruikt voor een Denial-of-Service aanval, de kwetsbaarheid kreeg een CVSS score van 3.7. Inmiddels heeft Apache aangegeven dat deze kwetsbaarheid ook het uitvoeren van willekeurige code mogelijk maakt, al dan niet op afstand. Het op afstand uitvoeren van willekeurige code is aangetoond in macOS, maar nog niet op andere omgevingen. De Apache ontwikkelaars geven op dit moment aan dat de standaardconfiguratie van Log4j niet kwetsbaar is voor CVE-2021-45046. Het is echter mogelijk dat applicatieontwikkelaars een kwetsbare configuratie van Log4j in hun applicatie gebruiken. De kwetsbaarheid is aanwezig in Log4j 2.0-beta9 t/m 2.12.1 en 2.13.0 t/m 2.15.0. Meer informatie over de kwetsbaarheid met kenmerk CVE-2021-45046 is te vinden op [Link] CVE-2021-4104: De derde kwetsbaarheid met kenmerk CVE-2021-4104 stelt een lokale kwaadwillende in staat om willekeurige code uit te voeren. Net als bij de andere twee kwetsbaarheden wordt code uitgevoerd met de rechten waaronder de bovenliggende applicatie draait. In tegenstelling tot de andere twee kwetsbaarheden is CVE-2021-4104 alleen lokaal te misbruiken doordat de kwaadwillende in staat moet zijn om de Log4j-configuratie aan te passen. De aanvalsvector is daardoor beperkt. De kwetsbaarheid is aanwezig in Log4j 1.x en afwezig in Log4j 2.0 en hoger. Log4j 1.x is sinds 2015 end-of-life en ontvangt geen beveiligingsupdates meer. CVE-2021-45105: De vierde kwetsbaarheid met kenmerk CVE-2021-45105 stelt een kwaadwillende op afstand in staat om de inhoud van logbestanden te manipuleren. Dit beperkt zich tot het toevoegen van stacktrace- en debuginformatie aan logbestanden. Een lokale kwaadwillende met toegang tot het Log4j-configuratiebestand zou de kwetsbaarheid daarnaast kunnen misbruiken voor het veroorzaken van een denial-of-service. De inschaling van deze specifieke kwetsbaarheid is HIGH/MEDIUM. De kwetsbaarheid is aanwezig in Log4j 2.0-alpha1 t/m 2.12.2 en 2.13.0 t/m 2.16.0. Voor elk van de genoemde kwetsbaarheden is exploitcode publiek beschikbaar. Het NCSC is bezig om een zo breed en actueel mogelijk beeld te krijgen van gerelateerde software die mogelijk kwetsbaar is. Om een zo actueel mogelijk beeld te geven van getroffen systemen en beschikbare patches, houdt het NCSC een lijst bij op GitHub [1]. Kwetsbare applicaties die op deze lijst staan worden behandeld als onderdeel van dit H/H-advies. Organisaties worden geadviseerd de lijst regelmatig te controleren op relevante updates. Op GitHub is naast een lijst van software en patches ook een overzicht van tools, IoC's en Yara-rules te vinden. Het NCSC houdt de situatie in de gaten en werkt waar nodig dit beveiligingsadvies bij wanneer relevante informatie beschikbaar komt. [1] [Link] |
||||||||||||||||||||||||||||||||||||
Bereik |
|
||||||||||||||||||||||||||||||||||||
Oplossingen |
Patches en updatesApache heeft updates uitgebracht om de kwetsbaarheden te verhelpen. In onderstaande tabel staat per kwetsbaarheid de eerste versie vermeld waarin de kwetsbaarheid is verholpen:
De kwetsbaarheden met inschaling HIGH/HIGH zijn verholpen in Log4j 2.12.2, 2.12.3, 2.16.0 en 2.17.0. 2.12.2 en 2.16.0 zijn echter kwetsbaar voor de lager ingeschaalde kwetsbaarheid met kenmerk CVE-2021-45105. Het advies luidt daarom om te updaten naar versie 2.12.3 of 2.17.0 waar mogelijk, maar het bijwerken van Log4j naar versie 2.12.2 of 2.16.0 hierop voorrang te geven. Voor updates bent u mogelijk afhankelijk van uw softwareleverancier. Apache zelf biedt de bijgewerkte versies aan via de volgende pagina [Link] Source code patches die de kwetsbaarheid verhelpen zijn te verkrijgen via de GitHub-repository van het Log4j project [Link] In een GitHub-repository van het NCSC wordt een overzicht bijgehouden van kwetsbare software. In deze repository zijn tevens tools, IoC's en Yara-rules te vinden. Het NCSC raadt aan om de repository periodiek te controleren op informatie relevant voor uw organisatie. De repository is beschikbaar via de volgende URL [Link] Daarnaast raadt het NCSC aan om de volgende pagina's in de gaten te houden voor actuele informatie vanuit Apache [Link] Mitigerende maatregelenEr zijn mitigerende maatregelen beschikbaar voor organisaties die niet de mogelijkheid hebben om Log4j bij te werken naar een gepatchte versie. Houdt er rekening mee dat het toepassen van deze mitigaties mogelijk invloed heeft op de werking van de bovenliggende applicatie. CVE-2021-44228 en CVE-2021-45046: Verwijder de JndiLookup-class met het commando "zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class". CVE-2021-4104: Verwijder de JMSAppender-class met het commando "zip -q -d log4j-*.jar org/apache/log4j/net/JMSAppender.class". CVE-2021-45105: In de "PatternLayout" in het Log4j-configuratiebestand, vervang context lookups als "${ctx:loginId}" en "$${ctx:loginId}" door thread context map patterns als "%X", "%mdc" of "%MDC". Als alternatief kunnen context lookups die invoer vanaf een externe bron verwerken (zoals HTTP-headers en gebruikersinvoer) volledig uit de configuratie worden verwijderd. Aanvullend handelingsperspectiefOp de website van het NCSC is aanvullend handelingsperspectief te vinden. Zie de volgende pagina voor meer informatie [Link] |
||||||||||||||||||||||||||||||||||||
CVE’s |
CVE-2021-4104, CVE-2021-44228, CVE-2021-45046, CVE-2021-45105 |
||||||||||||||||||||||||||||||||||||
Kans |
Onderstaande tabel geeft in detail aan hoe wij tot de inschatting zijn gekomen hoe groot de kans is dat deze kwetsbaarheid in het doorsnee praktijkgeval kan worden misbruikt. De punten worden bij elkaar geteld.
|
||||||||||||||||||||||||||||||||||||
Schade |
Onderstaande tabel geeft in detail aan hoe wij tot de inschatting zijn gekomen voor de schade die bij een succesvolle aanval kan ontstaan. De hoogste inschaling bepaalt de totale kans op schade.
|
||||||||||||||||||||||||||||||||||||
Versie 1.07 | 22-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
22-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.07] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
Apache heeft Log4j 2.12.3 voor Java 7 uitgebracht om de kwetsbaarheid met kenmerk CVE-2021-45105 te verhelpen. Deze versie van Log4j is aan dit beveiligingsadvies toegevoegd. |
||||||||||||||||||||||||||||||||||||
Versie 1.06 | 18-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
18-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.06] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
In Log4j versie 2.0-alpha1 tot en met 2.16.0 is een nieuwe kwetsbaarheid ontdekt. Deze kwetsbaarheid heeft CVE-kenmerk CVE-2021-45105 toegekend gekregen. De kwetsbaarheid stelt een kwaadwillende op afstand in staat om de inhoud van logbestanden beperkt te manipuleren. De inschaling van deze specifieke kwetsbaarheid is HIGH/MEDIUM. Informatie over de kwetsbaarheid, oplossingen en mitigerende maatregelen zijn aan dit beveiligingsadvies toegevoegd. Zie "Beschrijving" en "Mogelijke oplossingen" voor meer informatie. |
||||||||||||||||||||||||||||||||||||
Versie 1.05 | 17-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
17-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.05] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
Dit beveiligingsadvies is bijgewerkt met de laatste informatie die Apache naar buiten heeft gebracht [1]. Met dit advies willen we de ontwikkelingen rondom de kwetsbaarheden in Log4j verduidelijken en verder handelingsperspectief bieden. We willen specifiek aandacht vragen voor CVE-2021-45046. Het beveiligingsadvies is in zijn geheel opnieuw geschreven om een duidelijk overzicht te bieden van de huidige situatie. Zie "Beschrijving" en "Mogelijke oplossingen" voor meer informatie. Op de volgende pagina is daarnaast aanvullend handelingsperspectief beschikbaar [2]. |
||||||||||||||||||||||||||||||||||||
Versie 1.04 | 15-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
15-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.04] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
De afgelopen dagen stond in dit beveiligingsadvies dat JDK versies 6u211, 7u201, 8u191, 11.0.1 of hoger niet gevoelig zijn voor de aanval middels een LDAP verzoek. Inmiddels is bekend dat dit onjuist is. Het NCSC heeft dit aangepast in dit beveiligingsadvies. De eerder beschreven mitigerende maatregel lijkt niet in alle gevallen te werken, deze mitgerende maatregel is uit dit advies gehaald. Volgens de ontwikkelaars van Log4j heeft de update naar Log4j 2.15 een nieuwe kwetsbaarheid blootgelegd met kenmerk CVE-2021-45046. Deze kwetsbaarheid maakt het mogelijk een Denial-of-Service te veroorzaken. |
||||||||||||||||||||||||||||||||||||
Versie 1.03 | 14-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
14-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.03] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
De ontwikkelaars van Log4j hebben een update uitgebracht. De nieuwe release Log4j 2.16.0 schakelt de JNDI functionaliteit standaard uit. Tevens is de ondersteuning voor "Message lookups" verwijderd. De ontwikkelaars stellen dat het in deze release gaat om hardening-maatregelen. De update is optioneel, maar wordt door de ontwikkelaars van Log4j aangeraden wel uit te voeren. |
||||||||||||||||||||||||||||||||||||
Versie 1.02 | 12-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
12-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.02] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
Er zullen veel updates volgen voor deze kwetsbaarheid. Om een zo actueel mogelijk beeld te geven van getroffen systemen en beschikbare patches, kiest het NCSC ervoor om een lijst bij te houden op GitHub en dit advies eenmalig te updaten met een verwijzing naar deze lijst. Organisaties worden geadviseerd de lijst op Github regelmatig te controleren op updates relevant voor hun organisatie. Op de Github is naast een lijst van software en patches ook een overzicht van detectiemethodieken te vinden. Het advies blijft ongewijzigd HIGH/HIGH. [Link] |
||||||||||||||||||||||||||||||||||||
Versie 1.01 | 11-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
11-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.01] |
Signed-PGP → Text |
|||||||||||||||||||||||||||||||||
Update |
Inmiddels wordt actief misbruik op significante schaal waargenomen door partners. Ook wordt door diverse vendors gemeld dat zij deze kwetsbaarheid in onderzoek hebben en waar nodig updates beschikbaar gaan stellen. Het NCSC adviseert om actieve communicatie van vendors waarvan producten in de eigen infrastructuur in gebruik is, in de gaten te houden. Vooralsnog is geen inzicht te verkrijgen in het totaal aan toepassingen waar een kwetsbare versie van Log4j achter de schermen in gebruik is. De inschaling van dit beveiligingsadvies blijft onverkort HIGH/HIGH. |
||||||||||||||||||||||||||||||||||||
Versie 1.00 | 10-12-2021 | NCSC-2021-1052 | |||||||||||||||||||||||||||||||||||
high
|
high
|
Signed-PGP → |
|||||||||||||||||||||||||||||||||||
10-12-2021 |
high
|
high
|
NCSC-2021-1052 [1.00] |
Signed-PGP → Text |
Vrijwaringsverklaring
Door gebruik van deze security advisory gaat u akkoord met de
navolgende voorwaarden. Ondanks dat het NCSC de grootst mogelijke
zorg heeft betracht bij de samenstelling van dit beveiligingsadvies,
kan het NCSC niet instaan voor de volledigheid, juistheid of
(voortdurende) actualiteit van dit beveiligingsadvies. De informatie
in dit beveiligingsadvies is uitsluitend bedoeld als algemene
informatie voor professionele partijen. Aan de informatie in dit
beveiligingsadvies kunnen geen rechten worden ontleend.
Het NCSC en de Staat zijn niet aansprakelijk voor enige schade
ten gevolge van het gebruik of de onmogelijkheid van het gebruik
van dit beveiligingsadvies, waaronder begrepen schade ten gevolge
van de onjuistheid of onvolledigheid van de informatie in dit
beveiligingsadvies.
Op dit beveiligingsadvies is Nederlands recht van toepassing. Alle
geschillen in verband met en/of voortvloeiend uit dit beveiligingsadvies
zullen worden voorgelegd aan de exclusief bevoegde rechter te Den
Haag. Deze rechtskeuze geldt tevens voor de voorzieningenrechter in
kort geding.