¡¾Â©¶´Í¨¸æ¡¿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