¡¾Îó²îͨ¸æ¡¿Nginx NJSÊͷźóʹÓÃÎó²î£¨CVE-2022-43286£©
Ðû²¼Ê±¼ä 2022-10-31
0x00 Îó²î¸ÅÊö
CVE ID | CVE-2022-43286 | ·¢Ã÷ʱ¼ä | 2022-10-31 |
Àà ÐÍ | UAF | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌʹÓà | Ó°Ïì¹æÄ£ | ||
¹¥»÷ÖØÆ¯ºó | Óû§½»»¥ | ||
PoC/EXP | ÔÚҰʹÓà |
0x01 Îó²îÏêÇé
NGINXÊÇÃÀ¹úNGINX¹«Ë¾µÄÒ»¿îÇáÁ¿¼¶WebЧÀÍÆ÷/·´ÏòÊðÀíЧÀÍÆ÷ºÍµç×ÓÓʼþ£¨IMAP/POP3/SMTP£©ÊðÀíЧÀÍÆ÷¡£¡£¡£¡£NJSÊÇÆäÖеÄÒ»¸öÖ§³ÖÀ©Õ¹NGINX¹¦Ð§µÄ¾ç±¾ÓïÑÔ×é¼þ¡£¡£¡£¡£
¿ËÈÕ£¬£¬Nginx NJS±»Åû¶±£´æÒ»¸öÊͷźóʹÓÃÎó²î£¨CVE-2022-43286£©£¬£¬ÔÚÊÜÓ°ÏìµÄNginx NJS°æ±¾ÖУ¬£¬njs_json.cÖеÄnjs_json_parse_iterator_callº¯ÊýÓÉÓÚ²»·¨ÄÚ´æ¸´ÖÆµ¼Ö±£´æ¶ÑÊͷźóʹÓÃÎó²î£¬£¬ÀÖ³ÉʹÓôËÎó²î¿ÉÄܵ¼Ö¾ܾøÐ§ÀÍ»òÔ¶³Ì´úÂëÖ´ÐС£¡£¡£¡£
±ðµÄ£¬£¬Nginx NJSÖл¹ÐÞ¸´ÁËÒ»¸ö¾Ü¾øÐ§ÀÍÎó²î£¨CVE-2022-43285£©£¬£¬ÓÉÓÚ njs_promise_reaction_jobº¯Êý±£´æ·Ö¶ÎÎ¥¹æÎÊÌ⣬£¬ÀÖ³ÉʹÓôËÎó²î¿ÉÄܵ¼Ö¾ܾøÐ§ÀÍ¡£¡£¡£¡£
Ó°Ïì¹æÄ£
CVE-2022-43285£ºNginx NJS °æ±¾ < 0.7.8
CVE-2022-43286£ºNginx NJS°æ±¾ < 0.7.4
0x02 Çå¾²½¨Òé
ÏÖÔÚÕâЩÎó²îÒѾÐÞ¸´£¬£¬ÊÜÓ°ÏìÓû§¿ÉÒÔÉý¼¶µ½Nginx NJS 0.7.4¡¢0.7.8»ò¸ü¸ß°æ±¾¡£¡£¡£¡£
ÏÂÔØÁ´½Ó£º
https://github.com/nginx/njs/tags
0x03 ²Î¿¼Á´½Ó
https://github.com/nginx/njs/issues/480
https://github.com/nginx/njs/issues/533
http://nginx.org/en/docs/njs/
0x04 °æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | ÐÞ¸ÄÄÚÈÝ |
V1.0 | 2022-10-31 | Ê×´ÎÐû²¼ |
0x05 ¸½Â¼
ÈËÉú¾ÍÊDz©¼ò½é
ÈËÉú¾ÍÊDz©½¨ÉèÓÚ1996Ä꣬£¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ½¨ÉèµÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Çå¾²¸ß¿Æ¼¼ÆóÒµ¡£¡£¡£¡£ÊǺ£ÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Çå¾²²úÆ·¡¢Ç徲ЧÀͽâ¾ö¼Æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£¡£¡£¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°ÈËÉú¾ÍÊDz©´óÏ㬣¬¹«Ë¾Ô±¹¤6000ÓàÈË£¬£¬Ñз¢ÍŶÓ1200ÓàÈË, ÊÖÒÕЧÀÍÍŶÓ1300ÓàÈË¡£¡£¡£¡£ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬£¬ÓµÓÐÁýÕÖÌìϵÄÏúÊÛϵͳ¡¢ÇþµÀϵͳºÍÊÖÒÕÖ§³Öϵͳ¡£¡£¡£¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС£¡£¡£¡££¨¹ÉƱ´úÂ룺002439£©
¶àÄêÀ´£¬£¬ÈËÉú¾ÍÊDz©ÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷Á¢ÒìµÄÇå¾²²úÆ·ºÍ×î¼Ñʵ¼ùЧÀÍ£¬£¬×ÊÖú¿Í»§ÖÜÈ«ÌáÉýÆäIT»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£
¹ØÓÚÈËÉú¾ÍÊDz©
ÈËÉú¾ÍÊDz©Çå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£
¹Ø×¢ÒÔϹ«Öںţ¬£¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º



¾©¹«Íø°²±¸11010802024551ºÅ