¡¾Îó²îͨ¸æ¡¿Kubernetes Ingress-nginx×¢½âÑéÖ¤ÈÆ¹ýÎó²î£¨CVE-2024-7646£©

Ðû²¼Ê±¼ä 2024-08-19

Ò»¡¢Îó²î¸ÅÊö

Îó²îÃû³Æ

Kubernetes Ingress-nginx×¢½âÑéÖ¤ÈÆ¹ýÎó²î

CVE   ID

CVE-2024-7646

Îó²îÀàÐÍ

ÑéÖ¤ÈÆ¹ý¡¢ÏÂÁî×¢Èë

·¢Ã÷ʱ¼ä

2024-08-19

Îó²îÆÀ·Ö

8.8

Îó²îÆ·¼¶

¸ßΣ

¹¥»÷ÏòÁ¿

ÍøÂç

ËùÐèȨÏÞ

µÍ

ʹÓÃÄѶÈ

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP

δ¹ûÕæ

ÔÚҰʹÓÃ

δ·¢Ã÷

 

ingress-nginxÊÇKubernetesÖÐÒ»¸öÊ¢ÐеÄIngress¿ØÖÆÆ÷£¬£¬£¬£¬£¬£¬ËüʹÓÃNGINX×÷Ϊ·´ÏòÊðÀíºÍ¸ºÔØÆ½ºâÆ÷£¬£¬£¬£¬£¬£¬Ö¼ÔÚÓÃÓÚÖÎÀíÍⲿ»á¼ûµ½Kubernetes¼¯ÈºÄÚ²¿Ð§À͵Ä·ÓÉ¡£¡£¡£¡£¡£

2024Äê8ÔÂ19ÈÕ£¬£¬£¬£¬£¬£¬¿­Ðý¹ú¼ÊÓÎÏ·¼¯ÍÅVSRC¼à²âµ½Ingress-nginxÖб£´æÒ»¸öÑéÖ¤ÈÆ¹ýÏÂÁî×¢ÈëÎó²î£¨CVE-2024-7646£©£¬£¬£¬£¬£¬£¬¸ÃÎó²îµÄCVSSÆÀ·ÖΪ8.8¡£¡£¡£¡£¡£

ingress-nginx ¿ØÖÆÆ÷ v1.11.2֮ǰ°æ±¾ÖУ¬£¬£¬£¬£¬£¬ÓÐȨÔÚKubernetes¼¯ÈºÖн¨ÉèIngress¹¤¾ß£¨ÊôÓÚnetworking.k8s.io»òextensions API×飩µÄÍþвÕß¿ÉÒÔÈÆ¹ý×¢½âÑéÖ¤²¢×¢Èëí§ÒâÏÂÁ£¬£¬£¬£¬£¬½ø¶ø»ñÈ¡ingress-nginx¿ØÖÆÆ÷µÄƾ֤£¬£¬£¬£¬£¬£¬»á¼û¼¯ÈºÖд洢µÄËùÓÐÃô¸ÐÐÅÏ¢¡£¡£¡£¡£¡£

 


¶þ¡¢Ó°Ïì¹æÄ£

ingress-nginx controller < v1.11.2

 

Èý¡¢Çå¾²²½·¥

3.1 Éý¼¶°æ±¾

ÏÖÔÚ¸ÃÎó²îÒѾ­ÐÞ¸´£¬£¬£¬£¬£¬£¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½ingress-nginx controller v1.11.2¡£¡£¡£¡£¡£

ÏÂÔØÁ´½Ó£º

https://github.com/kubernetes/ingress-nginx/releases/tag/controller-v1.11.2

3.2 ÔÝʱ²½·¥

