¡¾Îó²îͨ¸æ¡¿Golang net/url Ŀ¼±éÀúÎó²î£¨CVE-2022-32190£©

Ðû²¼Ê±¼ä 2022-09-14


0x00 Îó²î¸ÅÊö

CVE   ID

CVE-2022-32190

·¢Ã÷ʱ¼ä

2022-09-14

Àà    ÐÍ

Ŀ¼±éÀú

µÈ    ¼¶

¸ßΣ

Ô¶³ÌʹÓÃ

ÊÇ

Ó°Ïì¹æÄ£


¹¥»÷ÖØÆ¯ºó

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP


ÔÚҰʹÓÃ


 

0x01 Îó²îÏêÇé

Go£¨ÓÖ³Æ Golang£©µÄnet/url °üÌṩÁËÖÚ¶à´¦Öóͷ£ URL µÄÄÚÖú¯Êý£¬£¬£¬£¬£¬£¬ £¬ £¬ÊµÏÖÁ˶ÔURLµÄÆÊÎö´¦Öóͷ£¡£¡£¡£¡£¡£

9ÔÂ12ÈÕ£¬£¬£¬£¬£¬£¬ £¬ £¬GolangÐû²¼Ç徲ͨ¸æ£¬£¬£¬£¬£¬£¬ £¬ £¬ÐÞ¸´ÁËnet/url°üÖеÄÒ»¸öĿ¼±éÀúÎó²î£¨CVE-2022-32190£©¡£¡£¡£¡£¡£

ÓÉÓÚnet/url°üÖеÄJoinPathº¯Êý²»»áɾ³ý¸½¼Óµ½Ïà¶Ô·¾¶Éϵġ°../¡±Â·¾¶ÔªËØ£¬£¬£¬£¬£¬£¬ £¬ £¬¿ÉÄܵ¼ÖÂĿ¼±éÀú¹¥»÷£¬£¬£¬£¬£¬£¬ £¬ £¬ÀÖ³ÉʹÓôËÎó²î¿ÉÄܵ¼Ö»á¼ûϵͳÃô¸ÐÎļþ¡£¡£¡£¡£¡£

 

Ó°Ïì¹æÄ£

Golang net/url < 1.18.6

1.19.0 <= Golang net/url < 1.19.1

 

0x02 Çå¾²½¨Òé

ÏÖÔÚ´ËÎó²îÒѾ­ÐÞ¸´£¬£¬£¬£¬£¬£¬ £¬ £¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½Golang 1.19.1 ¡¢1.18.6»ò¸ü¸ß°æ±¾¡£¡£¡£¡£¡£

ÏÂÔØÁ´½Ó£º

https://go.dev/dl/

 

0x03 ²Î¿¼Á´½Ó

https://pkg.go.dev/vuln/GO-2022-0988

https://github.com/golang/go/issues/54385

https://groups.google.com/g/golang-announce/c/x49AQzIVX-s

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

ÐÞ¸ÄÄÚÈÝ

V1.0

2022-09-14

Ê×´ÎÐû²¼

 

0x05 ¸½Â¼

ÍòÀû¹ú¼Ê¹ÙÍø¼ò½é

ÍòÀû¹ú¼Ê¹ÙÍø½¨ÉèÓÚ1996Ä꣬£¬£¬£¬£¬£¬ £¬ £¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ½¨ÉèµÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Çå¾²¸ß¿Æ¼¼ÆóÒµ¡£¡£¡£¡£¡£ÊǺ£ÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Çå¾²²úÆ·¡¢Ç徲ЧÀͽâ¾ö¼Æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£¡£¡£¡£¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°ÍòÀû¹ú¼Ê¹ÙÍø´óÏ㬣¬£¬£¬£¬£¬ £¬ £¬¹«Ë¾Ô±¹¤½ü4000ÈË£¬£¬£¬£¬£¬£¬ £¬ £¬Ñз¢ÍŶÓ1200ÓàÈË, ÊÖÒÕЧÀÍÍŶÓ1300ÓàÈË¡£¡£¡£¡£¡£ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬£¬£¬£¬£¬£¬ £¬ £¬ÓµÓÐÁýÕÖÌìϵÄÏúÊÛϵͳ¡¢ÇþµÀϵͳºÍÊÖÒÕÖ§³Öϵͳ¡£¡£¡£¡£¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС£¡£¡£¡£¡££¨¹ÉƱ´úÂ룺002439£©

¶àÄêÀ´£¬£¬£¬£¬£¬£¬ £¬ £¬ÍòÀû¹ú¼Ê¹ÙÍøÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷Á¢ÒìµÄÇå¾²²úÆ·ºÍ×î¼Ñʵ¼ùЧÀÍ£¬£¬£¬£¬£¬£¬ £¬ £¬×ÊÖú¿Í»§ÖÜÈ«ÌáÉýÆäIT»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬£¬£¬£¬£¬ £¬ £¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£¡£

 

¹ØÓÚÍòÀû¹ú¼Ê¹ÙÍø

ÍòÀû¹ú¼Ê¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£¡£

¹Ø×¢ÒÔϹ«Öںţ¬£¬£¬£¬£¬£¬ £¬ £¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º

image.png