快捷搜索:  汽车  科技

比特币盗取犯法吗:前车之鉴 盗取比特币的黑客技术

比特币盗取犯法吗:前车之鉴 盗取比特币的黑客技术我们使用渗透测试框架Metasploit Framework来制作宏病毒,实现木马功能,在内网中进行渗透测试。与自主编写代码相比,在此工具下宏病毒的制作变得十分便捷。(二)宏病毒攻击实践以Word宏病毒为例,Word宏病毒一般都首先隐藏在一个指定的Word文档中,一旦打开了这个Word文档,宏病毒就被执行,它要做的第一件事就是将自己拷贝到全局宏的区域,使得所有打开的文档都可以使用这个宏;当Word退出的时候,全局宏将被储存在某个全局的模板文档(.dot文件)中,这个文件的名字通常是“Normal.dot”,即Normal模板;如果全局宏模板被感染,则Word再启动时将自动载入宏病毒并自动执行。在一般情况下,我们可通过将Office文档中宏的安全性设置调高以便不运行宏来避免感染风险,但部分行业必须使用宏,这使得宏的感染风险依然存在。此外,黑客还可能会提示用户“某文档由较高版本的Office所

以上程序还可进一步做成图形化界面。由上图可知,我们获取了wallet.dat文件在目标中的路径并将其拷贝到了自己的主机中。随后可利用木马键盘记录和截图的功能来获取钱包密码,这样就成功完成了一次盗取比特币的木马攻击。

三、宏病毒

(一)宏病毒简介[8]-[9]

宏是若干个单独命令的组合,能够完成某项特定的任务。这是软件设计者为了避免一再地重复相同的动作而设计出来的一种工具,它使用宏语言——VBA语言把常用的动作写成宏,利用宏自动运行来完成任务。微软在Office系列软件中开发了对宏的支持,在方便用户的同时,也给攻击者带来了较大的便利,使Office系列文档变成了宏病毒攻击的最大目标。

宏病毒通常会寄存在办公文档或模板之中,一旦带有宏病毒的文档被打开, 就会触发宏病毒,将自身复制到计算机上,并停留在文档模板上。至此,该电脑上自动保存的文档会被感染,当用户在其他电脑上打开了这些被感染的文档后, 宏病毒又会将自身转移到他的计算机上。

以Word宏病毒为例,Word宏病毒一般都首先隐藏在一个指定的Word文档中,一旦打开了这个Word文档,宏病毒就被执行,它要做的第一件事就是将自己拷贝到全局宏的区域,使得所有打开的文档都可以使用这个宏;当Word退出的时候,全局宏将被储存在某个全局的模板文档(.dot文件)中,这个文件的名字通常是“Normal.dot”,即Normal模板;如果全局宏模板被感染,则Word再启动时将自动载入宏病毒并自动执行。

在一般情况下,我们可通过将Office文档中宏的安全性设置调高以便不运行宏来避免感染风险,但部分行业必须使用宏,这使得宏的感染风险依然存在。此外,黑客还可能会提示用户“某文档由较高版本的Office所创建,为了显示内容,必须启用宏”或“某文档受到保护,为了显示图片须启用宏”等来欺骗用户开启宏,从而达到感染用户电脑的目的。

宏病毒的特征包括传播迅速、制作变种方便、破坏力大和多平台交叉感染。以破坏力大为例,宏病毒能够获得很多系统级底层调用的权限,如调用Windows API、DLL及DOS系统命令等。这些底层接口均可能对系统造成巨大威胁,而Office应用程序在指令安全性和完整性上的检测能力较弱,使得破坏系统的指令很容易就能够得到执行,从而对系统本身直接产生危害。

(二)宏病毒攻击实践

我们使用渗透测试框架Metasploit Framework来制作宏病毒,实现木马功能,在内网中进行渗透测试。与自主编写代码相比,在此工具下宏病毒的制作变得十分便捷。

在监听端,以制作电子表格Excel的宏病毒为例,在Metasploit Framework中,我们只需一句代码即可自动生成所有必要的VBA代码:

比特币盗取犯法吗:前车之鉴  盗取比特币的黑客技术(1)

如上图所示,这些VBA代码在生成的new.vba文件之中。将这些代码复制到电子表格的Visual Basic编辑器中,并将宏名称取为“Auto_Open”,以便启动电子表格时自动运行。这样,此电子表格的宏只要被运行就将感染目标电脑。另外,还可以在此宏中添加一些其他代码以实现特定的任务,例如创建一个计划任务,每隔固定时间执行一次(非必要),并添加一个提示框。随后,我们将该电子表格进行传播。

在目标电脑端的测试中,若用户点击了此电子表格,该提示框便提示木马已成功运行或暗示用户已被感染(实际运用中不加此项):

比特币盗取犯法吗:前车之鉴  盗取比特币的黑客技术(2)

此时,在监听端的Metasploit Framework下执行msfconsole后,发现已连接上目标电脑:

比特币盗取犯法吗:前车之鉴  盗取比特币的黑客技术(3)

随后,我们便可继续在监听端录入简单的指令,在监听端实现将其对目标电脑的权限提升至系统权限、列出目标电脑的系统进程、截获音频、截屏、摄像头拍照和拍视频、记录键盘击键过程、开启远程桌面等功能。

四、针对Web服务器的DDoS攻击

DDoS攻击似乎与直接盗取比特币的关系不大,但其在数字货币领域会偶尔出现,故值得进行简要的阐述。2020年3月13日,BitMEX交易所就分别在北京时间10:16和20:56遭受了两次DDoS攻击。

(一)针对Web服务器的DDoS攻击简介[10]- [11]

DDoS攻击是指攻击者采用分布式攻击平台对一个或多个制定目标进行拒绝服务攻击,致使受到攻击的Web服务器或者网络无可用资源提供服务。

