近来,多家安全厂商发现加密货币采矿服务Coinhive已经成为Web用户所面临的最大恶意威胁,而这主要源自Coinhive的计算机代码被大量应用于遭到黑客入侵的网站之上。在这种情况下,访问者设备的处理能力将受到劫持并被悄悄用于加密货币采矿。本文将着力探讨Coinhive为何能够在诞生不到一年之后即跃居威胁列表的顶端,同时探索这波攻击浪潮背后操纵者的潜在身份。

Coinhive是一项加密货币采矿服务,其代码体积小巧,能够被轻松加载在各类网站当中。其代码能够使用访问相关站点的浏览器所具备的部分或全部计算能力,从而利用这部分资料挖掘门罗币。

与比特币不同,门罗币的交易活动实际上是完全匿名的——意味着外部人士无法追踪交易双方的实际身份。当然,这样的特性也使得门罗币成为网络犯罪分子眼中最理想的加密货币选项。

Coinhive于去年夏季发布了其采矿代码,网站拥有者可以通过这种方式获得一定收益,而访问者则可借此获得更流畅的访问体验——即无需面对恼人的广告宣传内容。但自此之后,Coinhive代码被多家安全企业判定为一类主要恶意软件威胁。这是因为该代码被大量加载在受到入侵的网站当中,而合法的网站拥有者无法因此获得任何收益。

与其它恶意软件或木马一样,Coinhine的代码同样会锁定用户的浏览器并在持续挖掘门罗币的过程中快速榨干用户设备的电量。

根据publicwww.com的统计(其提供服务对各网站的源代码进行索引),目前有近32000个网站运行有Coinhive的JS采矿代码。我们无法判断这些网站当中有多少属于有意加载该代码的情况,但近几个月以来,黑客组织确实开始悄悄将其引入某些知名度极高的网站当中——其中包括《洛杉矶时报》、移动设备制造商黑莓、《政治真相》以及Showtime等。

此外,Coinhive还经常出现在一些意想不到的地方:去年12月,Coinhive代码被嵌入在布宜诺斯艾利斯各星巴克WiFi热点服务的相关网页当中。而在今年1月,Coinhive又被发现隐藏在部分国家(包括日本、法国、台湾、意大利以及西班牙)的YouTube广告当中。今年2月,Coinhive现身Textalp提供的“Browsealoud”——一项用于为视障人士朗读网页内容的服务,除了少数美国与加拿大政府网站之外,该服务亦在多个英国政府网站上得到广泛普及。

Coinhive的广泛扩散会带来怎样的结果?具体来讲,无论目标网站是否同意运行,Coinhive都会为该网站保留挖掘到的门罗币的三成。其代码还绑定有一个特殊的加密密钥,该密钥用于标识其余七成门罗币会被发送至哪个用户账户处。

Coinhive虽然饱受诟病,但其目前仅回应网站遭遇入侵情况下的相关申诉(且基本忽略一切来自第三方的投诉意见)。更重要的是,即使作出回应,Coinhive方面的处理方法也仅是撤销与滥用活动相关的密钥。

不过根据曾在Coinhive及其它“加密货币劫持”案例研究工作中投入大量时间的安全专家Troy Mursch所言,撤销密钥并不会阻止Coinhive代码继续在遭到入侵的网站上挖掘门罗币。一旦密钥失效,Coinhive会为目标网站绑定的账户保留挖掘到的全部加密货币。

Mursch指出,Coinhive方面似乎并没有监督并阻止相关滥用活动的动力。

Mursch解释称,“在‘终止’一个密钥时,其终止的实际上只是平台上的用户——恶意JS代码仍会继续运行,且挖掘到的门罗币不会再被发送给攻击者。Coinhive非常清楚这一点,但他们可能对此毫无办法,也可能是根本不想理会。总而言之,只要代码仍在受入侵网站上运行,其就会继续疯狂蚕食访问者的处理资源并产生收益。”

面对这种存在着明显利益冲突的状况,Coinhive方面作出的回应仍集中在技术层面,表示其正在努力解决相关纠纷。

