¡¾Â©¶´Í¨¸æ¡¿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ÈÕ£¬¶¶È¦Îª¶Ä¶øÉú¼¯ÍÅ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 ½øÐÐÊý¾Ý´¦ÖÃʱ²Å»áÊܵ½Ó°Ï죬Ӧȷ±£Ó¦Ó÷¨Ê½£º

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

ÅäÖò¢ÏÞÖÆ¿ÉÒÔͨ¹ý·´ÐòÁл¯´¦ÖõÄÀà¡£

Èç¹û²»ÐèÒª 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 ¶¶È¦Îª¶Ä¶øÉú¼ò½é


¶¶È¦Îª¶Ä¶øÉú½¨Á¢ÓÚ1996Ä꣬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Äþ¾²¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Äþ¾²²úÎï¡¢Äþ¾²·þÎñ½â¾ö·½°¸µÄÁ캽ÆóÒµÖ®Ò»¡£


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


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


5.2 ¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú


¶¶È¦Îª¶Ä¶øÉúÄþ¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÒÑÐû²¼1000¶à¸ö©¶´Í¨¸æºÍ·çÏÕÔ¤¾¯£¬ÎÒÃǽ«Á¬Ðø¸ú×ÙÈ«Çò×îеÄÍøÂçÄþ¾²Ê¼þºÍ©¶´£¬ÎªÆóÒµµÄÐÅÏ¢Äþ¾²±£¼Ý»¤º½¡£


¹Ø×¢ÎÒÃÇ£º


Äþ¾²¼òѶ.jpg