¡¾Îó²îͨ¸æ¡¿Apache Log4j2¾Ü¾øÐ§ÀÍÎó²î£¨CVE-2021-45046£©

Ðû²¼Ê±¼ä 2021-12-16


0x00 Îó²î¸ÅÊö

CVE     ID

CVE-2021-45046

ʱ      ¼ä

2021-12-14

Àà      ÐÍ

Dos

µÈ      ¼¶

ÖÐΣ

Ô¶³ÌʹÓÃ

ÊÇ

Ó°Ïì¹æÄ£


¹¥»÷ÖØÆ¯ºó

¸ß

¿ÉÓÃÐÔ

µÍ

Óû§½»»¥

 ÎÞ

ËùÐèȨÏÞ

ÎÞ

PoC/EXP


ÔÚҰʹÓÃ


 

0x01 Îó²îÏêÇé

image.png

Apache Log4j2ÊÇÒ»¸ö¿ªÔ´µÄJavaÈÕÖ¾¿ò¼Ü£¬£¬£¬£¬£¬£¬±»ÆÕ±éµØÓ¦ÓÃÔÚÖÐÐļþ¡¢¿ª·¢¿ò¼ÜÓëWebÓ¦ÓÃÖС£¡£¡£¡£

²¿·Öʱ¼äÏß

11ÔÂ24ÈÕ£º°¢ÀïÔÆÇå¾²ÍŶÓÏòApache¹Ù·½±¨¸æÁËApache  Log4j2Ô¶³Ì´úÂëÖ´ÐÐÎó²îCVE-2021-44228£»£»£»£»

12ÔÂ7ÈÕ£ºApache Log4j2¹Ù·½Ðû²¼log4j2-2.15.0-rc1²¢µÚÒ»´ÎÐÞ¸´CVE-2021-44228Îó²î£»£»£»£»

12ÔÂ9ÈÕ£ºÍòÀû¹ú¼Ê¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐļà²âµ½Apache Log4j2 Ô¶³Ì´úÂëÖ´ÐÐÎó²îCVE-2021-44228£¨CVSSÆÀ·Ö10.0£©£¬£¬£¬£¬£¬£¬¸÷²úÆ·Ïß¿ªÕ¹Ó¦¼±ÏìÓ¦´¦Öóͷ£¡£¡£¡£¡£

12ÔÂ14ÈÕ£ºÍòÀû¹ú¼Ê¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐļà²âµ½Apache Log4j 1.2Ô¶³Ì´úÂëÖ´ÐÐÎó²îCVE-2021-4104£¨CVSSÆÀ·Ö6.6£©¡£¡£¡£¡£

12ÔÂ15ÈÕ£ºÍòÀû¹ú¼Ê¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐļà²âµ½Apache Log4j2¾Ü¾øÐ§ÀÍÎó²îCVE-2021-45046£¨CVSSÆÀ·Ö3.7£©¡£¡£¡£¡£

 

Apache Log4j2¹Ù·½ÐÞ¸´¼Æ»®

12ÔÂ7ÈÕ£ºApache Log4j2¹Ù·½Ðû²¼log4j2-2.15.0-rc1²¢µÚÒ»´ÎÐÞ¸´CVE-2021-44228£»£»£»£»

12ÔÂ10ÈÕ£ºlog4j2-2.15.0-rc1±£´æBypass£¬£¬£¬£¬£¬£¬Apache Log4j2¹Ù·½Ðû²¼log4j2-2.15.0-rc2ÐÞ¸´bypassÎó²î¡£¡£¡£¡£

 12ÔÂ11ÈÕ£ºApache Log4j2¹Ù·½Ðû²¼ÁË2.15.0 °æ±¾£¬£¬£¬£¬£¬£¬ÒÔÐÞ¸´CVE-2021-44228¡£¡£¡£¡£ËäÈ» 2.15.0 °æ±¾½â¾öÁËMessage Lookups¹¦Ð§ºÍJNDI »á¼û·½·¨µÄÎÊÌ⣬£¬£¬£¬£¬£¬µ« Log4jÍŶÓÒÔΪĬÈÏÆôÓà JNDI ±£´æÇ徲Σº¦£¬£¬£¬£¬£¬£¬ÇÒ2.15.0°æ±¾±£´æCVE-2021-45046Îó²î¡£¡£¡£¡£