Coinhive方面在接受邮件采访时表示,“我们在开发Coinhive时假定网站密钥的不变属性。很明显,用户无法删除站点密钥,而这一前提极大简化了我们的初始开发工作。我们可以将站点密钥缓存在我们的WebSocket服务器上,而无需从每个新客户端的数据库中进行重新加载。我们正在建立一套新的机制,旨在将密钥撤销结果传递至我们的WebSocket服务器端。”

AuthedMine

Coinhive公司发布了其AuthedMine版本的代码以回应上述批评。这部分代码会在运行门罗币采矿脚本之前首先征求网站访问者的同意。Coinhive方面表示,使用其平台进行的门罗币采矿活动当中,有约35%都来自使用AuthedMine的网站。

然而根据安全厂商Malwarebytes公司于今年2月发布的调查报告,与Coinhive采矿代码的使用量相比,AuthedMine代码的使用比例“几乎可以忽略不计”,而且该代码并未真正从网站访问者处获取许可。Malwarebytes公司收集到的遥测数据(来自当用户浏览到运行 Coinhive代码的网站时,反病毒软件发出的警报)确定,在全部与Coinhive采矿代码相关的安全事件中,AuthedMine的占比仅略高于百分之一。

图片:Malwarebytes公司统计结果,即今年1月10日至2月7日之间该公司阻断AuthedMine与Coinhive连接的日均次数。

在被要求对Malwarebytes的调查结果作出回应时,Coinhive方面表示如果使用AuthedMine的比例相对较低,这可能是因为像Malwarebytes这类反恶意软件厂商将其屏蔽而导致用户无法正常使用。

Coinhive方面指出,“他们将相关版本视为威胁并加以屏蔽。如果人们按照我们的设计初衷来使用AuthedMine,为什么要将其屏蔽掉?我们根本没办法在不触发反病毒软件黑名单的前提下启动Coinhive。如果反病毒软件认为采矿是坏事,那么采矿就真的成了坏事。”

同样的,来自源代码追踪网站publicwww.com的数据显示,目前有约32000个站点正在运行Coinhive采矿脚本的原始版本,而其发现的运行有AuthedMine的站点数量仅为约1200个。

COINHIVE究竟是何方神圣?

[作者按:一般来讲,我倾向于提供文章当中的信息来源,例如Coinhive自家网站上的信息以及下文当中提及的各实体。然而,其中相当一部分链接包含采矿恶意软件,或者其它明显不安全的内容,因此我决定直接提供截图而非链接。另外,强烈建议大家不要访问pr0gramm网站。]

根据Coinhive网站的原始版本——即coin-hive点com——上的声明(现已删除),Coinhive诞生于德语图片托管与论坛pr0gramm点com。

原始coin-hive点com网站上的“关于我们”内容,现已被删除。此截图保存于2017年9月15日,图片来自archive.org。

事实上,pr0gramm点com上的多个讨论主题显示,Coinhive代码是在2017年7月的第三周首次在这里出现。当时,该项实验被称为“pr0miner”,且相关帖子表明pr0miner的核心程序员使用“int13h”这一昵称。在写给作者的一封信中,Coinhive方面确认“当时的大部分工作皆是由int13h所完成,他目前仍在我们的团队当中”。

我就此事向Coinhive方面进行了询问,包括为何删除了用于说明与pr0gramm间关系的上述声明。对方的回应可谓轻描淡写:

“Pr0gramm论坛的拥有者与我们是好朋友,我们此前曾帮助其完成了基础设施与各类项目的构建,而他们允许我们利用pr0gramm作为采矿实验平台,并使用其名称以建立项目声誉。必须承认,建立新平台非常困难。不过我们后来得到了广泛认可,所以不再需要公布这一声明。”

在被问及其声明中提到的“平台”究竟是什么时(‘我们自筹资金,并在过去11年内一直运行这套平台’),Coinhive回应称:“抱歉,这里我们没有表述清楚。‘这套平台’指的正是pr0gramm。”

在收到回复之后,可能会有研究人员希望通过确定pr0gramm论坛管理员身份的方式找到Coinhive的幕后控制者。根据我的推断,即使这位管理员并非控制者本人,其也几乎必然知道后者的真实身份。

PR0GRAMM又是什么?

因此,我决定着手探索pr0gramm论坛管理者的秘密。这并不轻松,但最终所有必要的线索与信息皆能够在网络上免费获得。

