¡¾Â©¶´Í¨¸æ¡¿GitLab SAMLÉí·ÝÑéÖ¤Èƹý©¶´£¨CVE-2024-45409£©

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

Ò»¡¢Â©¶´¸ÅÊö

©¶´Ãû³Æ

 GitLab SAMLÉí·ÝÑéÖ¤Èƹý©¶´

CVE   ID

CVE-2024-45409

©¶´ÀàÐÍ

Éí·ÝÑéÖ¤Èƹý

·¢ÏÖʱ¼ä

2024-09-12

©¶´ÆÀ·Ö

10.0

©¶´Æ·¼¶

¸ßΣ

¹¥»÷ÏòÁ¿

ÍøÂç

ËùÐèȨÏÞ

ÎÞ

ÀûÓÃÄѶÈ

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP

δ¹ûÈ»

ÔÚÒ°ÀûÓÃ

δ·¢ÏÖ

 

GitLabÊÇÒ»¸öÓÃÓÚ¶ÑÕ»¹ÜÀíϵͳµÄ¿ªÔ´ÏîÄ¿ £¬ÆäʹÓÃGit×÷Ϊ´úÂë¹ÜÀí¹¤¾ß £¬¿ÉÒÔͨ¹ýWeb½çÃæ·ÃÎʹûÈ»»ò˽ÈËÏîÄ¿¡£SAML£¨Security Assertion Markup Language £¬Äþ¾²¶ÏÑÔ±êÖ¾ÓïÑÔ£©ÊÇÒ»ÖÖ»ùÓÚXMLµÄ³ß¶È £¬ÓÃÓÚÔÚ²îÒìµÄÄþ¾²ÓòÖ®¼ä½»»»ÈÏÖ¤ºÍÊÚȨÊý¾Ý £¬Ëü±»¹ã·ºÓ¦ÓÃÓÚµ¥µãµÇ¼£¨SSO£©½â¾ö·½°¸¡£

2024Äê9ÔÂ19ÈÕ £¬¶«É­Æ½Ì¨¼¯ÍÅVSRC¼à²âµ½GitLabÖÐÐÞ¸´ÁËÒ»¸öSAMLÉí·ÝÑéÖ¤Èƹý©¶´£¨CVE-2024-45409£© £¬¸Ã©¶´µÄCVSSÆÀ·ÖΪ10.0¡£

OmniAuth-SAMLºÍRuby-SAML¿âÔÚGitLabÖÐÓÃÓÚ´¦ÖûùÓÚSAMLµÄÉí·ÝÑéÖ¤ £¬ÓÉÓÚÕâЩ¿â/¹¤¾ßÎÞ·¨ÕýÈ·ÑéÖ¤SAMLÏìÓ¦µÄÇ©Ãû £¬µ¼Ö´æÔÚSAMLÉí·ÝÑéÖ¤Èƹý©¶´£¨CVE-2024-45409£© £¬ÍþвÕß¿ÉÒÔÖÆ×÷¶ñÒâ SAML ÏìÓ¦´Ó¶øÈƹýSAMLÉí·ÝÑéÖ¤²¢»ñµÃ¶ÔGitLabʵÀýµÄ·ÃÎÊȨÏÞ¡£

 

¶þ¡¢Ó°Ï췶Χ

GitLab CE/EE 17.3.x < 17.3.3

GitLab CE/EE 17.2.x < 17.2.7

GitLab CE/EE 17.1.x < 17.1.8

GitLab CE/EE 17.0.x < 17.0.8

GitLab CE/EE 16.11.x < 16.11.10

OmniAuth-SAMLºÍRuby-SAMLÒÀÀµÏ

omniauth-saml <= 2.1.0

ruby-saml <= 1.12.2

1.13.0 <= ruby-saml <= 1.16.0

 

Èý¡¢Äþ¾²´ëÊ©

3.1 Éý¼¶°æ±¾

Ä¿Ç°¸Ã©¶´ÒѾ­ÐÞ¸´ £¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½ÒÔÏ°汾£º

GitLab CE/EE 17.3.x >= 17.3.3

GitLab CE/EE 17.2.x >= 17.2.7

GitLab CE/EE 17.1.x >= 17.1.8

GitLab CE/EE 17.0.x >= 17.0.8

GitLab CE/EE 16.11.x >= 16.11.10

»ò½«OmniAuth-SAMLºÍRuby-SAMLÒÀÀµÏîÉý¼¶µ½ÒÔÏÂÐÞ¸´°æ±¾£º

omniauth-saml£ºÉý¼¶µ½2.2.1¡¢2.1.2¡¢1.10.5»ò¸ü¸ß°æ±¾

ruby-saml£ºÉý¼¶µ½1.17.0¡¢1.12.3»ò¸ü¸ß°æ±¾

ÏÂÔØÁ´½Ó£º

https://about.gitlab.com/

3.2 ÁÙʱ´ëÊ©

Õë¶Ô×ÔÐйÜÀíµÄ GitLab °²×° £¬¿É½ÓÄÉÒÔÏ´ëÊ©»º½â©¶´ÀûÓãº

1.ΪGitLab ×Ô¹ÜÀíʵÀýÉϵÄËùÓÐÓû§ÕÊ»§ÆôÓà GitLabË«ÒòËØÉí·ÝÑéÖ¤¡£×¢Òâ £¬ÆôÓÃÉí·ÝÌṩÕߣ¨IdP£©¶àÒòËØÉí·ÝÑéÖ¤²»ÄÜ»º½â¸Ã©¶´¡£

2.²»ÔÊÐíGitLabÖеÄSAMLË«ÒòËØÈƹýÑ¡Ïî¡£

´ËÍâ £¬¿Éͨ¹ýÔÚGitLab application_jsonºÍauth_jsonÈÕÖ¾ÎļþÖмì²ìºÍ¼ì²âÊÇ·ñ´æÔڸ鶴µÄÀûÓÃʵÑé £¬ÏêÇé¿É²Î¿¼£º

https://about.gitlab.com/releases/2024/09/17/patch-release-gitlab-17-3-3-released/

3.3 ͨÓý¨Òé

l  ¶¨ÆÚ¸üÐÂϵͳ²¹¶¡ £¬¼õÉÙϵͳ©¶´ £¬ÌáÉý·þÎñÆ÷µÄÄþ¾²ÐÔ¡£

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

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

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

l  ÆôÓÃÇ¿ÃÜÂë¼Æı²¢ÉèÖÃΪ¶¨ÆÚÐ޸ġ£

3.4 ²Î¿¼Á´½Ó

https://about.gitlab.com/releases/2024/09/17/patch-release-gitlab-17-3-3-released/

https://github.com/SAML-Toolkits/ruby-saml/security/advisories/GHSA-jw9c-mfg7-9rx2

https://github.com/omniauth/omniauth-saml/security/advisories/GHSA-cvp8-5r8g-fhvq


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

°æ±¾

ÈÕÆÚ

±¸×¢

V1.0

2024-09-19

Ê×´ÎÐû²¼

 

 

Îå¡¢¸½Â¼

5.1 ¶«É­Æ½Ì¨¼ò½é

¶«É­Æ½Ì¨½¨Á¢ÓÚ1996Äê £¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Äþ¾²¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Äþ¾²²úÎï¡¢Äþ¾²·þÎñ½â¾ö·½°¸µÄÁ캽ÆóÒµÖ®Ò»¡£

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

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

5.2 ¹ØÓÚ¶«É­Æ½Ì¨

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

¹Ø×¢ÎÒÃÇ£º

image.png