-----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.07 ############################# Titel : Kwetsbaarheden verholpen in Apache Log4j Advisory ID : NCSC-2021-1052 Versie : 1.07 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 : 20211222 Toepassing : Apache Log4j Versie(s) : Platform(s) : 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. Zie "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.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] 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 de eerste versie vermeld waarin 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 | 2.12.3 | 2.17.0 | |-----------------|-----------------------|-----------------------| 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: 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's 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 wsDVAwUBYcMCr+Es56R4sCd0AQovfQwAh1JUJIuZsA95DIUvrjBoJ12FbzHddgOQ Gc79ZE+XnK9Wg1+7FznpOJ6wNxP4lmK0Ipl6YtOIsC/5UTB+sq62xtj0BUY5uVKE 1V9nSqwbODRbwCrGlPPeGXvSzNuZ3hTwrF05P+Qi8m9vgkJmVvjOJEt/B2u+Jqyy WCrNQhLQmMO1k7Hx/8JTpKGpw/iiy99xUkE2P63f7UQJlHLjpJ81HLo0ebCpEBVD OGUVZ+sxg+HucPHJn6EyNkruWdfbsvtHvKjSVYUzYTWwMK1v5o0kAE26wjzjUU0b AMXrGU17IoY3Gon6sRMKSHERVxd+jOWke8XAZd51ziWhYeO0ple87pBfVQtxfF2H TEckKq23jOAxxLSRfrSZRg0KZnRgXJgzUylsoqvzQlPOw5L5ncERIVKDwTThZLV6 we0V0oAQhhgG1pbrVfblvcR2LCA6Yx5SnOuxR2jDBIFr54iPveo9wQEKrnaB/IRl JEhl5/wtXE7lDvhbsHLDcu+/54oUEK0e =q32d -----END PGP SIGNATURE-----