利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

  • A+
所属分类:安全新闻

Aqua的Nautilus团队发现了一个令人印象深刻的行动,该行动旨在劫持资源,用来“挖矿”获取加密货币。其主要针对几个SaaS软件开发环境(包括Docker Hub,GitHub,Travis CI和Circle CI),滥用它们的自动化构建过程。

幸运的是,Nautilus团队的研究人员有时会使用Aqua Dynamic Threat Analysis(DTA)在Docker Hub上扫描伪装的映像,并且能够在该活动开始的几个小时内对其进行检测和调查。随后,其研究团队会通知受到影响的服务提供商关于此攻击的详细信息。



1

精心策划的“闪电战”行动 



这个活动的基础架构由11个GitHub用户组成,他们创建了51个GitHub项目,并把这些项目伪装成流行的软件项目(如nginx, okular, openssh, openvpn, seahorse, nautilus, zookeeper等)。同样他们也使用流行软件的名称创建了56个Docker Hub账户。 所有这些都发生在短短几个小时内。在构建过程中,这些映像还继续从一个GitHub存储库下载挖矿程序。所有56个Docker Hub映像在创建后的几个小时内都被检测到了。基于这些发现,Nautilus团队的研究人员将这些联系起来,从而揭示了整个攻击链。

所有映像均会下载一个名为GCC的文件,该文件被VirusTotal标记为恶意文件。

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

攻击者将二进制文件命名为“ GCC”,以便将PUA(不欢迎的应用程序)伪装成编译器系统(GNU compiler Collection-GCC是一个编译器系统,它是一个与很多Linux有关的项目(包括Linux内核)的关键组件)。

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动


2

一种新型加密货币攻击方式 


有趣的是,攻击者正在滥用GitHub,Docker Hub,Travis CI和Circle CI的基本服务。虽然原作者团队曾观察到其他利用公共映像,滥用容器运行时环境,进行供应链攻击的活动,但是在这个新的活动中,构建过程本身的基础设施也在被滥用。

这些映像建立在这些服务提供商的环境上,然后劫持其资源以挖掘加密货币。Dockerfile中复杂的构建机制如下:

  • 使用Ubuntu基础镜像.

  • 将“/workdir 设置为工作目录。

  • 下载安装工具CURL。

  • 使用 CURL,从GitHub下载假冒的 GCC 程序(实际上是挖矿程序)和挖矿需要用到的配置文件。

  •  Docker.sh 被复制到工作目录并执行。 Docker.sh 的功能如下:

    1. 根据配置文件,执行假冒的 GCC (挖矿程序)。

    2. 当挖矿程序运行的时候,Github的仓库也被下载下来。

    3. 从这个仓库里面随机选取两个文件,替换文件的内容。

    4. 然后将这个随机的改动提交保存。

    5. 这个仓库再被上传到Github

  • PUA 程序被删除。

  • 在CMD里运行git 。

在提取和运行映像时会失败,因为CMD提示需要使用bash命令运行JSON文件。


利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动


从创建这些项目和容器映像开始,它们每个都提交了成千上万次的代码更改。每次提交都通过上述服务执行构建过程,并且在每次构建时,都会执行一次挖矿程序。此次行动三天时间内就在GitHub上累积了超过23.3万个提交量,在Docker Hub上累积了5.8万个提交量,转化为大约3万个Monero挖矿会话。目前,Docker Hub将自动构建的持续时间限制在两小时以内,这给攻击者留下了大量时间来使用此功能。

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

攻击者可能正在尝试尽可能多地使用此功能。这种活动可以很容易地被修改成攻击无辜的终端用户(如开发人员、DevOps)。如果攻击者改变CMD来执行miner,则此次活动可以针对任何下载这些映像的人。


3

总结 


这次行动是攻击者不断发挥创造力的又一例证。他们坚持不懈地追求可重用的云计算资源。这也提醒我们,云中的开发环境与生产环境一样容易受到攻击,有时因为没有得到同级别的安全防护甚至更容易受到攻击。

原作者建议此类环境应有严格的访问控制、身份验证和最低的运行权限,还应持续监视和限制出站网络连接,以防止数据被盗和资源滥用。


4

威胁指标 (IOCs) 