¸ÃÎó²îÓ°Ïì ingress-nginx£¬£¬£¬£¬£¬£¬ÈôÊǼ¯ÈºÉÏδװÖà ingress-nginx£¬£¬£¬£¬£¬£¬Ôò²»»áÊܵ½Ó°Ïì¡£¡£¡£¡£¡£¿£¿ÉÒÔͨ¹ýÒÔÏ·½·¨Ö®Ò»À´¼ì²é¼¯ÈºÉÏÊÇ·ñ±£´æ ingress-nginx¿ØÖÆÆ÷£º

1.¼ì²éÊÇ·ñ±£´æ ingress-nginx ÃüÃû¿Õ¼ä£º

ʹÓÃkubectl get namespacesÏÂÁ£¬£¬£¬£¬£¬ÈôÊÇÊä³öÖаüÀ¨ ingress-nginx£¬£¬£¬£¬£¬£¬ÔòÅú×¢¼¯ÈºÖб£´æÓë ingress-nginx Ïà¹ØµÄ×ÊÔ´£»£»£»£»£»»òÕßͨ¹ýkubectl get all -n ingress-nginxÏÂÁîÁгö ingress-nginx ÃüÃû¿Õ¼äÖÐËùÓÐµÄ Pod¡¢Ð§ÀÍ¡¢°²ÅŵÈ×ÊÔ´¡£¡£¡£¡£¡£ÈôÊÇ¿´µ½ÖøÃûΪ ingress-nginx-controller µÄ Deployment »ò Pod£¬£¬£¬£¬£¬£¬ËµÃ÷ ingress-nginx ¿ØÖÆÆ÷ÒѾ­×°Öᣡ£¡£¡£¡£

2. ͨ¹ýÔÚKubernetes ÇéÐÎÖвéÕÒÓë ingress-nginx-controller Ïà¹ØµÄ Pod£º

kubectl get po -A | grep ingress-nginx-controller

3.¼ì²éÊÇ·ñ±£´æ ingress-nginx-controller °²ÅÅ

ʹÓÃÏÂÁîkubectl get deployments --all-namespaces | grep ingress-nginx£¬£¬£¬£¬£¬£¬ÈôÊÇÊä³öÖаüÀ¨ ingress-nginx-controller °²ÅÅ£¬£¬£¬£¬£¬£¬ËµÃ÷ ingress-nginx ¿ØÖÆÆ÷Òѱ»×°Öᣡ£¡£¡£¡£

¼ì²âÓ뻺½â

ÖÎÀíÔ±¿Éͨ¹ý¼ì²é Kubernetes Éó¼ÆÈÕÖ¾ÖÐÊÇ·ñ±£´æÈκοÉÒÉµÄ Ingress ¹¤¾ß£¬£¬£¬£¬£¬£¬ÓÈÆäÊǰüÀ¨»Ø³µ·û ( \r) µÄ×¢½â£¬£¬£¬£¬£¬£¬ÓÉÓڻسµ·û£¨\r£©¿ÉÄܱ»ÓÃÓÚ×¢Èë¶ñÒâ´úÂë»òÈÆ¹ýijЩÑéÖ¤»úÖÆ¡£¡£¡£¡£¡£ÈôÊÇÔÚ Kubernetes Éó¼ÆÈÕÖ¾Öз¢Ã÷°üÀ¨»Ø³µ·û (\r) µÄ×¢½â£¬£¬£¬£¬£¬£¬È·ÈÏÊÇ·ñ±£´æ¶ñÒâ»òÒì³£µÄÄÚÈÝ¡£¡£¡£¡£¡£¿£¿ÉÒÔʹÓà kubectl get ingress <ingress-name> -o yaml ÏÂÁîÉó²éÏêϸµÄÉèÖᣡ£¡£¡£¡£ÈôÊÇÈ·ÈÏÓжñÒâ×¢½â»ò²»Çå¾²µÄÉèÖ㬣¬£¬£¬£¬£¬¿É˼Á¿£º

l  ÔÝʱ¸ôÀëÊÜÓ°ÏìµÄЧÀÍ»òÃüÃû¿Õ¼ä£¬£¬£¬£¬£¬£¬ÒÔ±ÜÃâ½øÒ»²½¹¥»÷£»£»£»£»£»

