¡¾·ì϶¹«¸æ¡¿Node.jsÔ¶³Ì´úÂëÖ´Ðзì϶ (CVE-2021-22931)
°ä²¼¹¦·ò 2021-08-130x00 ·ì϶¸ÅÊö
CVE ID | CVE-2021-22931 | ʱ ¼ä | 2021-08-11 |
Àà ÐÍ | RCE | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°ÏìÁìÓò | |
¹¥»÷¸´ÔÓ¶È | ¿ÉÓÃÐÔ | ||
Óû§½»»¥ | ËùÐèȨÏÞ | ||
PoC/EXP | ÔÚÒ°ÀûÓÃ |
0x01 ·ì϶ÏêÇé

Node.jsÊÇÒ»¸ö»ùÓÚChrome V8ÒýÇæµÄJavaScriptÔËÐл·¾³£¬ËüʹÓøßЧ¡¢ÇáÁ¿¼¶µÄÊÂÎñÇý¶¯¡¢·Ç×èÈû I/O Ä£ÐÍ¡£Node.jsÖеİüÖÎÀíÆ÷npm£¬ÊÇÈ«ÇòÖ÷Á÷µÄ¿ªÔ´¿âÉú̬ϵͳ¡£
2021Äê8ÔÂ11ÈÕ£¬Node.js°ä²¼ÁËv16.x¡¢v14.x ºÍ v12.x¿¯ÐаæµÄ°²È«¸üУ¬½¨¸´ÁËNode.jsÖеÄÒ»¸öÔ¶³Ì´úÂëÖ´Ðзì϶£¨CVE-2021-22931£¬¸ßΣ£©£¬ÏêÇéÈçÏ£º
ÓÉÓÚNode.js DNS¿âÖеÄÓòÃû·þÎñÆ÷·µ»ØµÄÖ÷»úÃû¶ÌȱÊäÈëÑéÖ¤£¬Õâ¿ÉÄܵ¼ÖÂÊä³öÃýÎóµÄÖ÷»úÃû£¨¿ÉÄܵ¼ÖÂÓòÃû½Ù³Ö£©ºÍʹÓøÿâµÄÀûÓ÷¨Ê½ÖдæÔÚ×¢Èë·ì϶£¬Ô¶³Ì¹¥»÷Õß¿ÉÀûÓô˷ì϶ִÐÐXSS¹¥»÷¡¢Ê¹ÀûÓ÷¨Ê½±ÀÀ££¨»Ø¾ø·þÎñ£©»òÔ¶³ÌÖ´ÐжñÒâ´úÂë¡£
´Ë±í£¬Node.js±¾´Î°ä²¼µÄ°²È«¸üл¹½¨¸´ÁËrejectUnauthorized²ÎÊýµÄ²»ÆëÈ«ÑéÖ¤ÎÊÌ⣨CVE-2021-22939£¬µÍΣ)£»ÒÔ¼°Ò»¸öUse-after-free·ì϶£¨CVE-2021-22940£¬¸ßΣ£©£¬¸Ã·ì϶ÊÇCVE-2021-22930µÄ½¨¸´²»ÆëÈ«µ¼Öµģ¬¹¥»÷ÕßÄܹ»ÀûÓÃÄÚ´æËð»Â·´Å¤×ª¹ý³ÌÐÐΪ¡£
Ó°ÏìÁìÓò
Node.js 12.x < 12.22.5 (LTS)
Node.js 14.x < 14.17.5 (LTS)
Node.js 16.x < 16.6.2 (Current)
0x02 ´ëÖý¨Òé
Ŀǰ´Ë·ì϶ÒѾ½¨¸´¡£½¨ÒéÊÜÓ°ÏìÓû§ÊµÊ±Éý¼¶¸üе½ÒÔϰ汾£º
Node.js v12.22.5 (LTS)
Node.js v14.17.5 (LTS)
Node.js v16.6.2 (Current)
ÏÂÔØÁ´½Ó£º
https://nodejs.org/en/download/
0x03 ²Î¿¼Á´½Ó
https://nodejs.org/en/blog/vulnerability/aug-2021-security-releases/
https://nodejs.org/en/blog/release/v12.22.5/
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-22931
0x04 ¸üа汾
°æ±¾ | ÈÕÆÚ | Åú¸ÄÄÚÈÝ |
V1.0 | 2021-08-13 | ³õ´Î°ä²¼ |
0x05 Îĵµ¸½Â¼
CNVD£ºwww.cnvd.org.cn
CNNVD£ºwww.cnnvd.org.cn
CVE£ºcve.mitre.org
NVD£ºnvd.nist.gov
CVSS£ºwww.first.org
0x06 ¹ØÓÚGA»Æ½ð¼×
¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñÈ¡¸ü¶à×ÊѶ£º



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