¡¾·ì϶¹«¸æ¡¿Apache Log4j2»Ø¾ø·þÎñ·ì϶£¨CVE-2021-45105£©
°ä²¼¹¦·ò 2021-12-190x00 ·ì϶¸ÅÊö
CVE ID | CVE-2021-45105 | ʱ ¼ä | 2021-12-17 |
Àà ÐÍ | Dos | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°ÏìÁìÓò | |
¹¥»÷¸´ÔÓ¶È | µÍ | ¿ÉÓÃÐÔ | ¸ß |
Óû§½»»¥ | ÎÞ | ËùÐèȨÏÞ | ÎÞ |
PoC/EXP | ÔÚÒ°ÀûÓÃ |
0x01 ·ì϶ÏêÇé

Apache Log4j2ÊÇÒ»¸ö¿ªÔ´µÄJavaÈÕÖ¾¿ò¼Ü£¬±»¿í·ºµØÀûÓÃÔÚÖÐÑë¼þ¡¢¿ª·¢¿ò¼ÜÓëWebÀûÓÃÖС£¡£¡£
12ÔÂ18ÈÕ£¬Apache Log4j¹Ù·½Ôٴΰ䲼°²È«²¼¸æ£¬Apache Log4j2×é¼þÖдæÔÚÒ»¸ö»Ø¾ø·þÎñ·ì϶£¨CVE-2021-45105£©£¬¸Ã·ì϶µÄCVSSÆÀ·ÖΪ7.5£¬Ó°ÏìÁËApache Log4j2 2.0-beta9 µ½2.16.0µÄËùÓа汾£¬Ä¿Ç°Apache Log4j¹Ù·½ÒѾ°ä²¼ÁË2.17.0°æ±¾£¨ºÏÓÃÓÚJava 8»ò¸ü¸ß°æ±¾£©¡£¡£¡£
ÓÉÓÚûÓÐÔ¤·ÀÀ´×Ôself-referential ²éÕҵIJ»ÊܽÚÖÆµÄµÝ¹é£¬µ±ÈÕÖ¾ÅäÖÃʹÓôøÓиߵÍÎIJéÕҵķÇĬÈÏģʽ²¼¾Ö£¨ÀýÈ磬$${ctx:loginId}£©Ê±£¬½ÚÖÆÏ̸߳ߵÍÎÄÓ³Éä (MDC) ÊäÈëÊý¾ÝµÄ¹¥»÷ÕßÄܹ»ÖÆ×÷Ô̺¬µÝ¹é²éÕҵĶñÒâÊäÈëÊý¾Ý£¬µ¼Ö StackOverflowError £¬´Ó¶øÖÕÖ¹¹ý³Ì£¬Ôì³É»Ø¾ø·þÎñ¡£¡£¡£
12ÔÂ17ÈÕ£¬OG¶«·½Ìü°²È«Ó¦¼±ÏìÓ¦ÖÐÐļà²âµ½Apache Log4j¹Ù·½½«Apache Log4j2»Ø¾ø·þÎñ¹¥»÷·ì϶£¨CVE-2021-45046£©µÄ·ì϶ÀàÐ͸ü¸ÄΪԶ³Ì´úÂëÖ´Ðзì϶£¨RCE£©£¬²¢½«ÆäCVSSv3·ÖÊý´Ó3.7¸ü¸ÄΪ9.0¡£¡£¡£
ÓÉÓÚApache Log4j 2.15.0ÖÐÐÞ¸´CVE-2021-44228ÔÚijЩ·ÇĬÈÏÅäÖÃÖÐÊDz»ÆëÈ«µÄ£¬µ±ÈÕÖ¾ÅäÖÃʹÓôøÓиߵÍÎIJéÎʵķÇĬÈÏģʽ²¼¾Ö£¨ÀýÈ磬$${ctx:loginId}£©Ê±£¬Äܹ»Ê¹ÓÃJNDI²éÎÊģʽÊäÈë¶ñÒâÊý¾Ý£¬µ¼ÖÂÌØ¶¨»·¾³ÏµÄÐÅϢй¶ºÍÔ¶³Ì´úÂëÖ´ÐС¢ÒÔ¼°ËùÓл·¾³Öеı¾µØ´úÂëÖ´ÐС£¡£¡£
·ì϶ӰÏìÁìÓò
CVE-2021-4104£º£º£ºApache Log4j 1.2
CVE-2021-44228£º£º£ºApache Log4j 2.0-beta9 - 2.12.1 ¡¢Apache Log4j 2.13.0 - 2.15.0-rc1
CVE-2021-45046£º£º£ºApache Log4j 2.0-beta9 - 2.12.1¡¢Apache Log4j 2.13.0-2.15.0
CVE-2021-45105£º£º£ºApache Log4j 2.0-beta9 - 2.16.0
0x02 ´ëÖý¨Òé
1.ͨÓÃÐÞ¸´¹æ»®
ÒÑÉý¼¶µ½ Log4j 2.15.0 ºÍ2.16.0°æ±¾µÄÓû§½¨ÒéÉý¼¶µ½ Log4j 2.17.0 ÒÔÔ¤·ÀÕë¶ÔCVE-2021-44228 ¡¢CVE-2021-45046ºÍCVE-2021-45105·ì϶µÄ¹¥»÷ ¡£¡£¡£
CVE-2021-4104£º£º£º
Apache Log4j 1.2ÖдæÔÚRCE·ì϶£¨CVE-2021-4104£¬½öÅäÖÃΪʹÓÃJMSAppenderʱ´æÔÚ£¬·ÇĬÈÏ£©£¬½¨ÒéÓйØÓû§Éý¼¶µ½Log4j 2µÄ×îа汾¡£¡£¡£
»º½â´ëÊ©£º£º£º
l ×¢½â»òɾ³ý Log4j ÅäÖÃÖÐµÄ JMSAppender¡£¡£¡£
l ʹÓô˺ÅÁî´Ólog4j jar°üÖÐɾ³ý JMSAppender ÀàÎļþ£º£º£º
l zip -q -d log4j-*.jar org/apache/log4j/net/JMSAppender.class
²Î¿¼Á´½Ó£º£º£º
http://mail-archives.apache.org/mod_mbox/www-announce/202112.mbox/%3C1a5a0193-71c4-0613-ca92-f50f801543d9@apache.org%3E
CVE-2021-44228£º£º£º
Log4j 1.x£º£º£º²»ÊÜCVE-2021-44228·ì϶ӰÏì¡£¡£¡£
Log4j 2.x£º£º£º
l ÊÜÓ°ÏìÓû§Ó¦Éý¼¶µ½Apache Log4j 2.15.0-rc2¼°ÒÔÉϰ汾£¬½¨ÒéÉý¼¶µ½ 2.16.0 °æ±¾£¨Java 8»ò¸ü¸ß°æ±¾£©¡£¡£¡£
l ʹÓÃJava 7µÄÓû§Ó¦Éý¼¶µ½Apache Log4j 2.12.2°æ±¾¡£¡£¡£
l ɾ³ý JndiLookup Àࣺ£º£ºzip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
²Î¿¼Á´½Ó£º£º£º
https://logging.apache.org/log4j/2.x/index.html
CVE-2021-45046£º£º£º
Log4j 1.x£º£º£º²»ÊÜCVE-2021-45046·ì϶ӰÏì¡£¡£¡£
l Log4j 2.x£º£º£º
l Java 8»ò¸ü¸ß°æ±¾Ó¦Éý¼¶µ½ Apache Log4j 2.16.0 °æ±¾¡£¡£¡£
l ʹÓÃJava 7 µÄÓû§Ó¦Éý¼¶µ½Apache Log4j 2.12.2°æ±¾¡£¡£¡£
l ɾ³ý JndiLookup Àࣺ£º£º zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
²Î¿¼Á´½Ó£º£º£º
http://mail-archives.apache.org/mod_mbox/www-announce/202112.mbox/%3C13e07d4e-ceb6-e510-be98-7d2ee8fa0a85@apache.org%3E
CVE-2021-45105£º£º£º
Log4j 1.x£º£º£º²»ÊÜCVE-2021-45105·ì϶ӰÏì¡£¡£¡£
Log4j 2.x£º£º£ºJava 8»ò¸ü¸ß°æ±¾Óû§½¨ÒéÉý¼¶µ½ 2.17.0 °æ¡£¡£¡£
»º½â´ëÊ©£º£º£º
l ÔÚÈÕÖ¾ÅäÖõÄPatternLayoutÖУ¬ÓÃÏ̸߳ߵÍÎÄÓ³Éäģʽ£¨%X£¬%mdc»ò%mdc£©´úÌæ¸ßµÍÎIJéÕÒ£¬Èç${ctx:loginId}»ò$${ctx:loginId}¡£¡£¡£
l ²»È»£¬ÔÚÅäÖÃÖУ¬É¾³ý¶Ô¸ßµÍÎIJéÕÒµÄÒýÓã¬Èç ${ctx£º£º£ºloginId} »ò $${ctx£º£º£ºloginId}£¬ËüÃÇÔ´×ÔÀûÓ÷¨Ê½ÍⲿµÄÔ´£¬Èç HTTP Í·»òÓû§ÊäÈë¡£¡£¡£
ÏÂÔØÁ´½Ó£º£º£º
https://logging.apache.org/log4j/2.x/download.html
×¢£º£º£ºÖ»ÓÐlog4j-core JARÎļþÊÜCVE-2021-44228¡¢CVE-2021-45046ºÍCVE-2021-45105·ì϶µÄÓ°Ïì¡£¡£¡£Ö»Ê¹ÓÃlog4j-api JARÎļþ¶ø²»Ê¹ÓÃlog4j-core JARÎļþµÄÀûÓ÷¨Ê½²»»áÊܵ½Ó°Ïì¡£¡£¡£
0x03 ²Î¿¼Á´½Ó
https://github.com/apache/logging-log4j2
https://logging.apache.org/log4j/2.x/security.html#CVE-2021-44228
https://logging.apache.org/log4j/2.x/security.html
0x04 ¸üа汾
°æ±¾ | ÈÕÆÚ | Åú¸ÄÄÚÈÝ |
V1.0 | 2021-12-19 | ³õ´Î°ä²¼ |
0x05 ¹ØÓÚOG¶«·½Ìü
OG¶«·½Ìü¼ò½é
OG¶«·½Ìü¹«Ë¾³ÉÁ¢ÓÚ1996Ä꣬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂ簲ȫ²úÆ·¡¢¿ÉÐŰ²È«ÖÎÀíÆ½Ì¨¡¢°²È«·þÎñÓë½â¾ö¹æ»®µÄ×ÛºÏÌṩÉÌ¡£¡£¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬ÔÚÈ«¹ú¸÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬Õ¼Óи²¸ÇÈ«¹úµÄÇþµÀϵͳºÍ¼¼ÊõÖ§³ÖÖÐÐÄ£¬²¢ÔÚ±±¾©¡¢ÉϺ£¡£¡£¡¢³É¶¼¡¢ÕÑͨ¡¢³¤É³¡¢¾£ÃÅµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£¡£¡£
¶àÄêÀ´£¬OG¶«·½ÌüÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£¡£¡£
¹ØÓÚOG¶«·½Ìü
OG¶«·½Ìü°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶ÔÖØÒª°²È«·ì϶µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£¡£¡£
¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º£º£º



¾©¹«Íø°²±¸11010802024551ºÅ