¡¾Îó²îͨ¸æ¡¿SuperjsonÔ¶³Ì´úÂëÖ´ÐÐÎó²î£¨CVE-2022-23631£©
Ðû²¼Ê±¼ä 2022-07-220x00 Îó²î¸ÅÊö
CVE ID | CVE-2022-23631 | ·¢Ã÷ʱ¼ä | 2022-07-22 |
Àà ÐÍ | RCE | µÈ ¼¶ | ÑÏÖØ |
Ô¶³ÌʹÓà | ÊÇ | Ó°Ïì¹æÄ£ | |
¹¥»÷ÖØÆ¯ºó | µÍ | Óû§½»»¥ | ÎÞ |
PoC/EXP | ÔÚҰʹÓà |
0x01 Îó²îÏêÇé
SuperJsonÊÇÒ»¸öJsonÆÊÎöÆ÷ºÍÌìÉúÆ÷£¬£¬£¬£¬£¬ÆäÉè¼Æ×ñÕÕÎÞÓïÑÔÌØÕ÷£¬£¬£¬£¬£¬¿ÉÒÔÓÃÈκαà³ÌÓïÑÔʵÏÖ£»£»£»£»Blitz.jsÊÇÒ»¸öȫջ React Web ¿ò¼Ü£¬£¬£¬£¬£¬»ùÓÚ Next.js ¹¹½¨¡£¡£¡£¡£
7ÔÂ12ÈÕ£¬£¬£¬£¬£¬Ñо¿Ö°Ô±¹ûÕæÅû¶ÁËSuperjson Öпɵ¼ÖÂÔ¶³Ì´úÂëÖ´ÐеÄÒ»¸öÔÐÍÎÛȾÎó²î(CVE-2022-23631)µÄÎó²îϸ½Ú£¬£¬£¬£¬£¬¸ÃÎó²îµÄCVSSÆÀ·ÖΪ9.8¡£¡£¡£¡£
SuperJson 1.8.1֮ǰµÄ°æ±¾Öб£´æÔÐÍÎÛȾÎó²î£¬£¬£¬£¬£¬ÀÖ³ÉʹÓôËÎó²î¿ÉÔÚδ¾Éí·ÝÑéÖ¤µÄÇéÐÎÏÂÔÚÄ¿µÄЧÀÍÆ÷ÉÏÔ¶³ÌÖ´ÐÐí§Òâ´úÂë¡£¡£¡£¡£ÓÉÓÚBlitz.jsµÄRPC²ãÖÐʹÓÃÁËSuperjson£¬£¬£¬£¬£¬Òò´Ë¸ÃÎó²îÒ²Ó°ÏìÁËBlitz.js ¿ò¼Ü¡£¡£¡£¡£
Ó°Ïì¹æÄ£
Superjson (npm) < 1.8.1
Blitz.js (npm) < 0.45.3
0x02 Çå¾²½¨Òé
ÏÖÔÚ´ËÎó²îÒѾÐÞ¸´£¬£¬£¬£¬£¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½Superjson°æ±¾1.8.1¡¢Blitz.js °æ±¾0.45.3»ò¸ü¸ß°æ±¾¡£¡£¡£¡£
ÏÂÔØÁ´½Ó£º
https://www.npmjs.com/package/superjson
×¢£ºÈôÎÞ·¨Éý¼¶Blitz.js£¬£¬£¬£¬£¬¿ÉÒÔÑ¡Ôñ½«SuperjsonÉý¼¶µ½1.8.1»ò¸ü¸ß°æ±¾¡£¡£¡£¡£
0x03 ²Î¿¼Á´½Ó
https://blog.sonarsource.com/blitzjs-prototype-pollution/
https://github.com/blitz-js/superjson/security/advisories/GHSA-5888-ffcr-r425
https://latesthackingnews.com/2022/07/21/blitz-js-framework-vulnerability-could-allow-remote-code-execution/
0x04 °æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | ÐÞ¸ÄÄÚÈÝ |
V1.0 | 2022-07-22 | Ê×´ÎÐû²¼ |
0x05 ¸½Â¼
¼øºÚµ£±£Íø¼ò½é
¼øºÚµ£±£Íø½¨ÉèÓÚ1996Ä꣬£¬£¬£¬£¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ½¨ÉèµÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Çå¾²¸ß¿Æ¼¼ÆóÒµ¡£¡£¡£¡£ÊǺ£ÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Çå¾²²úÆ·¡¢Ç徲ЧÀͽâ¾ö¼Æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£¡£¡£¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°¼øºÚµ£±£Íø´óÏ㬣¬£¬£¬£¬¹«Ë¾Ô±¹¤½ü4000ÈË£¬£¬£¬£¬£¬Ñз¢ÍŶÓ1200ÓàÈË, ÊÖÒÕЧÀÍÍŶÓ1300ÓàÈË¡£¡£¡£¡£ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬£¬£¬£¬£¬ÓµÓÐÁýÕÖÌìϵÄÏúÊÛϵͳ¡¢ÇþµÀϵͳºÍÊÖÒÕÖ§³Öϵͳ¡£¡£¡£¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС£¡£¡£¡££¨¹ÉƱ´úÂ룺002439£©
¶àÄêÀ´£¬£¬£¬£¬£¬¼øºÚµ£±£ÍøÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷Á¢ÒìµÄÇå¾²²úÆ·ºÍ×î¼Ñʵ¼ùЧÀÍ£¬£¬£¬£¬£¬×ÊÖú¿Í»§ÖÜÈ«ÌáÉýÆäIT»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬£¬£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£
¹ØÓÚ¼øºÚµ£±£Íø
¼øºÚµ£±£ÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£
¹Ø×¢ÒÔϹ«Öںţ¬£¬£¬£¬£¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º