¡¾·ì϶¹«¸æ¡¿npm node-forgeÊ¢¿ªÖض¨Ïò·ì϶ (CVE-2022-0122)

°ä²¼¹¦·ò 2022-01-26


0x00 ·ì϶¸ÅÊö

CVE     ID

CVE-2022-0122

ʱ      ¼ä

2022-01-25

Àà      ÐÍ

Ê¢¿ªÖض¨Ïò

µÈ      ¼¶

ÖÐΣ

Ô¶³ÌÀûÓÃ

ÊÇ

Ó°ÏìÁìÓò


¹¥»÷¸´ÔÓ¶È

µÍ

Óû§½»»¥

ÊÇ

PoC/EXP


ÔÚÒ°ÀûÓÃ


 

0x01 ·ì϶ÏêÇé

node-forgeÊÇnpm Éϱ»¿í·ºÊ¹ÓõÄ×é¼þ£¬£¬£¬¸Ã×é¼þʵÏÖÁËÖØÒªµÄ°²È«Ö°ÄÜ£¬£¬£¬Ô̺¬´«Êä²ã°²È«ºÍ̸¡¢¡¢¡¢¼ÓÃÜÖ°ÄܺÍÔ­ÉúJavaScriptÖеÄwebÀûÓÿª·¢¹¤¾ß£¬£¬£¬ÆäÿÖÜÏÂÔØÁ¿³¬¹ý1600 Íò´Î¡£

1ÔÂ25ÈÕ£¬£¬£¬SonatypeµÄ×êÑÐÈËÔ±¹«¿ªÅû¶ÁËnode-forgeÖеÄÒ»¸öÊ¢¿ªÖض¨Ïò·ì϶£¨CVE-2022-0122£©£¬£¬£¬ÆäCVSSv3ÆÀ·ÖΪ6.1¡£

¸Ã·ì϶´æÔÚÓÚnode-forgeµÄutils.jsÎļþÖеÄparseUrlº¯ÊýÖУ¬£¬£¬ÓÉÓÚÕýÔò±í°×ʽregexÎÞ·¨ÕýÈ·½âÎöijЩÊäÈ룬£¬£¬µ¼ÖÂÊ¢¿ªÖض¨Ïò£¬£¬£¬¹¥»÷Õß¿ÉÄÜÀûÓô˷ìÏ¶ÈÆ¹ý URL ½âÎöÆ÷¡¢¡¢¡¢ÓÕʹÊܺ¦ÕßÏνӵ½¶ñÒâ¿Í»§¶Ë»ò½«Êܺ¦ÕßÖØ¶¨Ïòµ½ËÁÒâµØÎ»µÈ¡£

image.png

 

Ó°ÏìÁìÓò

node-forge°æ±¾ < 1.0.0

 

0x02 °²È«½¨Òé

Ŀǰ´Ë·ì϶ÒѾ­ÐÞ¸´£¬£¬£¬½¨ÒéÊÜÓ°ÏìÓû§ÊµÊ±Éý¼¶¸üе½node-forge v1.0.0»ò¸ü¸ß°æ±¾¡£

ÏÂÔØÁ´½Ó£º £º£º

https://www.npmjs.com/package/node-forge

 

0x03 ²Î¿¼Á´½Ó

https://blog.sonatype.com/new-year-new-cve-a-deep-dive-into-the-node-forge-cve-2022-0122

https://github.com/digitalbazaar/forge

https://www.npmjs.com/package/node-forge

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

Åú¸ÄÄÚÈÝ

V1.0

2022-01-26

³õ´Î°ä²¼

 

0x05 ¸½Â¼

OG¶«·½Ìü¼ò½é

OG¶«·½Ìü¹«Ë¾³ÉÁ¢ÓÚ1996Ä꣬£¬£¬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬£¬£¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢¡¢¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂ簲ȫ²úÆ·¡¢¡¢¡¢¿ÉÐŰ²È«ÖÎÀíÆ½Ì¨¡¢¡¢¡¢°²È«·þÎñÓë½â¾ö¹æ»®µÄ×ÛºÏÌṩÉÌ¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬£¬£¬ÔÚÈ«¹ú¸÷Ê¡¡¢¡¢¡¢ÊС¢¡¢¡¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬£¬£¬Õ¼Óи²¸ÇÈ«¹úµÄÇþµÀϵͳºÍ¼¼ÊõÖ§³ÖÖÐÐÄ£¬£¬£¬²¢ÔÚ±±¾©¡¢¡¢¡¢ÉϺ£¡ £¡£¡¢¡¢¡¢³É¶¼¡¢¡¢¡¢ÕÑͨ¡¢¡¢¡¢³¤É³¡¢¡¢¡¢¾£ÃÅµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£

¶àÄêÀ´£¬£¬£¬OG¶«·½ÌüÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬£¬£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£

 

¹ØÓÚOG¶«·½Ìü

OG¶«·½Ìü°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶ÔÖØÒª°²È«·ì϶µÄÔ¤¾¯¡¢¡¢¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£

¹Ø×¢ÒÔϹ«¼ÒºÅ£¬£¬£¬»ñȡȫÇò×îа²È«×ÊѶ£º £º£º

image.png