¡¾Â©¶´Í¨¸æ¡¿JsonWebTokenÔ¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2022-23529£©
Ðû²¼Ê±¼ä 2023-01-100x00 ©¶´¸ÅÊö
CVE ID | CVE-2022-23529 | ·¢ÏÖʱ¼ä | 2023-01-10 |
Àà ÐÍ | ÊäÈëÑéÖ¤²»Í× | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°Ï췶Χ | |
¹¥»÷ÅÓ´ó¶È | µÍ | Óû§½»»¥ | ÎÞ |
PoC/EXP | ÔÚÒ°ÀûÓÃ |
0x01 ©¶´ÏêÇé
JsonWebTokenÊÇÒ»¸öÊÜ»¶ÓµÄ¿ªÔ´¿â£¬ÓÃÓÚ´´½¨¡¢Ç©ÃûºÍÑéÖ¤ JSON Web ÁîÅÆ¡£
2022Äê12ÔÂ21ÈÕ£¬node-jsonwebtokenÏîÄ¿Ðû²¼Äþ¾²Í¨¸æ£¬ÐÞ¸´ÁËJsonWebTokenÖеÄÒ»¸öÔ¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2022-23529£©£¬¸Ã©¶´µÄCVSSv3ÆÀ·Ö×î¸ßΪ9.8¡£
JsonWebToken 8.5.1¼°Ö®Ç°°æ±¾ÖУ¬ÓÉÓÚjwt.verify()º¯ÊýÖдæÔÚ²»Äþ¾²µÄÊäÈëÑé֤©¶´£¬Èç¹ûÄܹ»ÐÞ¸Äjwt.verify()º¯ÊýµÄÃÜÔ¿¼ìË÷²ÎÊý£¨²Î¿¼readmeÁ´½ÓÖеÄsecretOrPublicKey²ÎÊý£©£¬Ôò¿ÉÒÔÀûÓø鶴ÔÚÖ÷»úÉÏдÈëÈÎÒâÎļþ²¢Ô¶³ÌÖ´ÐÐÈÎÒâ´úÂë¡£
Ó°Ï췶Χ
JsonWebToken°æ±¾ <= 8.5.1
0x02 Äþ¾²½¨Òé
Ä¿Ç°¸Ã©¶´ÒѾÐÞ¸´£¬ÊÜÓ°ÏìÓû§¿É¼°Ê±Éý¼¶µ½JsonWebToken 9.0.0°æ±¾¡£
ÏÂÔØÁ´½Ó£º
https://github.com/auth0/node-jsonwebtoken/tags
×¢£º½öµ±ÔÊÐí²»ÊÜÐÅÈεÄʵÌåÐÞ¸ÄÓû§¿ØÖƵÄÖ÷»úÉϵÄjwt.verify()µÄÃÜÔ¿¼ìË÷²ÎÊýʱ£¬Óû§²Å»áÊܵ½Ó°Ïì¡£
0x03 ²Î¿¼Á´½Ó
https://github.com/auth0/node-jsonwebtoken/security/advisories/GHSA-27h2-hvpr-p74q
https://github.com/auth0/node-jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback
https://www.bleepingcomputer.com/news/security/auth0-fixes-rce-flaw-in-jsonwebtoken-library-used-by-22-000-projects/
0x04 °æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | ÐÞ¸ÄÄÚÈÝ |
V1.0 | 2023-01-10 | Ê×´ÎÐû²¼ |
0x05 ¸½Â¼
¶¶È¦Îª¶Ä¶øÉú¼ò½é
¶¶È¦Îª¶Ä¶øÉú½¨Á¢ÓÚ1996Ä꣬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Äþ¾²¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Äþ¾²²úÎï¡¢Äþ¾²·þÎñ½â¾ö·½°¸µÄÁ캽ÆóÒµÖ®Ò»¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°¶¶È¦Îª¶Ä¶øÉú´óÏ㬹«Ë¾Ô±¹¤6000ÓàÈË£¬Ñз¢ÍŶÓ1200ÓàÈË, ¼¼Êõ·þÎñÍŶÓ1300ÓàÈË¡£ÔÚÈ«¹ú¸÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬ÓµÓÐÁýÕÖÈ«¹úµÄÏúÊÛÌåϵ¡¢ÇþµÀÌåϵºÍ¼¼ÊõÖ§³ÖÌåϵ¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС££¨¹ÉƱ´úÂ룺002439£©
¶àÄêÀ´£¬¶¶È¦Îª¶Ä¶øÉúÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´ÐµÄÄþ¾²²úÎïºÍ×î¼Ñʵ¼ù·þÎñ£¬×ÊÖú¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄÄþ¾²ÐÔºÍÉú²úЧÄÜ£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Äþ¾²¹¤ÒµÁì¾üÆ·Åƶø²»Ð¸Å¬Á¦¡£
¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú
¶¶È¦Îª¶Ä¶øÉúÄþ¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖØÒªÄþ¾²Â©¶´µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÄþ¾²³ÂËß¡£
¹Ø×¢ÒÔϹ«Öںţ¬»ñÈ¡È«Çò×îÐÂÄþ¾²×ÊѶ£º