¡¾Îó²îͨ¸æ¡¿Apache MINA·´ÐòÁл¯Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2024-52046£©

Ðû²¼Ê±¼ä 2024-12-25

Ò»¡¢Îó²î¸ÅÊö


Îó²îÃû³Æ

 Apache MINA·´ÐòÁл¯Ô¶³Ì´úÂëÖ´ÐÐÎó²î

CVE   ID

CVE-2024-52046

Îó²îÀàÐÍ

·´ÐòÁл¯

·¢Ã÷ʱ¼ä

2024-12-25

Îó²îÆÀ·Ö

ÔÝÎÞ

Îó²îÆ·¼¶

¸ßΣ

¹¥»÷ÏòÁ¿

ÍøÂç

ËùÐèȨÏÞ

ÎÞ

ʹÓÃÄѶÈ

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP

δ¹ûÕæ

ÔÚҰʹÓÃ

δ·¢Ã÷

 


Apache MINA£¨Multipurpose Infrastructure for Network Applications£©ÊÇÒ»¸ö¸ßÐÔÄܵÄÍøÂçͨѶ¿ò¼Ü£¬£¬£¬£¬£¬£¬£¬Ö¼ÔÚ×ÊÖú¿ª·¢Ö°Ô±¿ìËÙ¹¹½¨ºÍÖÎÀíÍøÂçÓ¦ÓóÌÐò¡£¡£¡£


2024Äê12ÔÂ25ÈÕ£¬£¬£¬£¬£¬£¬£¬¿­Ê±K66¼¯ÍÅVSRC¼à²âµ½Apache MINAÖб£´æÒ»¸ö·´ÐòÁл¯Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2024-52046£©¡£¡£¡£


Apache MINA¶à¸öÊÜÓ°Ïì°æ±¾Öб£´æ·´ÐòÁл¯Ô¶³Ì´úÂëÖ´ÐÐÎó²î£¬£¬£¬£¬£¬£¬£¬ÓÉÓÚApache MINA µÄ ObjectSerializationDecoder ×é¼þʹÓÃÁË Java Ô­Éú·´ÐòÁл¯Ð­ÒéÀ´´¦Öóͷ£´«ÈëµÄÐòÁл¯Êý¾Ý£¬£¬£¬£¬£¬£¬£¬µ«È±·¦ÐëÒªµÄÇå¾²¼ì²éºÍ·ÀÓù»úÖÆ£¬£¬£¬£¬£¬£¬£¬¹¥»÷Õß¿Éͨ¹ýÏòÊÜÓ°ÏìµÄÓ¦ÓóÌÐò·¢ËÍÌØÖÆµÄ¶ñÒâÐòÁл¯Êý¾Ý£¬£¬£¬£¬£¬£¬£¬Ê¹Óò»Çå¾²µÄ·´ÐòÁл¯Àú³Ì´¥·¢¸ÃÎó²î£¬£¬£¬£¬£¬£¬£¬´Ó¶ø¿ÉÄܵ¼ÖÂÔ¶³Ì´úÂëÖ´ÐС£¡£¡£


¶þ¡¢Ó°Ïì¹æÄ£


Apache MINA 2.0.X < 2.0.27

Apache MINA 2.1.X < 2.1.10

Apache MINA 2.2.X < 2.2.4


Èý¡¢Çå¾²²½·¥


3.1 Éý¼¶°æ±¾


1.ÏÖÔÚ¸ÃÎó²îÒѾ­ÐÞ¸´£¬£¬£¬£¬£¬£¬£¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½ÒÔϰ汾£º


Apache MINA 2.0.X >= 2.0.27

Apache MINA 2.1.X >= 2.1.10

Apache MINA 2.2.X >= 2.2.4


ÏÂÔØÁ´½Ó£º

https://mina.apache.org/downloads-mina_2_0.html


2.ÉèÖÃObjectSerializationDecoder¡£¡£¡£