12ÔÂ13ÈÕ£ºApache Log4j2¹Ù·½Ðû²¼ÁËLog4j 2.16.0°æ±¾£¨Java 8»ò¸ü¸ß°æ±¾£©£¬£¬£¬£¬£¬£¬¸Ã°æ±¾É¾³ýÁËMessage Lookups¹¦Ð§²¢Ä¬ÈϽûÓÃJNDI¹¦Ð§£¬£¬£¬£¬£¬£¬²¢´Ó¸Ã°æ±¾×îÏÈĬÈϽûÓÃJNDI¹¦Ð§£¬£¬£¬£¬£¬£¬µ«¿ÉÒÔͨ¹ý½«log4j2.enableJndiÉèÖÃΪ true ÒÔÆôÓà JNDI¡£¡£¡£¡£±ðµÄ£¬£¬£¬£¬£¬£¬Log4jÏÖÔÚ½«Ð­ÒéĬÈÏÏÞÖÆÎª½öjava¡¢ldapºÍldaps£¬£¬£¬£¬£¬£¬²¢½«ldapЭÒéÏÞÖÆÎªÖ»ÄÜ»á¼ûJavaԭʼ¹¤¾ß¡£¡£¡£¡£µ±ÌïÖ÷»úÒÔÍâµÄÖ÷»úÐèÒª±»Ã÷È·ÔÊÐí¡£¡£¡£¡£

12ÔÂ15ÈÕ£ºApache Log4j2¹Ù·½Ðû²¼ÁËApache Log4j 2.12.2°æ±¾£¬£¬£¬£¬£¬£¬¸Ã°æ±¾ÐÞ¸´ÁËCVE-2021-44228ºÍCVE-2021-45046£¬£¬£¬£¬£¬£¬ÊÊÓÃÓÚÈÔÔÚʹÓÃJava 7µÄÓû§¡£¡£¡£¡£

 

¹©Ó¦Á´Ó°Ïì

ƾ֤·ÇȨÍþͳ¼Æ£¬£¬£¬£¬£¬£¬Ö±½ÓºÍ¼ä½ÓÒýÓÃLog4jµÄ¿ªÔ´×é¼þÔ¤¼ÆÁè¼Ý17Íò¸ö¡£¡£¡£¡£ÏÖÔÚÒÑÖªµÄÊÜÓ°ÏìµÄÓ¦ÓúÍ×é¼þ°üÀ¨£ºApache Solr¡¢Apache Struts2¡¢Apache Flink¡¢Apache Druid¡¢Apache Log4j SLF4J  Binding¡¢spring-boot-strater-log4j2¡¢Hadoop Hive¡¢ElasticSearch¡¢Jedis¡¢Logging¡¢LogstashÒÔ¼°VMware¶à¸ö²úÆ·µÈ¡£¡£¡£¡£

ÓÉÓÚ¸ÃÎó²îµÄÓ°Ïì¹æÄ£ÊÇÈ«ÇòÐԵ쬣¬£¬£¬£¬£¬ÍâÑó¸÷´ó×ÅÃûÆóÒµºÍ×éÖ¯µÄ²úÆ·¾ùÊÜÓ°Ï죬£¬£¬£¬£¬£¬ÈçAmazon¡¢Apache¡¢Atlassian¡¢Cisco¡¢Debian¡¢Docker¡¢Fortinet¡¢Google¡¢IBM¡¢Ó¢Ìضû¡¢Juniper Networ¡¢Î¢Èí¡¢Oracle¡¢Red Hat¡¢UbuntuºÍVMwareµÈ¡£¡£¡£¡£

CVE-2021-44228Îó²îµÄʹÓÃÄѶȵÍ£¬£¬£¬£¬£¬£¬Ä¬ÈÏÉèÖü´¿ÉÔ¶³ÌʹÓ㬣¬£¬£¬£¬£¬ÇÒPoC/EXPÒÑÔÚ»¥ÁªÍøÉϹûÕæ£¬£¬£¬£¬£¬£¬ÏÖÒѱ»ÍøÂç·¸·¨ÍÅ»ïÆÕ±éʹÓᣡ£¡£¡£

 

Îó²îÓ°Ïì¹æÄ£

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


0x02 ´¦Öóͷ£½¨Òé

1.ͨÓÃÐÞ¸´¼Æ»®

ÒÑÉý¼¶µ½ Log4j 2.15.0 °æ±¾µÄÓû§½¨ÒéÉý¼¶µ½ Log4j 2.16.0 ÒÔ×èÖ¹Õë¶ÔCVE-2021-44228 ºÍ CVE-2021-45046Îó²îµÄ¹¥»÷ ¡£¡£¡£¡£

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Îó²îÓ°Ïì¡£¡£¡£¡£

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

ÏÂÔØÁ´½Ó£º

https://logging.apache.org/log4j/2.x/download.html

×¢£ºÖ»ÓÐlog4j-core JARÎļþÊÜCVE-2021-44228ºÍCVE-2021-45046Îó²îµÄÓ°Ïì¡£¡£¡£¡£Ö»Ê¹ÓÃlog4j-api JARÎļþ¶ø²»Ê¹ÓÃlog4j-core JARÎļþµÄÓ¦ÓóÌÐò²»»áÊܵ½Ó°Ïì¡£¡£¡£¡£

 

