¡¾Â©¶´Í¨¸æ¡¿Node.js Ô¶³Ì´úÂëÖ´ÐЩ¶´£¨CVE-2021-22930£©

Ðû²¼Ê±¼ä 2021-08-02

0x00 ©¶´¸ÅÊö

CVE     ID

CVE-2021-22930

ʱ      ¼ä

2021-07-29

Àà      ÐÍ

RCE

µÈ      ¼¶

¸ßΣ

Ô¶³ÌÀûÓÃ

ÊÇ

Ó°Ï췶Χ


¹¥»÷ÅÓ´ó¶È


¿ÉÓÃÐÔ


Óû§½»»¥


ËùÐèȨÏÞ


PoC/EXP


ÔÚÒ°ÀûÓÃ


 

0x01 ©¶´ÏêÇé

image.png

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 ¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú

¹Ø×¢ÒÔϹ«Öںţ¬»ñÈ¡¸ü¶à×ÊѶ£º

image.png         image.png