¡¾·ì϶¹«¸æ¡¿Swagger UI¿çÕ¾¾ç±¾·ì϶
°ä²¼¹¦·ò 2022-05-25
0x00 ·ì϶¸ÅÊö
CVE ID | ·¢ÏÖ¹¦·ò | 2022-05-24 | |
Àà ÐÍ | XSS | µÈ ¼¶ | ¸ßΣ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°ÏìÁìÓò | |
¹¥»÷¸´ÔÓ¶È | µÍ | Óû§½»»¥ | |
PoC/EXP | ÊÇ | ÔÚÒ°ÀûÓÃ |
0x01 ·ì϶ÏêÇé
Swagger UI ÊÇÒ»¸öÊÜ»¶ÓµÄ¿ªÔ´¹¤¾ß£¬¿ÉÔ®ÊÖÓû§ÔÚûÓÐÈκÎʵÏÖÂß¼µÄÇé¿öÏ¿ÉÊÓ»¯ API ×ÊÔ´²¢ÓëÖ®½»»¥¡£¡£¡£Ëü±»Öڶ๫˾ʹÓã¬Ô̺¬ PayPal¡¢¡¢Shopify¡¢¡¢Microsoft¡¢¡¢Yahoo¡¢¡¢GitHub¡¢¡¢Atlassian µÈ¡£¡£¡£
5ÔÂ16ÈÕ£¬×êÑÐÈËÔ±Åû¶ÁËSwagger UIÖеÄÒ»¸öDOM ÐÍXSS·ì϶¡£¡£¡£ÓÉÓÚSwagger UIÖÐʹÓÃÁ˹ýÆÚµÄ¿âDOMpurify£¨ÓÃÓÚÊäÈëËãÕÊ£©£¬µ¼ÖÂÁËÓɲéÎʲÎÊý½ÚÖÆµÄDOM XSS·ì϶£¬ÔÊÐíÔÚÒ³ÃæÉÏ×¢ÈëÈκÎÊôÐÔµÄHTMLÔªËØ£¨¾ç±¾±êǩ֮Í⣩¡£¡£¡£
Ŀǰ´Ë·ì϶µÄPoCÒѹ«¿ª£¬Äܹ»ÀûÓô˷ì϶ÒÔÀ©´óÇÔÈ¡Óû§µÄ CSRF token²¢ÊÕÊÜÊܺ¦ÕßµÄÕÊ»§¡£¡£¡£
Ó°ÏìÁìÓò
3.14.1<= Swagger UI < 3.38.0
0x02 °²È«½¨Òé
Ŀǰ´Ë·ì϶ÒѾÐÞ¸´£¬½¨ÒéÊÜÓ°ÏìÓû§ÊµÊ±Éý¼¶¸üÐÂSwagger UIµ½×îа汾¡£¡£¡£
ÏÂÔØÁ´½Ó£º
https://github.com/swagger-api/swagger-ui/releases
×¢£ºÈôÊÇÎÞ·¨Éý¼¶Õû¸ö Swagger UI °ü£¬Óû§Äܹ»Ñ¡Ôñ½« DomPurify °üÉý¼¶µ½ Swagger UI ÖÐʹÓõİ汾¡£¡£¡£
0x03 ²Î¿¼Á´½Ó
https://www.vidocsecurity.com/blog/hacking-swagger-ui-from-xss-to-account-takeovers/
https://hackerone.com/reports/1072868
https://latesthackingnews.com/2022/05/24/swagger-ui-library-vulnerability-potentially-affects-multiple-services/
0x04 °æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | Åú¸ÄÄÚÈÝ |
V1.0 | 2022-05-25 | ³õ´Î°ä²¼ |
0x05 ¸½Â¼
OG¶«·½Ìü¼ò½é
OG¶«·½Ìü¹«Ë¾³ÉÁ¢ÓÚ1996Ä꣬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂ簲ȫ²úÆ·¡¢¡¢¿ÉÐŰ²È«ÖÎÀíÆ½Ì¨¡¢¡¢°²È«·þÎñÓë½â¾ö¹æ»®µÄ×ÛºÏÌṩÉÌ¡£¡£¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬ÔÚÈ«¹ú¸÷Ê¡¡¢¡¢ÊС¢¡¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬Õ¼Óи²¸ÇÈ«¹úµÄÇþµÀϵͳºÍ¼¼ÊõÖ§³ÖÖÐÐÄ£¬²¢ÔÚ±±¾©¡¢¡¢ÉϺ£¡¢¡¢³É¶¼¡¢¡¢ÕÑͨ¡¢¡¢³¤É³¡¢¡¢¾£ÃÅµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£¡£¡£
¶àÄêÀ´£¬OG¶«·½ÌüÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£¡£¡£
¹ØÓÚOG¶«·½Ìü
OG¶«·½Ìü°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶ÔÖØÒª°²È«·ì϶µÄÔ¤¾¯¡¢¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£¡£¡£
¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º



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