2.ͨÓÃÔÝʱ¼Æ»®£¨CVE-2021-44228£©

l  ½¨ÒéJDKʹÓÃ6u211¡¢7u201¡¢8u191¡¢11.0.1¼°ÒÔÉϵİ汾£»£»£»£»

l  ¹ØÓÚ>=2.10°æ±¾£º

Ìí¼ÓjvmÆô¶¯²ÎÊý:-Dlog4j2.formatMsgNoLookups=true£»£»£»£»

ÔÚlog4j2.component.propertiesÉèÖÃÎļþÖÐÔöÌíÈçÏÂÄÚÈÝ£ºlog4j2.formatMsgNoLookups=true£»£»£»£»

ϵͳÇéÐαäÁ¿Öн«LOG4J_FORMAT_MSG_NO_LOOKUPSÉèÖÃΪtrue£»£»£»£»

l  ¹ØÓÚ2.7-2.14.1°æ±¾£º

¿ÉÒÔÐÞ¸ÄËùÓÐPatternLayoutģʽ£¬£¬£¬£¬£¬£¬½«ÐÂÎÅת»»Æ÷Ö¸¶¨Îª%m{nolookups}£¬£¬£¬£¬£¬£¬¶ø²»µ«½öÊÇ%m¡£¡£¡£¡£

l  ¹ØÓÚ2.0-beta9-2.7°æ±¾£º

ΨһµÄ»º½â²½·¥ÊÇɾ³ýjndiookupÀࣺzip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

l  եȡװÖÃlog4jµÄЧÀÍÆ÷»á¼ûÍâÍø£¬£¬£¬£¬£¬£¬²¢ÔÚ½çÏß¶ÔdnslogÏà¹ØÓòÃû»á¼û¾ÙÐмì²â¡£¡£¡£¡£


0x03 ²Î¿¼Á´½Ó

https://github.com/apache/logging-log4j2

https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

https://mp.weixin.qq.com/s/J5H9aZVhwQaVn3LvKi2Kqw

https://logging.apache.org/log4j/2.x/security.html#CVE-2021-44228

https://www.cisa.gov/uscert/apache-log4j-vulnerability-guidance

 

0x04 ¸üа汾

°æ±¾

ÈÕÆÚ

ÐÞ¸ÄÄÚÈÝ

V1.0

2021-12-9

Ê×´ÎÐû²¼

V2.0

2021-12-10

ÐÞ¸Äϸ½Ú

V3.0

2021-12-10

ÐÞ¸Äbug

V4.0

2021-12-12

ÐÂÔöCVE£­ID¼°²¿·ÖÄÚÈÝ¡¢Ð޸Ļº½â²½·¥¡£¡£¡£¡£

V5.0

2021-12-14

Ð޸Ĵ¦Öóͷ£½¨Òé

V6.0

2021-12-16

ÐÞ¸Äϸ½Ú


0x05 ¹ØÓÚÍòÀû¹ú¼Ê¹ÙÍø

ÍòÀû¹ú¼Ê¹ÙÍø¼ò½é

ÍòÀû¹ú¼Ê¹ÙÍø¹«Ë¾½¨ÉèÓÚ1996Ä꣬£¬£¬£¬£¬£¬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬£¬£¬£¬£¬£¬ÊǺ£ÄÚ¼«¾ßʵÁ¦µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂçÇå¾²²úÆ·¡¢¿ÉÐÅÇå¾²ÖÎÀíÆ½Ì¨¡¢Ç徲ЧÀÍÓë½â¾ö¼Æ»®µÄ×ÛºÏÌṩÉÌ¡£¡£¡£¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬£¬£¬£¬£¬£¬ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬£¬£¬£¬£¬£¬ÓµÓÐÁýÕÖÌìϵÄÇþµÀϵͳºÍÊÖÒÕÖ§³ÖÖÐÐÄ£¬£¬£¬£¬£¬£¬²¢ÔÚ±±¾©¡¢ÉϺ£¡¢³É¶¼¡¢¹ãÖÝ¡¢³¤É³¡¢º¼ÖÝµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£¡£¡£¡£

¶àÄêÀ´£¬£¬£¬£¬£¬£¬ÍòÀû¹ú¼Ê¹ÙÍøÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷Á¢ÒìµÄÇå¾²²úÆ·ºÍ×î¼Ñʵ¼ùЧÀÍ£¬£¬£¬£¬£¬£¬×ÊÖú¿Í»§ÖÜÈ«ÌáÉýÆäIT»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬£¬£¬£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£


¹ØÓÚÍòÀû¹ú¼Ê¹ÙÍø

ÍòÀû¹ú¼Ê¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£

¹Ø×¢ÒÔϹ«Öںţ¬£¬£¬£¬£¬£¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º

image.png