黑客们为了建立僵尸网络通常使用网络木马和网络蠕虫两种方法,网络木马通过恶意捆绑或程序漏洞等进行扩散,网络蠕虫通过系统漏洞、欺诈等方式传播。当计算机感染僵尸程序后,便在主控端和被感染计算机之间建立一个可一对多控制的网络——僵尸网络,僵尸网络的拥有者便可远程控制网络内的所有主机对目标服务器或目标主机发动应用层DDoS攻击。

为了达到既定的攻击伤害,僵尸网络建成之后,攻击者需对攻击目标进行探测,确定目标开放的服务和站点,即决定使用何种攻击流量。对于Web服务器的DDoS攻击往往需要探测更多信息数据,例如,需要探测Web服务器上哪些网页包含大内存的图片、哪些网页包含数据库动态查询功能。这些网页被攻击者所利用,会对Web服务器造成巨大威胁,通过不断地请求这些网页中资源消耗较大的节点,无形中增加了Web服务器资源消耗的速度,提高了攻击效率。DDoS 攻击开始时,僵尸主机将按照攻击者规划的攻击程序运行,向受害目标发送大量具有攻击行为的请求,因攻击行为皆为模仿正常用户访问行为所设计的,这造成目标服务器难以区分合法请求与非法请求,最终达到受害目标无可用服务资源提供服务的目的。

按照BitMEX交易所的博客所述,其在今年3月13日受到了两次相同的DDoS攻击,僵尸网络通过一个精心设计的聊天室功能查询使得该平台不堪重负。

据称,聊天室有七种语言,每种语言的简单频道ID为1到7,首先是英语,最后两个是西班牙语和法语。BitMEX相应的接口允许按频道ID来查询最后的100行。考虑到表的大小(大约5000万行),执行反向顺序扫描,然后进行筛选实际上会更快。查询优化程序对所有语言执行反向顺序扫描,直到最终找到要返回的100行。就西班牙语而言,很久没人聊天了,以至于扫描了849748行才能找到足够符合条件的行数。这种昂贵的顺序扫描快速地分配和释放大量内存,溢出到磁盘上,并通过系统调用迅速使得系统不堪重负。在攻击发生时,数据库只花了0.6%的时间处理请求,其余99.4%的时间用于IO等待,这便导致所有查询都非常慢。

虽然与用户相关的数据(电子邮件、活动、聊天室、登录事件等)与交易数据(仓位、交易、保证金等)是分开的,但是聊天室与用户有关,访问令牌和API密钥也是如此。这意味着这种资源消耗引发了位于交易引擎前面的身份验证和访问控制层的严重问题。交易引擎运行正常,市场数据、存款和提现也没有中断,但在这段时间内,请求几乎不可能到达引擎,导致服务质量严重下降。

这对于已经登录网站的用户,会发现攻击前原本因行情大幅波动而波涛汹涌的盘口,瞬间成为了平静的湖面,偶尔有小鱼跳动引发的涟漪,而当用户退出后就再也无法登录成功。

没有一个系统能够抵御DDoS的干扰,而有许多技术可以用来减少或消除影响。BitMEX称其已经解决了潜在的问题,并一直在昼夜不停地引入额外的检测和响应层,他们也将进行其他努力,以提高负载下的自动化扩展性和进一步隔离关键系统。BitMEX强调,作为上述持续监察和缓解措施的一部分,其安全团队正在审查系统中历史最悠久且因此最脆弱的部分,以简化、解耦、提高性能和隔离系统。同时,其团队正在开发关于宕机、市场暂停、市场恢复和通信的面向公众的协议,在将来其服务出现任何中断的时候,为其用户提供更大的透明度。

(二)DDoS攻击实践

由于我们用于攻击的主机数量较少,严格地讲,我们下面进行的攻击实践应属于DoS攻击(拒绝服务攻击),只有当大量的主机参与攻击时才能称其为DDoS攻击(分布式拒绝服务攻击)。

通过编写程序,我们使用一些主机不断发送大量的数据包到某台自有服务器,希望造成该服务器资源耗尽,以至于宕机崩溃。不过由于发动攻击的主机数量较少,不易达成目标。此类攻击的程序示例在网络上比较多,这里就不再进行更详细的阐述和展示了。

我们也可以使用相关工具来开展攻击——下载pyloris模块来进行DoS中的Slowloris攻击。

在Slowloris攻击中,即使只使用一台PC也有可能使Web服务器陷入瘫痪。分析攻击原因时,通常使用Web服务器的日志,由于头文件分析结束时才记录日志,所以Slowloris攻击不会在日志文件中留下痕迹,这样就很难对其进行探测。正常的HTTP头以/r/n/r/n结束,Web服务器通过查找/r/n/r/n判断HTTP头结束,然后进行分析,处理服务请求。Slowloris攻击使用的HTTP头只以/r/n结尾,所以Web服务器认为HTTP头尚未结束,就无法对HTTP头进行分析,从而继续保持连接。当服务器连接数达到最大值时便无法继续处理新的请求,继而拒绝对外提供服务[12]。

从官网下载的pyloris模块的版本号是3.2,适用于Python 2。我们将其源码进行修改,使其能在Python 3中运行,然后在运行界面中填入要攻击的某自有测试网站的地址和端口:

比特币盗取犯法吗:前车之鉴  盗取比特币的黑客技术(4)

点击“Launch”按钮便可开始攻击。如下图所示,运行界面分为两个区域,Status区域用于显示当前执行的攻击状态,其中Attacks代表当前使用的连接个数,Threads表示目前为止创建的线程数;Log区域显示用于发送攻击的程序日志:

比特币盗取犯法吗:前车之鉴  盗取比特币的黑客技术(5)

猜您喜欢: