-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 ##################################################### ## N C S C ~ B E V E I L I G I N G S A D V I E S ## ##################################################### ######################## UPDATE 1.06 ############################# Titel : Kwetsbaarheden verholpen in Apache Log4j Advisory ID : NCSC-2021-1052 Versie : 1.06 Kans : high CVE ID : CVE-2021-4104, CVE-2021-44228, CVE-2021-45046, CVE-2021-45105 (Details over de kwetsbaarheden kunt u vinden op de Mitre website: http://cve.mitre.org/cve/) Schade : high Denial-of-Service (DoS) (Remote) code execution (Administrator/Root rechten) (Remote) code execution (Gebruikersrechten) Uitgiftedatum : 20211218 Toepassing : Apache Log4j Versie(s) : Platform(s) : 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. Beschrijving 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: https://logging.apache.org/log4j/2.x/security.html 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.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] https://github.com/NCSC-NL/log4shell Mogelijke oplossingen -= Patches en updates =- Apache heeft updates uitgebracht om de kwetsbaarheden te verhelpen. In onderstaande tabel staat per kwetsbaarheid vermeld in welke versie de kwetsbaarheid is verholpen: | CVE-kenmerk | Log4j-versie (Java 7) | Log4j-versie (Java 8) | |-----------------|-----------------------|-----------------------| | CVE-2021-44228 | 2.12.2 | 2.15.0 | | CVE-2021-45046 | 2.12.2 | 2.16.0 | | CVE-2021-4104 | N/A | N/A | | CVE-2021-45105 | N/A | 2.17.0 | De kwetsbaarheden met inschaling HIGH/HIGH zijn verholpen in Log4j 2.12.2, 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.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: https://logging.apache.org/log4j/2.x/download.html Source code patches die de kwetsbaarheid verhelpen zijn te verkrijgen via de GitHub-repository van het Log4j project: https://github.com/apache/logging-log4j2/tags 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: https://github.com/NCSC-NL/log4shell Daarnaast raadt het NCSC aan om de volgende pagina in de gaten te houden voor actuele informatie vanuit Apache: https://logging.apache.org/log4j/2.x/index.html -= Mitigerende maatregelen =- Er 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 handelingsperspectief =- Op de website van het NCSC is aanvullend handelingsperspectief te vinden. Zie de volgende pagina voor meer informatie: https://www.ncsc.nl/onderwerpen/log4j 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. -----BEGIN PGP SIGNATURE----- Version: Encryption Desktop 10.4.2 (Build 1298) Charset: utf-8 wsDVAwUBYb3jnuEs56R4sCd0AQqTIQv+J+oUzwYpxEkIdZO18FEQLUm4sBpcyaJn PSM4Y7572Jn7P9N5MB+X28LK9fZkfjkTWJ7++fHPjgPqYJvKoj5fYgmvELM0GDCj rMb15QDW6YGisoFACDdQE9AFE1+QCmCaOyML8dat/IoUq2UvkhmvV8m+miH1bCFu Og9PuK6S3ukKGKWk/3jxptqquyq4HsZPUyz20yiauHmwc52AaTuiS7Am0bk84l0K Uoc0E8DrRX9ZwewhBoMy7RBfAuLCBwGqrh15olLAdQR1x6EBMpqTC9SjfNn5Der5 wSst24YhWyutG0woiABv+7wsZMgDEdG1dRfd5vKmzZbkRmBA1BirCeDYrWthMNpx sdnDfDCnKHJhCHRJAhuM7U15qB4EMXiKifK08xixZ9J7X8liLxvRmdqa08wZxiyN 6kfDGgNnPaWi3Qv2DPC4EjetCilhd9F1mqzfoCBBABMdDHJQ3YZ4BwjbiKz/SCwa XyQTPB/25nYDziyi50IdcqTI/Gu+tfWx =mlnq -----END PGP SIGNATURE-----