¡¾Îó²îͨ¸æ¡¿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