黑客巧妙利用GitHub和GitLab平台中未发布的评论功能,制造出看似源自合法开源软件(OSS)项目的钓鱼链接。这一手法由Open Analysis公司的谢尔盖·弗兰科夫(Sergei Frankoff)首次揭露,使得任何人都能轻易冒充任何目标版本库,而无需其所有者知晓或同意。
据McAfee报告,黑客已滥用此手法,发布与微软GitHub托管的软件源“vcpkg”和“STL”相关的链接,暗藏RedLine Stealer恶意软件。弗兰科夫还独立发现了更多涉及此活动的案例,其中Bleeping Computer也报道了另一个受影响的repo——“httprouter”。
这一问题不仅影响拥有超过1亿注册用户的GitHub,也波及了其竞争对手GitLab,后者拥有超过3000万用户。这种显著的缺陷存在于GitHub和GitLab最普通的评论功能中,为黑客提供了可乘之机。
开发人员通常在开源软件项目页面上发表评论,提出建议或报告漏洞。有时,这些评论会包含文件,如文档、截图等。当这些文件作为评论的一部分上传到GitHub和GitLab的内容交付网络(CDN)时,评论会自动获得一个URL。这个URL与评论所涉项目紧密相关,为黑客提供了极 佳的伪装机会。
黑客们发现,通过将恶意软件上传至目标repo,可以获得一个看似合法的链接。例如,在GitLab上,上传的文件会获得类似“https://gitlab.com/{project_group_name}/{repo_name}/uploads/{file_id}/{file_name}”的URL。尽管链接指向恶意软件,但对外部观察者而言,它似乎是一个指向真实repo文件的合法链接。
更令人担忧的是,即使攻击者将恶意软件发布到repo,repo或平台所有者也可能难以察觉和处置。尽管所有者可以删除相关评论,但生成的URL仍然有效,文件仍保留在CDN上。更为狡猾的是,攻击者甚至无需发布评论,只需在评论中添加文件,即可获得有效链接,随后便可离开。
这种利用评论功能生成合法钓鱼链接的手法,使得黑客能够轻松冒充任何他们想要的品牌,而被冒充方则毫不知情。这种与合法资源库绑定的恶意URL,不仅增加了网络钓鱼攻击的可信度,还可能给被冒充方带来声誉损害。
然而,受害者并非毫无办法。GitHub和GitLab的用户应保持警惕,不轻易相信来自未知来源的链接。同时,平台方也应尽快修复这一漏洞,加强安全措施,保护用户免受此类攻击。
Dark Reading已就此问题联系GitHub和GitLab,询问他们是否计划修复该问题以及具体的修复措施。其中,GitHub代表回应称,他们已根据可接受使用政策禁用了涉及恶意软件活动的用户账户和内容,并将继续投资提高平台安全性。GitLab方面尚未作出回应。在此期间,用户应保持高度警惕,谨慎行事。
Sectigo 产品高级副总裁 Jason Soroko 强调:“当开发者在 GitHub URL 中看到可信赖供应商的名称时,他们往往会默认点击的内容是安全合法的。尽管有人认为用户并不真正理解 URL 元素,或者这些元素与信任关系不大,但眼前的案例却是一个活生生的例证,突显了 URL 在误导信任方面的巨大作用。
“因此,开发人员必须重新审视他们对与 GitHub 或其他任何代码库相关的链接的态度,并投入足够的时间进行细致审查,就像对待电子邮件附件一样小心谨慎。他们必须意识到,即使是看似合法的 URL,也可能隐藏着潜在的恶意软件或网络钓鱼陷阱。在点击之前,务必进行深入的核实和验证,以确保链接的真实性和安全性。”