¡¾·ì϶¹«¸æ¡¿HTTP/2 CONTINUATION Flood»Ø¾ø·þÎñ·ì϶
°ä²¼¹¦·ò 2024-04-07
Ò»¡¢·ì϶¸ÅÊö
·ìϼûû³Æ | HTTP/2 CONTINUATION Flood»Ø¾ø·þÎñ·ì϶ | ||
CVE ID | CVE-2024-27983¡¢CVE-2024-27316µÈ | ||
·ì϶ÀàÐÍ | DoS | ·¢ÏÖ¹¦·ò | 2024-04-07 |
·ì϶ÆÀ·Ö | ·ì϶µÈ¼¶ | ¸ßΣ | |
¹¥»÷ÏòÁ¿ | ÍøÂç | ËùÐèȨÏÞ | ÎÞ |
ÀûÓÃÄÑ¶È | µÍ | Óû§½»»¥ | ÎÞ |
PoC/EXP | δ¹«¿ª | ÔÚÒ°ÀûÓà | δ֪ |
HTTP/2ÊÇÒ»ÖÖ°²È«¸ßЧµÄÏÂÒ»´úhttp´«ÊäºÍ̸£¬Ö¼ÔÚͨ¹ýÒýÈëÓÃÓÚ¸ßЧÊý¾Ý´«ÊäµÄ¶þ½øÔìÖ¡¡¢ÔÊÐíͨ¹ýµ¥¸öÏνӽøÐжà¸öÒªÇóºÍÏìÓ¦µÄ¶à·¸´ÓÃÒÔ¼°ÓÃÓÚÏ÷¼õ¿ªÏúµÄ±êͷѹËõÀ´Ìá¸ßWeb»úÄÜ¡£HTTP/2 CONTINUATIONÖ¡ÓÃÓÚÂ½Ðø×Ö¶Î¿éÆ¬¶ÎµÄÐòÁС£
2024Äê4ÔÂ7ÈÕ£¬GA»Æ½ð¼×VSRC¼à²âµ½HTTP/2ºÍ̸±»Åû¶´æÔڻؾø·þÎñ·ì϶£¬¸Ã·ì϶±»³ÆÎª¡°HTTP/2 CONTINUATION Flood¡±£¬¿Éµ¼Ö»ؾø·þÎñ£¨DoS£©¹¥»÷£¬ÔÚijЩʵÏÖÖпÉͨ¹ýµ¥¸öTCPÏνÓʹweb·þÎñÆ÷±ÀÀ££¬Ä¿Ç°¸Ã·ì϶µÄ¼¼Êõϸ½ÚÒѹ«¿ªÅû¶¡£
ÓÉÓÚijЩHTTP/2ºÍ̸ʵÏÖÖÐûÓÐÊʵ±ÏÞ¶È»òËãÕʵ¥¸öÊý¾ÝÁ÷Öз¢Ë굀 CONTINUATION Ö¡µÄÊýÁ¿£¬¹¥»÷Õß¿Éͨ¹ý²»ÉèÖà END_HEADERS ±ê־룬ÏòÖ¸±ê·þÎñÆ÷·¢ËÍ CONTINUATION Ö¡Á÷£¬´Ó¶ø¿ÉÄܵ¼ÖÂÄÚ´æ²»¼°±ÀÀ£»òCPU×ÊÔ´ºÄ¾¡¶øµ¼Ö·þÎñÆ÷Öжϣ¬Ôì³É»Ø¾ø·þÎñ¡£
¶þ¡¢Ó°ÏìÁìÓò
ÒÑÖªHTTP/2 CONTINUATION FloodÓ°Ïì¶à¸öÏîÄ¿£¬·ÖÆçµÄHTTP/2ʵÏÖ¿ÉÄÜ»áÓÐÌØ¶¨ÓÚ¸ÃʵÏֵĹÖÒì·ì϶¼°Ó°Ï죬·ÖÆçHTTP/2ʵÏÖÏà¶ÔÓ¦µÄ²¿ÃÅCVE IDÈçÏ£º
l Envoy£¨CVE-2024-27919¡¢CVE-2024-30255£©
l Tempesta FW ( CVE-2024-2758 )
l amphp/http ( CVE-2024-2653 )
l Golang£¨CVE-2023-45288£©
l nghttp2£¨CVE-2024-28182£©
l Apache HTTP Server ( CVE-2024-27316 )
l Apache Traffic Server ( CVE-2024-31309 )
l Node.js£¨CVE-2024-27983£©
ÖµÍ×ÌùÐĵÄÊÇ£¬ÔÚijЩÊÜÓ°ÏìʵÏÖÖУ¬½öͨ¹ýµ¥¸öTCPÏνӾͿÉÄܵ¼ÖÂweb·þÎñÆ÷±ÀÀ££¬ÇÒ¶ñÒâÒªÇó¿ÉÄÜÔÚHTTP½Ó¼ûÈÕÖ¾Öв»Ë½¼û£¬Õâ¿ÉÄÜʹµÃ¼ì²âºÍ·ÖÎöÔ½·¢ÄÑÌâ¡£
Èý¡¢°²È«´ëÊ©
3.1 Éý¼¶°æ±¾
Ŀǰ²¿ÃŹ©¸øÉÌ/ÏîÄ¿Òѽ¨¸´ÁËÏàÓ¦·ì϶£¬ÊÜÓ°ÏìÓû§¿É²Î¿¼Óйز¼¸æ²¢ÊµÊ±¸üУº
ÊÜÓ°ÏìÏîÄ¿/Ê·ý | CVE | Ó°ÏìÁìÓò | ½¨¸´°æ±¾ | ²Î¿¼Á´½Ó |
Envoy | CVE-2024-27919 | Envoy 1.29.0 ¡¢1.29.1 | Éý¼¶µ½°æ±¾ 1.29.2£»»ò½µ¼¶µ½1.28.1¼°Ö®Ç°°æ±¾ | https://github.com/envoyproxy/envoy/security/advisories/GHSA-gghf-vfxp-799r |
CVE-2024-30255 | 1.29.3¡¢1.28.2¡¢1.27.4 ºÍ 1.26.8 ֮ǰ°æ±¾ | Éý¼¶µ½1.29.3¡¢1.28.2¡¢1.27.4 ¡¢ 1.26.8»ò¸ü¸ß°æ±¾ | https://github.com/envoyproxy/envoy/security/advisories/GHSA-j654-3ccm-vfmm | |
Tempesta FW | CVE-2024-2758 | 0.7.1֮ǰ°æ±¾ | Éý¼¶µ½0.7.1»ò¸ü¸ß°æ±¾ | https://github.com/tempesta-tech/tempesta/security/advisories/GHSA-3xwj-5ch3-q9p4 |
amphp/http | CVE-2024-2653 | amphp/http<= 1.7.2¡¢2.0.0-2.1.0£» amphp/http-client 4.0.0-rc10 -4.0.0
| Éý¼¶µ½amphp/http 2.1.1¡¢1.7.3£» amphp/http-client >= 4.1.0-rc1 | https://github.com/amphp/http/security/advisories/GHSA-qjfw-cvjf-f4fm https://github.com/amphp/http-client/security/advisories/GHSA-w8gf-g2vq-j2f4 |
Golang | CVE-2023-45288 | Go<1.22.2¡¢Go <1.21.9 | Éý¼¶µ½Go 1.22.2 ¡¢ 1.21.9 | https://pkg.go.dev/vuln/GO-2024-2687 |
nghttp2 | CVE-2024-28182 | nghttp2 < 1.61.0 | Éý¼¶µ½nghttp2 °æ±¾1.61.0 | https://github.com/nghttp2/nghttp2/security/advisories/GHSA-x6x3-gv8h-m57q |
Apache HTTP Server | CVE-2024-27316 | Apache HTTP Server <=2.4.58 | Éý¼¶µ½Apache HTTP Server 2.4.59 | https://httpd.apache.org/security/vulnerabilities_24.html |
3.2 һʱ´ëÊ©
ÔÝÎÞ¡£
3.3 ͨÓý¨Òé
l ¶¨ÆÚ¸üÐÂϵͳ²¹¶¡£¬Ï÷¼õϵͳ·ì϶£¬ÌáÉý·þÎñÆ÷µÄ°²È«ÐÔ¡£
l ¼ÓǿϵͳºÍÍøÂçµÄ½Ó¼û½ÚÔ죬Åú¸Ä·À»ðǽսÊõ£¬¹Ø¹Ø·Ç±ØÒªµÄÀûÓö˿ڻò·þÎñ£¬Ï÷¼õ½«Î£ÏÕ·þÎñ£¨ÈçSSH¡¢RDPµÈ£©Â¶³öµ½¹«Íø£¬Ï÷¼õ¹¥»÷Ãæ¡£
l ʹÓÃÆóÒµ¼¶°²È«²úÆ·£¬ÌáÉýÆóÒµµÄÍøÂ簲ȫ»úÄÜ¡£
l ¼ÓǿϵͳÓû§ºÍȨÏÞÖÎÀí£¬ÆôÓöà³É·ÖÈÏÖ¤»úÔìºÍ×îÓ×ȨÏÞ×¼Ôò£¬Óû§ºÍÈí¼þȨÏÞӦά³ÖÔÚ×îµÍÏÞ¶È¡£
l ÆôÓÃÇ¿ÃÜÂëÕ½Êõ²¢ÉèÖÃΪ¶¨ÆÚÅú¸Ä¡£
3.4 ²Î¿¼Á´½Ó
https://nowotarski.info/http2-continuation-flood-technical-details/#a-quick-intro-to-http2
https://kb.cert.org/vuls/id/421644
ËÄ¡¢°æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | ±¸×¢ |
V1.0 | 2024-04-07 | ³õ´Î°ä²¼ |
Îå¡¢¸½Â¼
5.1 GA»Æ½ð¼×¼ò½é
GA»Æ½ð¼×³ÉÁ¢ÓÚ1996Ä꣬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢°²È«¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢°²È«²úÆ·¡¢°²È«·þÎñ½â¾ö¹æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°GA»Æ½ð¼×´óÏ㬹«Ë¾Ô±¹¤6000ÓàÈË£¬Ñз¢ÍŶÓ1200ÓàÈË, ¼¼Êõ·þÎñÍŶÓ1300ÓàÈË¡£ÔÚÈ«¹ú¸÷Ê¡¡¢ÊÓ×¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬Õ¼Óи²¸ÇÈ«¹úµÄÏúÊÛϵͳ¡¢Çþ·ϵͳºÍ¼¼ÊõÖ§³Öϵͳ¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐÓ×°å¹ÒÅÆÉÏÊС££¨¹ÉƱ´úÂ룺002439£©
¶àÄêÀ´£¬GA»Æ½ð¼×ÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£
5.2 ¹ØÓÚGA»Æ½ð¼×
GA»Æ½ð¼×°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÒѰ䲼1000¶à¸ö·ì϶¹«¸æÎ¢·çÏÕÔ¤¾¯£¬ÎÒÃǽ«³ÖÐø¸ú×ÙÈ«Çò×îеÄÍøÂ簲ȫÊÂÎñºÍ·ì϶£¬ÎªÆóÒµµÄÐÅÏ¢°²È«±£¼Ý»¤º½¡£
¹Ø×¢ÎÒÃÇ£º



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