GitHub上的15000个Go模块存储库易受劫持攻击

内容概要:

目前研究发现,GitHub上超过15000个Go模块存储库容易受到一种名为"重新劫持"的攻击。

由于GitHub用户名的更改会造成9000多个存储库容易被重新劫持,同时因为帐户删除,会对6000多个存储库造成重新劫持的危机。目前统计而言,这些存储库的Go模块版本不少于800000个。

重复劫持是"存储库"和"劫持"的组合,是一种攻击技术,它允许不良行为者利用帐户用户名的更改和删除来创建具有相同名称和预先存在的用户名的存储库,从而发动开源软件供应链攻击。

用Go编程语言编写的模块特别容易被重新封装,因为与npm或PyPI等其他包管理器解决方案不同,它们是去中心化的,因为它们被发布到GitHub或Bitbucket等版本控制平台。

任何人都可以指示Go模块镜像和pkg.Go.dev缓存模块的详细信息。攻击者可以注册新使用的用户名,复制模块存储库,并将新模块发布到proxy.golang.org和go.pkg.dev。

为了防止开发人员撤下潜在的不安全包,GitHub制定了一种称为流行存储库命名空间退役的对策,该对策阻止使用退役命名空间的名称创建存储库的尝试,这些名称在所有者的帐户被重命名或删除之前已被克隆了100多次。

但这种保护对Go模块没有帮助,因为它们是由模块镜像缓存的,因此无需与存储库交互或克隆存储库。换句话说,可能有一些流行的基于Go的模块被克隆了不到100次,导致了某种程度的绕过。

研判认为:

我方应高度重视,我国使用github网站用户高达755万人,位居全球第二。那么面对此类危害我方建议相关组织通过以下方式进行减少可能出现的危害:

一、用户隔离。Copilot仅使用当前用户的M365用户的数据。人工智能工具不会显示用户可能是访客的其他用户的数据,也不会显示任何可能设置跨用户同步的用户的数据。

二、训练界限。Copilot不使用您的任何业务数据来训练Copilot为所有用户使用的基础LLM。您不必担心您的专有数据会在其他用户中显示给其他用户。

相关推荐
云和数据.ChenGuang41 分钟前
Ascend C 核心技术特性
c语言·开发语言
kyle~3 小时前
C++---value_type 解决泛型编程中的类型信息获取问题
java·开发语言·c++
北京耐用通信6 小时前
电磁阀通讯频频“掉链”?耐达讯自动化Ethernet/IP转DeviceNet救场全行业!
人工智能·物联网·网络协议·安全·自动化·信息与通信
斯南6 小时前
wireshark的基本使用,过滤请求,过滤数据,追踪数据
网络·测试工具·wireshark
四问四不知6 小时前
github上的几个热门项目
github
NiNi_suanfa6 小时前
【Qt】Qt 批量修改同类对象
开发语言·c++·qt
小糖学代码6 小时前
LLM系列:1.python入门:3.布尔型对象
linux·开发语言·python
yenggd6 小时前
首次eve-ng锐捷设备园区网案例实现
网络·智能路由器
Data_agent7 小时前
1688获得1688店铺详情API,python请求示例
开发语言·爬虫·python
妖灵翎幺7 小时前
C++ 中的 :: 操作符详解(一切情况)
开发语言·c++·ide