在这里请允许我首先强调:我收集到的所有数据(以及在以下‘思维导图’中所提及的信息)皆来自公共网站WHOIS域名注册记录,或者pr0gramm论坛管理员本人在各类社交媒体上公布的内容。换句话来说,这项研究当中所涉及的所有内容皆是由pr0gramm管理员主动发布在网络上的。我首先从pr0gramm论坛域名开始入手,并发现其最初注册人为Matthias Moench博士。

Moench先生只是与这项研究有关,因此我并没有将其断定为垃圾邮件发送者或者恶意软件传播者,而且本文的末尾部分解释了Moench的身份及其为何与这么多域名有所关联。这又是另一个有趣的故事了。

经过数周的研究,我了解到pr0gramm最初与某家成人网站相关,而后者又与两家十多年前于内华达州拉斯维加斯注册的公司有关——二者分别为Eroxell有限公司与Dustweb有限公司,双方皆参与了某种形式的在线广告业务。

Eroxell与Dustweb两家公司,外加其它几个与pr0gramm相关的网站(例如pr0mining点com、pr0mart点de以及pr0shop点com)都与一位名叫Reinhard Fuerstberger的德国人有关——他的域名记录还包括“admin@pr0gramm点com”。Eroxell/Dustweb各自又同注册于西班牙的Suntainment SL公司有关,而该公司的拥有者正是Fuerstberger。

正如pr0gramm网站上的说明,该论坛创始于2007年。这是一套德语留言板,其中亦提供自动化机器人以索引并显示与大受欢迎的第一人称射击游戏《雷神之锤》相关的在线聊天内容。

随着论坛用户数量的增长,网站缓存的图像也开始愈发多样。此时,pr0gramm开始提供付费的“pr0mium”账户服务,允许用户查看论坛上的所有非安全图片并在讨论板上发表评论。而在pr0gramm于去年7月首次推出pr0miner(即Coinhive的前身)时,其邀请pr0gramm会员在自己的网站上试用这些代码,并为试用者提供pr0mium积分奖励。

发布在pr0gramm上的一篇pr0miner相关文章,而pr0miner正是Coinhive的前身。

DEIMOS与PHOBOS

Pr0gramm于2007年创立,最初是由德国人Dominic Szablewski建立的《雷神之锤》讨论专版——这位计算机专家以网名“cha0s”而在pr0gramm上为人们所熟知。

在论坛刚刚创办之时,Szbalewski运行着一套名为chaosquake点de的《雷神之锤》讨论版,外加phoboslab点org个人博客。但最重要的是,phoboslab 与pr0gramm实际上曾经共享相同的Google Analytics追踪代码(UA-571256)。

在接受邮件采访时,Szablewski表示他不想就此事作出评论,只表示自己已经在几年前将pr0gramm卖给了另一匿名个人。

多位pr0gramm早期会员指出,随着cha0s管理员的离开,该论坛开始呈现出具有民粹主义特征的右倾政治立场。Fuerstberger先生 在各类社交媒体网站上将自己称为“反对政治正确的巴伐利亚分裂主义者”。更重要的是,pr0gramm上还存在着大量对特定种族或宗教团体加以攻击与贬低的帖子。

在接受邮件采访时,Fuerstberger表示他对pr0gramm被用于发布Coinhive一事并不知情。

“我可以向你保证:我这个礼拜才第一次听说Coinhive。我也可以保证,Suntainment公司包括我本人与其毫无关联。Pr0gramm也同样如此。这是我合作伙伴的行为,而且我对这种滥用行为感到震惊。”

以下为我整理出的一份“思维导图”,用于追踪本项研究当中提到的各个姓名、电子邮件以及网站间的关系。

“思维导图”,用于追踪本项研究中对pr0gramm及Coinhive的研究结论。此图利用Mindnode Pro for Mac创建,点击可查看大图。

GAMB

通过排查WHOIS上的数据,我发现了Fuerstberger的合作伙伴——目前以“Gamb”为昵称担任pr0gramm管理员,且曾经为与pr0gramm相关的美国企业(Eroxell有限公司)进行网站注册。

