Git交互式凭证提示和凭据重定向漏洞CVE-2024-50349 CVE-2024-52006

Git交互式凭证提示和凭据重定向漏洞CVE-2024-50349 CVE-2024-52006

SecHub网络安全社区 2025-02-05 09:06




点击蓝字 关注我们

免责声明

本文发布的工具和脚本,仅用作测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。

如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利,则应及时通知并提供身份证明,所有权证明,我们将在收到认证文件后删除相关内容。

文中所涉及的技术、思路及工具等相关知识仅供安全为目的的学习使用,任何人不得将其应用于非法用途及盈利等目的,间接使用文章中的任何工具、思路及技术,我方对于由此引起的法律后果概不负责。

🌟简介

CVE-2024-50349

CVE-2024-52006
是针对Git版本控制系统的两个高风险漏洞,主要涉及
身份凭证存储与交互式提示的欺骗风险
(Credential Prompt Spoofing)及
凭据重定向问题
(Credential Redirection)。攻击者可利用这些漏洞窃取用户凭据(如账号密码、SSH密钥等),或通过伪造交互式提示诱骗开发者输入敏感信息,导致权限泄露、代码库被非法访问等严重后果。

漏洞成因及危害

1. 凭证存储与交互式提示漏洞成因

  • 交互提示欺骗风险(CVE-2024-50349)Git在克隆或拉取代码时,若需用户输入凭据(例如访问私有仓库),会在终端弹出交互式提示窗口。由于旧版本Git未对提示来源进行严格验证,攻击者可通过恶意构造的Git子模块(Submodule)劫持提示流程,伪造看似合法的凭据输入窗口,诱导用户提交敏感信息。

  • 凭据重定向漏洞成因(CVE-2024-52006)当用户使用git clone –recurse-submodules命令克隆包含子模块的仓库时,旧版本Git未正确处理子模块的身份验证流程。攻击者可利用嵌套子模块的配置,将合法仓库的子模块链接重定向到恶意仓库,导致凭据被自动发送至攻击者控制的服务器。

2. 具体危害

  • 敏感信息泄露:攻击者可直接获取用户账户密码、SSH密钥或OAuth令牌,进而渗透企业代码仓库(如GitHub、GitLab)。

  • 供应链投毒:通过窃取的凭据向合法仓库注入恶意代码,进一步引发供应链攻击(如依赖污染)。

  • 内网渗透:若开发机与企业内网连通,攻击者可利用泄露的凭据横向移动,扩大攻击范围。

受影响版本范围

  • CVE-2024-50349:Git 2.48.0及更早版本。

  • CVE-2024-52006:Git 2.40.0至2.48.0版本(在递归克隆子模块的场景下触发)。

注:使用以下命令检查当前Git版本:

git --version

缓解措施

1. 紧急升级至安全版本

  • 官方修复版本:升级至Git
    2.48.1或更高版本,该版本已修复交互提示的合法性验证逻辑,并限制了子模块的凭据传递流程。

升级方法:
– Linux/macOS:

  • “`

通过官方包管理器升级(示例)

sudo apt update && sudo apt install git # Debian/Ubuntu
brew upgrade git # macOS (Homebrew)


-   
-   
-   
- Windows:访问Git官网下载最新安装包覆盖旧版本。  

#### 2. 限制高风险操作  
- 避免递归克隆非信任仓库:禁用--recurse-submodules参数克隆来源不明的仓库,手动审查后再添加子模块。  

- ```
# 安全克隆流程示例  
git clone <仓库URL>          # 不自动拉取子模块  
cd <仓库目录>  
git submodule init          # 手动初始化子模块  
git submodule update        # 确认子模块可信后更新

  • 禁用凭据自动填充:在Git全局配置中关闭凭据缓存,避免凭据被恶意子模块窃取:

  • git config --global --unset credential.helper

3. 增强凭据安全策略

  • 使用SSH密钥替代密码:优先配置SSH密钥认证,并限制密钥权限(如仅允许读取仓库)。

  • 启用双因素认证(2FA):为代码托管平台(如GitHub、GitLab)开启2FA,降低凭据泄露后的影响。

4. 监控与应急响应

  • 日志审计:定期检查Git操作日志(git reflog)及服务器访问日志,发现异常子模块更新或凭据请求。

  • 凭据轮换:若怀疑凭据已泄露,立即重置所有相关账户的密码、吊销SSH密钥及API令牌。

总结

CVE-2024-50349和CVE-2024-52006暴露了代码协作流程中潜在的安全盲区。企业开发者需尽快升级Git版本、严格管理子模块依赖,并从身份认证、操作规范、监控响应三方面构建防御体系,避免沦为供应链攻击的跳板。

安全开发无小事,每行代码皆防线!

欢迎关注SecHub网络安全社区,SecHub网络安全社区目前邀请式注册,邀请码获取见公众号菜单【邀请码】

#

企业简介

赛克艾威 – 网络安全解决方案提供商


北京赛克艾威科技有限公司(简称:赛克艾威),成立于2016年9月,提供全面的安全解决方案和专业的技术服务,帮助客户保护数字资产和网络环境的安全。

安全评估|渗透测试|漏洞扫描|安全巡检

代码审计|钓鱼演练|应急响应|安全运维

重大时刻安保|企业安全培训

联系方式

电话|010-86460828 

官网|https://sechub.com.cn

关注我们

公众号:sechub安全

哔哩号:SecHub官方账号