¡¾Â©¶´Í¨¸æ¡¿SuperjsonÔ¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2022-23631£©

Ðû²¼Ê±¼ä 2022-07-22

0x00 ©¶´¸ÅÊö

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»ù´¡ÉèÊ©µÄÄþ¾²ÐÔºÍÉú²úЧÄÜ £¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Äþ¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Å¬Á¦¡£

 

¹ØÓÚ¶«É­Æ½Ì¨

¶«É­Æ½Ì¨Äþ¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖØÒªÄþ¾²Â©¶´µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÄþ¾²³ÂËß¡£

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

image.png