ÔÚÉý¼¶ºó£¬£¬£¬£¬£¬£¬£¬»¹ÐèÒªÉèÖÃObjectSerializationDecoderʵÀý£¬£¬£¬£¬£¬£¬£¬ÒÔÏÞÖÆÄÄЩÀà¿ÉÒÔ±»·´ÐòÁл¯¡£¡£¡£Ä¬ÈÏÇéÐÎÏ£¬£¬£¬£¬£¬£¬£¬ObjectSerializationDecoder »á¾Ü¾øËùÓд«ÈëµÄÀ࣬£¬£¬£¬£¬£¬£¬ÐèҪʹÓÃÒÔÏÂÒªÁìÖ®Ò»À´Ã÷È·ÔÊÐíÌØ¶¨µÄÀࣺ


accept(ClassNameMatcher classNameMatcher)£ºÊ¹ÓÃÌṩµÄClassNameMatcherÀ´Æ¥ÅäÔÊÐí·´ÐòÁл¯µÄÀàÃû¡£¡£¡£

accept(Pattern pattern)£ºÊ¹Óñê×¼JavaÕýÔò±í´ïʽÀ´Æ¥ÅäÔÊÐí·´ÐòÁл¯µÄÀàÃû¡£¡£¡£

accept(String... patterns)£ºÊ¹ÓÃApache Commons IO¿âÖеÄͨÅä·ûģʽÀ´Æ¥ÅäÔÊÐí·´ÐòÁл¯µÄÀàÃû¡£¡£¡£


3. ¼ì²éʹÓà IoBuffer#getObject() µÄµØ·½¡£¡£¡£


¸ÃÎó²î½öÔÚÓ¦ÓóÌÐòʹÓà IoBuffer#getObject() ÒªÁ죬£¬£¬£¬£¬£¬£¬²¢Í¨¹ý ProtocolCodecFilter ºÍ ObjectSerializationCodecFactory ¾ÙÐÐÊý¾Ý´¦Öóͷ£Ê±²Å»áÊܵ½Ó°Ï죬£¬£¬£¬£¬£¬£¬Ó¦È·±£Ó¦ÓóÌÐò£º

? Éý¼¶µ½ÐÞ¸´°æ±¾¡£¡£¡£

ÉèÖò¢ÏÞÖÆ¿ÉÒÔͨ¹ý·´ÐòÁл¯´¦Öóͷ£µÄÀà¡£¡£¡£

ÈôÊDz»ÐèÒª getObject() ÒªÁ죬£¬£¬£¬£¬£¬£¬×èֹʹÓÃËü£¬£¬£¬£¬£¬£¬£¬ÒÔïÔÌ­Ç徲Σº¦¡£¡£¡£


4.²âÊÔºÍÑéÖ¤¡£¡£¡£


ÐÞ¸´ºó£¬£¬£¬£¬£¬£¬£¬²âÊÔÓ¦ÓóÌÐòÒÔÈ·±£Ëü°´Ô¤ÆÚÊÂÇé²¢ÇÒûÓÐÒýÈëеÄÎÊÌ⣬£¬£¬£¬£¬£¬£¬ÓÈÆäÊÇÔÚÐòÁл¯ºÍ·´ÐòÁл¯´¦Öóͷ£·½Ã棬£¬£¬£¬£¬£¬£¬²¢ÑéÖ¤ObjectSerializationDecoderµÄÉèÖÃÊÇ·ñ׼ȷ£¬£¬£¬£¬£¬£¬£¬È·±£Ö»ÓÐÔ¤ÆÚµÄÀà±»ÔÊÐí·´ÐòÁл¯¡£¡£¡£


3.2 ÔÝʱ²½·¥


ÔÝÎÞ¡£¡£¡£


3.3 ͨÓý¨Òé


°´ÆÚ¸üÐÂϵͳ²¹¶¡£¬£¬£¬£¬£¬£¬£¬ïÔ̭ϵͳÎó²î£¬£¬£¬£¬£¬£¬£¬ÌáÉýЧÀÍÆ÷µÄÇå¾²ÐÔ¡£¡£¡£