11 GitHub users:https[:]//github[.]com/alisa-smirnovahttps[:]//github[.]com/amelia-popahttps[:]//github[.]com/evgeny-vinogradovhttps[:]//github[.]com/matias-garcia-projectmanagerhttps[:]//github[.]com/olafur-berndsenhttps[:]//github[.]com/oliver-wardhttps[:]//github[.]com/rawiri-martinhttps[:]//github[.]com/sophie-zhang-accountanthttps[:]//github[.]com/tom-mullerhttps[:]//github[.]com/william-jonssonhttps[:]//github[.]com/markel-sanz
56 Docker Hub accounts:hub.docker.com/r/digitaltelegramdesktopi/telegram-desktop/buildshub.docker.com/r/gnatlinki/gnat/buildshub.docker.com/r/nginxclearr/nginx/buildshub.docker.com/r/waylandfreex/wayland/buildshub.docker.com/r/majawozniakx/babl/buildshub.docker.com/r/dovecotbugfixb/dovecot/buildshub.docker.com/r/okularrustz/okular/buildshub.docker.com/r/zookeeperprimaryr/zookeeper/buildshub.docker.com/r/kristiandimitrovz/mc/buildshub.docker.com/r/bugfixxena/xen/buildshub.docker.com/r/fontforgeshv/fontforge/buildshub.docker.com/r/ameliapopaf/mosquitto/buildshub.docker.com/r/x64stracea/strace/buildshub.docker.com/r/cupsforka/cups/buildshub.docker.com/r/oliverwardi/ghc/buildshub.docker.com/r/advsqlitebrowserz/sqlitebrowser/buildshub.docker.com/r/sqlitemuxv/sqlite/buildshub.docker.com/r/lincgdbr/cgdb/buildshub.docker.com/r/gegltrued/gegl/buildshub.docker.com/r/packseahorseb/seahorse/buildshub.docker.com/r/comgitta/git/buildshub.docker.com/r/bugfixedpostgresqlcommx/postgresql-common/buildshub.docker.com/r/jetgnatz/gnat/buildshub.docker.com/r/vimsilveri/vim/buildshub.docker.com/r/geglrusti/gegl/buildshub.docker.com/r/licbashf/bash/buildshub.docker.com/r/shellpopplerf/poppler/buildshub.docker.com/r/sqlitebrowseradvf/sqlitebrowser/buildshub.docker.com/r/evinceprimer/evince/buildshub.docker.com/r/x86binwalkr/binwalk/buildshub.docker.com/r/advancedgnomecolormanb/gnome-color-manager/buildshub.docker.com/r/evgenyvinogradovb/systemd/buildshub.docker.com/r/musladvancedr/musl/buildshub.docker.com/r/okularprimaryr/okular/buildshub.docker.com/r/olafurberndsenr/openssh/buildshub.docker.com/r/rawirimartinv/evince/buildshub.docker.com/r/portablepulseaudioa/pulseaudio/buildshub.docker.com/r/tommullern/libjpeg-turbo/buildshub.docker.com/r/forkedcupsn/cups/buildshub.docker.com/r/freemusln/musl/buildshub.docker.com/r/largemcn/mc/buildshub.docker.com/r/shsyslogngn/syslog-ng/buildshub.docker.com/r/muxsyslogngb/syslog-ng/buildshub.docker.com/r/binwalkforkedf/binwalk/buildshub.docker.com/r/flosscairov/cairo/buildshub.docker.com/r/rcnautilusa/nautilus/buildshub.docker.com/r/zookeeperx64b/zookeeper/buildshub.docker.com/r/cmpeogp/eog/buildshub.docker.com/r/fontforgecommonr/fontforge/buildshub.docker.com/r/matiasgarciab/seahorse/buildshub.docker.com/r/sophiezhanga/cairo/buildshub.docker.com/r/openvpnlinkp/openvpn/buildshub.docker.com/r/bablx8664l/babl/buildshub.docker.com/r/cmddbusl/dbus/buildshub.docker.com/r/ffmpeglicl/ffmpeg/buildshub.docker.com/r/licgittl/git/builds
51 GitHub repositories:https://github.com/goldendict-lib/goldendicthttps://github.com/int-mpv/mpvhttps://github.com/large-mc/mchttps://github.com/lic-bash/bashhttps://github.com/lin-cgdb/cgdbhttps://github.com/musl-advanced/muslhttps://github.com/mux-syslog-ng/syslog-nghttps://github.com/nginx-beautiful/nginxhttps://github.com/nginx-clear/nginxhttps://github.com/okular-primary/okularhttps://github.com/openvpn-link/openvpnhttps://github.com/pack-seahorse/seahorsehttps://github.com/portable-pulseaudio/pulseaudiohttps://github.com/rc-nautilus/nautilushttps://github.com/sh-syslog-ng/syslog-nghttps://github.com/shell-poppler/popplerhttps://github.com/sqlite-mux/sqlitehttps://github.com/sqlitebrowser-adv/sqlitebrowserhttps://github.com/vim-silver/vimhttps://github.com/wayland-adv/waylandhttps://github.com/x86-binwalk/binwalkhttps://github.com/zookeeper-x64/zookeeperhttps://github.com/licgitt/githttps://github.com/alisa-smirnova/cgdbhttps://github.com/amelia-popa/mosquittohttps://github.com/evgeny-vinogradov/systemdhttps://github.com/matias-garcia-projectmanager/seahorsehttps://github.com/olafur-berndsen/opensshhttps://github.com/oliver-ward/ghchttps://github.com/rawiri-martin/evincehttps://github.com/william-jonsson/eog


利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动


本文为CNTIC编译,不代表本公众号观点,转载请保留出处与链接。

联系信息进入公众号后点击“论坛信息”可见。


原文标题:Threat Alert: Massive Cryptomining Campaign Abusing GitHub, Docker Hub, Travis CI & Circle CI
原文地址:
https://blog.aquasec.com/container-security-alert-campaign-abusing-github-dockerhub-travis-ci-circle-ci
编译:CNTIC情报组

利用GitHub、Docker Hub、Travis CI、Circle CI进行伪装的挖矿活动

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: