¡¾·ì϶¹«¸æ¡¿Kubernetes Argo CDȨÏÞÌáÉý·ì϶£¨CVE-2022-29165£©
°ä²¼¹¦·ò 2022-06-010x00 ·ì϶¸ÅÊö
CVE ID | CVE-2022-29165 | ·¢ÏÖ¹¦·ò | 2022-06-01 |
Àà ÐÍ | ȨÏÞÌáÉý | µÈ ¼¶ | ÑϳÁ |
Ô¶³ÌÀûÓà | ÊÇ | Ó°ÏìÁìÓò | |
¹¥»÷¸´ÔÓ¶È | µÍ | Óû§½»»¥ | ÎÞ |
PoC/EXP | ÔÚÒ°ÀûÓÃ |
0x01 ·ì϶ÏêÇé
Argo CDÊÇÓÃÓÚKubernetesµÄÉêÃ÷ʽGitOps³ÖÐø½»¸¶¹¤¾ß¡£
5ÔÂ18ÈÕ£¬Argo CDÏîÄ¿°ä²¼°²È«²¼¸æ£¬Argo CDÖдæÔÚÒ»¸öȨÏÞÌáÉý·ì϶£¨CVE-2022-29165£©£¬¸Ã·ì϶µÄCVSSÆÀ·ÖΪ10.0¡£
µ±ÆôÓöÔArgo CDÊ·ýµÄÄäÃû½Ó¼ûʱ£¨Ä¬ÈϽûÓã©£¬Î´¾Éí·ÝÑéÖ¤µÄÓû§Äܹ»Í¨¹ýÔÚÒªÇóÖз¢ËÍÌØÔìµÄJSON Web Token£¨JWT£©À´¼ÙÒâÈκÎArgo CDÓû§»ò½ÇÉ«£¬Ô̺¬ÖÎÀíÔ±Óû§£¬ÎÞÂÛ¸ÃÕÊ»§ÊÇ·ñ±»ÆôÓûò´æÔÚÓÚArgo CDÊ·ýÉÏ¡£
³É¹¦ÀûÓô˷ì϶Äܹ»ÔÚ¼¯ÈºÉÏ»ñµÃÓëArgo CDÊ·ýÒ»ÑùµÄȨÏÞ£¬ÔÚĬÈÏ×°ÖÃÖÐÊǼ¯ÈºÖÎÀíÔ±¡£Õ⽫¿ÉÄÜ´´½¨¡¢°Ñ³ÖºÍɾ³ý¼¯ÈºÉϵÄÈκÎ×ÊÔ´£¬»òÖ´ÐÐÆäËü¶ñÒâ²Ù×÷¡£
Ó°ÏìÁìÓò
Argo CD °æ±¾1.4.0 - 2.1.14
Argo CD °æ±¾ 2.2.8
Argo CD °æ±¾ 2.3.3
0x02 °²È«½¨Òé
Ŀǰ´Ë·ì϶ÒѾ½¨¸´£¬½¨ÒéËùÓÐ Argo CD Óû§¾¡¿ì¸üе½ÒÔϽ¨¸´°æ±¾£¬ÎÞÂÛÄúµÄÊ·ýÖÐÊÇ·ñÆôÓÃÁËÄäÃû½Ó¼û£º
Argo CD °æ±¾ v2.3.4
Argo CD °æ±¾ v2.2.9
Argo CD °æ±¾ v2.1.15
ÏÂÔØÁ´½Ó£º
https://github.com/argoproj/argo-cd/releases
»º½â´ëÊ©£º
½ûÓÃÄäÃû½Ó¼û
ÈôÊÇÁÙʱÎÞ·¨Éý¼¶µ½½¨¸´°æ±¾£¬Äܹ»Ñ¡Ôñ½ûÓÃÄäÃû½Ó¼û£¨ÈôÊÇÒÑÆôÓã©¡£
1.ÈôÒª²éÎÊArgo CDÊ·ýÊÇ·ñÆôÓÃÁËÄäÃû½Ó¼û£¬Äܹ»²éÎÊArgo CDµÄ×°Öö¨Ãû¿Õ¼äÖеÄargocd-cm ConfigMap¡£ÏÂÀýÈç¹ûÒѾ°ÑArgo CD×°Öõ½argocd¶¨Ãû¿Õ¼ä£º
$ kubectl get -n argocd cm argocd-cm -o jsonpath=¡¯{.data.users\.anonymous\.enabled}¡¯
ÈôÊǴ˺ÅÁîµÄÁ˾ÖΪ¿Õ»ò"false"£¬Ôò°µÊ¾Î´ÆôÓöԸÃÊ·ýµÄÄäÃû½Ó¼û¡£ÈôÊÇÁ˾ÖÊÇ"true"£¬ÔòÒâζ×ÅÊ·ýºÜÈÝÒ×Êܵ½¹¥»÷¡£
2. Òª½ûÓÃÄäÃû½Ó¼û£¬Ç뽨²¹argocd-cmConfigMap ÒÔɾ³ý¸Ãusers.anonymous.enabled×ֶλò½«´Ë×Ö¶ÎÉèÖÃΪ"false"£º
A£®½«×Ö¶ÎÉèÖÃΪ"false"£º
$ kubectl patch -n argocd cm argocd-cm --type=json -p='[{"op":"add", "path":"/data/users.anonymous.enabled", "value":"false"}]'
B£®Ò²Äܹ»Ñ¡ÔñÆëȫɾ³ý¸Ã×ֶΣ¬´Ó¶ø½ûÓÃÄäÃû½Ó¼û£¬ÓÉÓÚĬÈÏֵΪfalse£º
$ kubectl patch -n argocd cm argocd-cm --type=json -p='[{"op":"remove", "path":"/data/users.anonymous.enabled"}]'
0x03 ²Î¿¼Á´½Ó
https://github.com/argoproj/argo-cd/security/advisories/GHSA-r642-gv9p-2wjj
https://argo-cd.readthedocs.io/en/stable/operator-manual/rbac/#anonymous-access
https://latesthackingnews.com/2022/05/31/serious-argo-cd-vulnerability-could-allow-admin-access-to-the-attackers/
0x04 °æ±¾ÐÅÏ¢
°æ±¾ | ÈÕÆÚ | Åú¸ÄÄÚÈÝ |
V1.0 | 2022-06-01 | ³õ´Î°ä²¼ |
0x05 ¸½Â¼
GA»Æ½ð¼×¼ò½é
GA»Æ½ð¼×¹«Ë¾³ÉÁ¢ÓÚ1996Ä꣬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐÓ×°åÕýʽ¹ÒÅÆÉÏÊУ¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂ簲ȫ²úÆ·¡¢¿ÉÐŰ²È«ÖÎÀíÆ½Ì¨¡¢°²È«·þÎñÓë½â¾ö¹æ»®µÄ×ÛºÏÌṩÉÌ¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬ÔÚÈ«¹ú¸÷Ê¡¡¢ÊÓ×¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬Õ¼Óи²¸ÇÈ«¹úµÄÇþ·ϵͳºÍ¼¼ÊõÖ§³ÖÖÐÐÄ£¬²¢ÔÚ±±¾©¡¢ÉϺ£¡¢³É¶¼¡¢¹ãÖÝ¡¢³¤É³¡¢º¼ÖÝµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£
¶àÄêÀ´£¬GA»Æ½ð¼×ÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£
¹ØÓÚGA»Æ½ð¼×
GA»Æ½ð¼×°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶Ô³ÁÒª°²È«·ì϶µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£
¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º



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