在Eroxell公司注册的多个域名当中,我们发现了deimoslab点com,其曾被用于销售电子产品。从2010年的网站副本(来自archive.org)可以看到,deimoslab的拥有者同样使用Gamb这一昵称。

Deimos与Phobos是火星两颗卫星的名字。二者亦是电脑游戏《毁灭战士》中第四关与第五关的名称。此外,《雷神之锤2》中亦有两艘宇宙飞船以此命名。

2010年的Deimoslab点com截图(感谢archive.org)显示,用户“Gamb”为该网站的拥有者。

在对pr0gramm点com长期使用的互联网地址进行被动DNS查找后,我们发现deimoslab点com曾与其它几个域名共享服务器——其中包括phpeditor点de。而对phpeditor点de的历史记录进行WHOIS查询,我们发现该域名最初由德国的Andre Krumb所注册。

尽管摸清了这层关系,但我仍然找不到Krumb与“Gamb”(pr0gramm当前管理员的昵称)之间的联系。但在网上利用“Gamb”这一昵称搜索各类论坛帐户时,我有了新的发现。

其中一个站点为ameisenforum点de,这一论坛专门聚集喜爱蚂蚁农场的用户。刚开始我觉得这实在相关太远,所以打算将其忽略。然而,接下来我发现用于注册phpeditor点de的邮件地址也被用于注册了另一个相当不寻常的域名:antsonline点de。

在与KrebsOnSecurity进行了多次邮件往来后,Krumb承认他就是pr0gramm的管理员(同时也是之前提到的Suntainment SL公司的首席技术官),但他坚称他与pr0gramm都与Coinhive事件无关。

Krumb反复强调着一些我根本无法相信的事实——Coinhive完全是一个人的杰作,即int13h。这位pr0gramm用户一手创建了Coinhive的采矿代码。

Krumb在邮件当中拒绝分享与int13h相关的任何信息,仅表示“Coinhive与Suntainment或者该公司的任何雇员没有任何从属关系。这些人与你所追踪的事件无关,他们只是偶尔以Suntainment雇员身份工作的自由职业者。”

COINHIVE又换了种说法

就在与Fuerstberger与Krumb先生进行沟通后不久,我又收到了Coinhive方面发来的邮件。

Coinhive方面写道,“有些参与pr0gramm论坛的人与我们取得联系,表示他们正被你勒索。他们希望以匿名方式管理pr0gramm,因为管理员与版主都遇到过网络暴力的骚扰。我认为你可能与此事有关。你掌握着他们的信息,并有可能希望借此施以勒索。我们赞赏你的追查效率,但我们认为你的动机非常可疑。”

Coinhive还以一种相当戏剧化的方式提到了我与Krumb方面的沟通内容,我在其中提到自己正在努力追寻更多与int13h以及任何与Coinhive有所关联的人士的信息。

Coinhive指出,“我们希望正次强调,Coinhive目前的形式与pr0gramm及其所有者无关。我们在pr0gramm上对采矿程序进行了‘理论测试’,这单纯只是因为他们拥有一个能够以开放心态执行测试的社区,仅此而已。”

在被问及前一份声明的作者——此人提到Coinhive“这套平台已经拥有11年的运行历史”(这与pr0gramm论坛的上线时间一致)——时,Coinhive重申其修改捕捞声明:这只是为了方便而采取的测试决定,Coinhive与pr0gramm毫无关联。

今年3月22日,Coinhive方面向我发送了一封后续邮件,表示为了回应我的询问内容,他们咨询了其法务团队,并决定在网站上添加一些联系人信息。

Coinhive于3月22日在其网站上发布的,用于回应我方询问的“法律信息”。

此外,我们可以在coinhive点com/legal当中看到,其列出了位于德国凯泽斯劳滕的一家名为Badges2Go UG的公司。商业记录显示,Badges2Go是一家有限责任公司,成立于2017年4月,由来自法兰克福的Sylvia Klein负责领导。Klein的领英资料显示,她曾在德国多家企业担任CEO,其中包括一家名为Blockchain Future的公司。

Klein在与KrebsOnSecurity的即时聊天中表示,“我建立Badges2Go的初衷在于为具有发展前景的Web与移动应用提供孵化器项目支持。Coinhive正是其中之一,现在我们正在检查其发展潜力并确定下一步的服务专业化转型方向。”

