¡¾Îó²îͨ¸æ¡¿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»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬£¬£¬£¬£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£
¹ØÓÚ¼øºÚµ£±£Íø
¼øºÚµ£±£ÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£
¹Ø×¢ÒÔϹ«Öںţ¬£¬£¬£¬£¬£¬£¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º