l  ɾ³ý»òÐÞ¸´ Ingress£ºÍ¨¹ý kubectl delete ingress <ingress-name> ɾ³ýÊÜÓ°ÏìµÄ Ingress ¹¤¾ß£¬£¬£¬£¬£¬£¬»òÕßÊÖ¶¯±à¼­×¢½âÈ¥³ý²»Çå¾²µÄ×Ö·û¡£¡£¡£¡£¡£ÐÞ¸´ºóµÄ¹¤¾ßÓ¦ÖØÐÂÓ¦ÓÃÖÁ¼¯ÈºÖС£¡£¡£¡£¡£

3.3 ͨÓý¨Òé

l  °´ÆÚ¸üÐÂϵͳ²¹¶¡£¡£¡£¡£¡£¬£¬£¬£¬£¬£¬ïÔ̭ϵͳÎó²î£¬£¬£¬£¬£¬£¬ÌáÉýЧÀÍÆ÷µÄÇå¾²ÐÔ¡£¡£¡£¡£¡£

l  ÔöǿϵͳºÍÍøÂçµÄ»á¼û¿ØÖÆ£¬£¬£¬£¬£¬£¬Ð޸ķÀ»ðǽսÂÔ£¬£¬£¬£¬£¬£¬¹Ø±Õ·ÇÐëÒªµÄÓ¦Óö˿ڻòЧÀÍ£¬£¬£¬£¬£¬£¬ïÔÌ­½«Î£ÏÕЧÀÍ£¨ÈçSSH¡¢RDPµÈ£©Ì»Â¶µ½¹«Íø£¬£¬£¬£¬£¬£¬ïÔÌ­¹¥»÷Ãæ¡£¡£¡£¡£¡£

l  ʹÓÃÆóÒµ¼¶Çå¾²²úÆ·£¬£¬£¬£¬£¬£¬ÌáÉýÆóÒµµÄÍøÂçÇå¾²ÐÔÄÜ¡£¡£¡£¡£¡£

l  ÔöǿϵͳÓû§ºÍȨÏÞÖÎÀí£¬£¬£¬£¬£¬£¬ÆôÓöàÒòËØÈÏÖ¤»úÖÆºÍ×îСȨÏÞÔ­Ôò£¬£¬£¬£¬£¬£¬Óû§ºÍÈí¼þȨÏÞÓ¦¼á³ÖÔÚ×îµÍÏÞ¶È¡£¡£¡£¡£¡£

l  ÆôÓÃÇ¿ÃÜÂëÕ½ÂÔ²¢ÉèÖÃΪ°´ÆÚÐ޸ġ£¡£¡£¡£¡£

3.4 ²Î¿¼Á´½Ó

https://groups.google.com/g/kubernetes-security-announce/c/a1__cKjWkfA

https://github.com/kubernetes/kubernetes/issues/126744

 

ËÄ¡¢°æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

±¸×¢

V1.0

2024-08-19

Ê×´ÎÐû²¼

 

 

Îå¡¢¸½Â¼

5.1 ¿­Ðý¹ú¼ÊÓÎÏ·¼ò½é

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

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

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

5.2 ¹ØÓÚ¿­Ðý¹ú¼ÊÓÎÏ·

¿­Ðý¹ú¼ÊÓÎÏ·Çå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÒÑÐû²¼1000¶à¸öÎó²îͨ¸æºÍΣº¦Ô¤¾¯£¬£¬£¬£¬£¬£¬ÎÒÃǽ«Ò»Á¬¸ú×ÙÈ«Çò×îеÄÍøÂçÇå¾²ÊÂÎñºÍÎó²î£¬£¬£¬£¬£¬£¬ÎªÆóÒµµÄÐÅÏ¢Çå¾²±£¼Ý»¤º½¡£¡£¡£¡£¡£

¹Ø×¢ÎÒÃÇ£º

image.png