源自MATTHIAS MOENCH博士的奇怪故事

关于之前发布的思维导图,其网站注册数据当中还隐含着另一个令人不安的故事。如前所述,许多与pr0gramm论坛管理员相关的域名,最初其实是由Matthias Moench博士注册的。

在2018年1月首次开始这项研究时,我猜想Moench先生几乎肯定是个用于迷惑研究人员的假名。但事实证明,Moench博士确有其人——而且其生平经历相当令人胆寒。据德国《世界报》2014年的报道,Moench出生于德国一个富裕的企业家家庭,并曾于1988年19岁时因雇用一名土耳其男子谋杀其父母而被定罪。《世界报》提到,Moench雇用一位土耳其人手持砍刀杀死了他的父母和家中的宠物狗。事后Moench解释了自己的行为,表示自己只是不满于其父母在他18岁生日时只给其买了一辆二手车——而非他一直想要的法拉利。

Matthias Moench于1989年见报。图片来源:《世界报》。

Moench最终被判处九年有限徒刑,并在青少年拘留所内度过五年后出狱。在得到释放后,Moench声称他发现宗教正是解放他灵魂的力量,并希望成为一名牧师。

然而,Moench后来放弃了成为牧师的想法,转而当上了一名垃圾邮件发送者。多年来,他一直兢兢业业地通过邮件兜售治疗勃起功能障碍的药物。根据报道,他的各类垃圾邮件传播活动至少已经为其赚取到至少2150万欧元。

2015年,Moench先生再次被捕并接受审判。他和其他几名同伙被控告犯有欺诈及与毒品相关的罪名。Moench被判处六年有期徒刑。德国检察官表示,Moench预计将在今年晚些时候从监狱中获释。

将pr0gramm管理员与Moench先生联系起来确实极具戏剧张力,但二者之间似乎并不存在确切可信的联系。2006年发布的一篇详尽到令人难以置信的博文试图确定Matthias Moench的真实身份,并发现其曾经注册过数以万计域名。此外,Moench本人曾经在多个德国及捷克共和国论坛上公布自己的姓名及邮寄地址,表示自己拥有大把域名资源可供希望隐藏自己身份的垃圾邮件发送者或骗子自由使用。很明显,很多人都接受了他的提议。

更新:下午4:14(美国东部时间): 就在这篇文章发布后不久,pr0gramm点com创始人Dominic Szaablewski的个人博客phoboslab点org上发表了一条更新。其中,Szablewski声称其为Coinhive事件负责。不过其具体操纵者是谁,目前仍然存疑。Szablewski公布的新内容如下:

“Brian Krebs最近发布了一篇关于Coinhive的文章,我希望就其中一些情况作出澄清。“

“2007年,我为我的朋友和我本人建立起一套简单的图片版块——即pr0gramm。多年以来,该版块已经发展壮大,并开始引发诸多麻烦。在2016年遭遇网络暴力的侵扰甚至是死亡威胁之后,我决定退出pr0gramm论坛并将其出售。目前我仍然在幕后处理部分pr0gramm工作,包括偶尔帮助解决技术问题,但具体运营工作已经不再由我负责。”

“去年年中,我有了一个想法,希望尝试能否利用WebAssembly建立一款加密货币采矿器——这主要是了于实验性目的,看看其是否能够切实起效。当然,我需要一些用户对其进行测试,而pr0gramm的拥有者非常慷慨地允许我进行尝试——但其并没有参与实际开发。我很快在pr0gramm点com上建立了一个独立的页面,用户可以通过采矿获得高级账户。事实证明,效果非常显著。”

“因此,我决定将这个想法扩展到自己的平台上。几个月之后,我发起了Coinhive,并很快意识到庞大的项目规模根本不是我一个人所能就会的。因此,我正在寻找一位能够接手的人选。”

“我找到一家对此抱有兴趣的新公司,他们接管了Coinhive,目前正在对其进行大规模改革。”

本文翻译自KrebsOnSecurity

声明:本文来自士冗科技,版权归作者所有。文章内容仅代表作者独立观点,不代表士冗科技立场,转载目的在于传递更多信息。如有侵权,请联系 service@expshell.com。