ÔöǿϵͳºÍÍøÂçµÄ»á¼û¿ØÖÆ£¬£¬£¬£¬£¬£¬£¬Ð޸ķÀ»ðǽսÂÔ£¬£¬£¬£¬£¬£¬£¬¹Ø±Õ·ÇÐëÒªµÄÓ¦Óö˿ڻòЧÀÍ£¬£¬£¬£¬£¬£¬£¬ïÔÌ­½«Î£ÏÕЧÀÍ£¨ÈçSSH¡¢RDPµÈ£©Ì»Â¶µ½¹«Íø£¬£¬£¬£¬£¬£¬£¬ïÔÌ­¹¥»÷Ãæ¡£¡£¡£

ʹÓÃÆóÒµ¼¶Çå¾²²úÆ·£¬£¬£¬£¬£¬£¬£¬ÌáÉýÆóÒµµÄÍøÂçÇå¾²ÐÔÄÜ¡£¡£¡£

ÔöǿϵͳÓû§ºÍȨÏÞÖÎÀí£¬£¬£¬£¬£¬£¬£¬ÆôÓöàÒòËØÈÏÖ¤»úÖÆºÍ×îСȨÏÞÔ­Ôò£¬£¬£¬£¬£¬£¬£¬Óû§ºÍÈí¼þȨÏÞÓ¦¼á³ÖÔÚ×îµÍÏÞ¶È¡£¡£¡£

ÆôÓÃÇ¿ÃÜÂëÕ½ÂÔ²¢ÉèÖÃΪ°´ÆÚÐ޸ġ£¡£¡£


3.4 ²Î¿¼Á´½Ó


https://nvd.nist.gov/vuln/detail/CVE-2024-52046

https://seclists.org/oss-sec/2024/q4/177


ËÄ¡¢°æ±¾ÐÅÏ¢


°æ±¾

ÈÕÆÚ

±¸×¢

V1.0

2024-12-25

Ê×´ÎÐû²¼

 

Îå¡¢¸½Â¼


5.1 ¿­Ê±K66¼ò½é


¿­Ê±K66½¨ÉèÓÚ1996Ä꣬£¬£¬£¬£¬£¬£¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ½¨ÉèµÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Çå¾²¸ß¿Æ¼¼ÆóÒµ¡£¡£¡£ÊǺ£ÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Çå¾²²úÆ·¡¢Ç徲ЧÀͽâ¾ö¼Æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£¡£¡£


¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°¿­Ê±K66´óÏ㬣¬£¬£¬£¬£¬£¬¹«Ë¾Ô±¹¤6000ÓàÈË£¬£¬£¬£¬£¬£¬£¬Ñз¢ÍŶÓ1200ÓàÈË, ÊÖÒÕЧÀÍÍŶÓ1300ÓàÈË¡£¡£¡£ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬£¬£¬£¬£¬£¬£¬ÓµÓÐÁýÕÖÌìϵÄÏúÊÛϵͳ¡¢ÇþµÀϵͳºÍÊÖÒÕÖ§³Öϵͳ¡£¡£¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС£¡£¡££¨¹ÉƱ´úÂ룺002439£©


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


5.2 ¹ØÓÚ¿­Ê±K66


¿­Ê±K66Çå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÒÑÐû²¼1000¶à¸öÎó²îͨ¸æºÍΣº¦Ô¤¾¯£¬£¬£¬£¬£¬£¬£¬ÎÒÃǽ«Ò»Á¬¸ú×ÙÈ«Çò×îеÄÍøÂçÇå¾²ÊÂÎñºÍÎó²î£¬£¬£¬£¬£¬£¬£¬ÎªÆóÒµµÄÐÅÏ¢Çå¾²±£¼Ý»¤º½¡£¡£¡£


¹Ø×¢ÎÒÃÇ£º


Çå¾²¼òѶ.jpg