¡¾Îó²îͨ¸æ¡¿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ÈÕ£¬ £¬ÈËÉú¾ÍÊDz©¼¯ÍÅ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 ÈËÉú¾ÍÊDz©¼ò½é

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

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

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

5.2 ¹ØÓÚÈËÉú¾ÍÊDz©

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

¹Ø×¢ÎÒÃÇ£º

image.png