¡¾Â©¶´Í¨¸æ¡¿Node.js Ô¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2021-22930£©
Ðû²¼Ê±¼ä 2021-08-020x00 ©¶´¸ÅÊö
CVE ID | CVE-2021-22930 | ʱ ¼ä | 2021-07-29 |
Àà ÐÍ | RCE | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°Ï췶Χ | |
¹¥»÷ÅÓ´ó¶È | ¿ÉÓÃÐÔ | ||
Óû§½»»¥ | ËùÐèȨÏÞ | ||
PoC/EXP | ÔÚÒ°ÀûÓÃ |
0x01 ©¶´ÏêÇé
2021Äê7ÔÂ29ÈÕ£¬Node.jsÐû²¼ÁËv16.x¡¢v14.x ºÍ v12.x¿¯ÐаæµÄÄþ¾²¸üУ¬ÐÞ¸´ÁËNode.jsÖеÄÒ»¸öUse-After-Free©¶´£¨CVE-2021-22930£©£¬¹¥»÷Õß¿ÉÒÔÀûÓôË©¶´ÆÆ»µ½ø³Ì²¢µ¼ÖÂÒâÍâÐÐΪ£¬ÀýÈçʹӦÓ÷¨Ê½Í߽⣨¾Ü¾ø·þÎñ£©»òÔ¶³ÌÖ´ÐдúÂë¡£
¸Ã©¶´ÓëHTTP2 Á÷µÄ´¦Ö÷½Ê½Óйء£ÔÚNode.js½âÎö´«ÈëµÄRST_STREAMÖ¡£¨ÓÃÓÚÖÕÖ¹Á¬½Ó£©Ê±£¬ÓÉÓÚ¶Ô½ÓÊÕµ½µÄ RST_STREAM Ö¡µÄ´¦ÖÃÖÐûÓдíÎó´úÂëºÍÈ¡Ïû´íÎó´úÂ루nghttp2_cancel£©£¬½ÓÊÕÆ÷½«ÊÔͼǿÖÆÇå³ýÊÕµ½µÄÈκÎÊý¾Ý£¬Õâ»áµ¼ÖÂnghttp2¹Ø±ÕÒѾÆÆ»µµÄÁ÷£¬´Ó¶øµ¼ÖÂdouble-free´íÎó¡£
Ó°Ï췶Χ
16.x¡¢14.xºÍ12.x¿¯ÐаæµÄËùÓа汾
0x02 ´¦Öý¨Òé
Ä¿Ç°´Ë©¶´ÒѾÐÞ¸´¡£½¨Ò鼰ʱ¸üе½ÒÔÏ°汾£º
Node.js v12.22.4 (LTS)
Node.js v14.17.4 (LTS)
Node.js v16.6.0 (Current)
ÏÂÔØÁ´½Ó£º
https://nodejs.org/en/blog/vulnerability/july-2021-security-releases-2/
0x03 ²Î¿¼Á´½Ó
https://nodejs.org/en/blog/vulnerability/july-2021-security-releases-2/
https://www.bleepingcomputer.com/news/security/nodejs-fixes-severe-http-bug-that-could-let-attackers-crash-apps/
https://github.com/nodejs/node/pull/39527/commits/ba2ac7bb47406815c98366c5a591053414a1daf3#diff-33f026e43570112875cf4c8eab6743496f3aa014329611128e348ec23d6f771cR2165
0x04 ¸üа汾
°æ±¾ | ÈÕÆÚ | ÐÞ¸ÄÄÚÈÝ |
V1.0 | 2021-08-02 | Ê×´ÎÐû²¼ |
0x05 Îĵµ¸½Â¼
CNVD£ºwww.cnvd.org.cn
CNNVD£ºwww.cnnvd.org.cn
CVE£ºcve.mitre.org
NVD£ºnvd.nist.gov
CVSS£ºwww.first.org
0x06 ¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú
¹Ø×¢ÒÔϹ«Öںţ¬»ñÈ¡¸ü¶à×ÊѶ£º