GitHub账户被黑:旧漏洞导致弱密钥大量留存

又见历史原因导致的安全隐患

在七年前开发人员发现GitHub存在一个灾难性的漏洞之后,GitHub已经关闭了数量不明的通过密钥访问的账户。

Github允许授权用户登录到隶属于Spotify、Yandex和英国政府的公共仓库账户中,而这些公共仓库账户却使用了由当时存在缺陷的Linux发行版本Debian生成的SSH密钥,而这部分密钥是不安全的——其密钥的位数太少以至于可以枚举导致暴力破解,分分钟登录这些存在威胁的账户中。

七年后,Debian社区的朋友们修复了bug并且提醒用户取消旧的密钥而重新生成一个。伦敦的开发人员Ben Cartwright-cox说,他发现了这一漏洞仍然存在于海量密钥中,而这些密钥因位数不足比较容易被人攻击利用。

Cartwright-cox在周一发表的博文中称:

“如果你刚刚或者正收到一封关于密钥被撤销的邮件,那请你务必仔细浏览并且确保确实没有人攻击你。如果你使用了存在问题的密钥,你可能已经遭到了黑客的攻击。”

密钥数量有限?

Cartwright-Cox在GitHub上发现了大约94个包括Debian衍生缺陷的密钥。3月份他向GitHub官方报告之后,才发现实际用户数量要高得多。GitHub于上月撤销了这些密钥,目前GitHub官方没有作出其他回应。

此外,Cartwright-cox发现了九个GitHub SSH密钥bits数量存在严重不足。其中有两个只包含256位,导致他能够在不到一小时内克隆出密钥,而剩余的其他7个密钥都只有512位。

漏洞描述

下面我们看一下这个Debian的漏洞是如何导致枚举的。

该漏洞可谓是十分亮眼。因为漏洞的存在,使得生成的SSH密钥长度非常短。当生成OpenSSH密钥的位数不足时,对于一个给定体系结构、密钥大小和密钥类型而言只有32767种输出结果。攻击者能够使用相同方法找到弱密钥,然后使用一些技术来获取密钥保护的账户。这一任务会在不安全Debian SSH 密钥的帮助下获得一个或者更多公共网站,比如这一个:

“如果我想折腾得动静大一些,我大可去做我在博客中提到的那些事情,然后或许可以给GitHub他们一些警示(我已经给了他们机会的)。

想要制造这样的问题可以如下进行:

获取问题密钥列表。其中包含了所有SSH密钥的公共和私密部分,如果用户有一个存在Debien RNG 漏洞的OpenSSH版本,然后得到列表中的每个密钥,并尝试登录带有密钥的GitHub ssh。你使用密钥最终会告诉你与之匹配用户姓名是什么然后进行配对,比如加载我的密钥便时会显示”Hi benjojo! You’ve successfully authenticated, but GitHub does not provide shell access.”,但如果我使用的是另一个存在缺陷的密钥,则会显示”Hi {user}! You’ve successfully authenticated, but GitHub does not provide shell access.” ,这样我就知道轻松知道我的目标用户是谁了。”

用户:快去更新密钥和操作系统

Rapid7 的高级研究员及Metasploit框架的联合创始人HD Moore表示(小编:Moore同志又在宣传推广他的MSF框架了):

“从技术上讲,攻击者甚至不需要私钥来查看网站接受的用户身份验证。仅仅是公共密钥和Metasploit模块就能够完成了。”

这个漏洞于2006年被发现,当时鉴于一些用户提交的漏洞报告,Debian维护人员最终去掉了OpenSSL代码库的两行代码。而Debian的维护人员仅仅是去掉了Debian对于OpenSSH的依赖,因此这个存在于OpenSSH中的位数缺陷并没有被修复,接下来的故事更戏剧化,Ubuntu在不知情的情况下也打包了这个存在缺陷的OpenSSH版本,所以这个漏洞又跑到了Linux的另一发行版本Ubuntu中,而在此后的20个月中,并没有人发现这个从Debian跑过来的重大问题,而就在这20个月里,有一批数量不明的密钥已经生成。

这个问题并不是一个小问题,因为这批数量不明的SSH弱密钥还大量存在于Github中,补丁也只能保证从此刻开始新生成的SSH密钥的安全性,想要完全解决问题,还需要用户主动去撤销那些在20个月内生成的存在缺陷的密钥,并使用新的操作系统以生成新的密钥。由此看来,想要彻底解决这个问题,任务量不可小觑。

小编语

最近Github可谓是多事之秋啊,先是被DDoS,然后又被爆出存在如此多数量的弱密钥,大家都是码代码的,找个好点的托管平台容易嘛!程序员何苦为难程序员!

不过上个月末才传出Github已经宣布正在开发一个去中心化的产品——GitTorrent,据官方回复说,一来是为了防止被DDoS,二来也为了Github未来的发展。Github未来如何,我们拭目以待。不过我们衷心祝愿这样一个好的平台越做越好!

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/151573.html<

(0)
管理的头像管理
上一篇2025-03-13 14:48
下一篇 2025-03-13 14:49

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注