Mirai(日语:ミライ[1],中文直译“未来[2][3])是一款恶意软件,它可以使运行Linux的计算系统成为被远程操控的“僵尸”,以达到通过僵尸网络进行大规模网络攻击的目的。Mirai的主要感染对象是可访问网络的消费级电子设备,例如网络监控摄像机家庭路由器[4]。Mirai构建的僵尸网络已经参与了几次影响广泛的大型分布式拒绝服务攻击(DDoS攻击),包括2016年9月20日针对计算机安全撰稿人布莱恩·克莱布斯个人网站的攻击、对法国网站托管商OVH的攻击[5],以及2016年10月Dyn公司网络攻击事件[6][7][8]。当前已经确认上述攻击全部由Mirai作者构建的僵尸网络发起的攻击。

Mirai的源代码已经以开源的形式发布至黑客论坛[9],其中的技术也已被其他一些恶意软件采用[10]

根据一份泄露的软件作者之聊天记录,Mirai一名来自漫画改编的2011年日本动画未来日记[11];作者所用网名(意为“安娜前辈”)则可能与日本轻小说《没有黄段子的无聊世界》中的角色——安娜·锦之宫有关。[12][13]

行为

受Mirai感染的设备会持续地在互联网上扫描物联网设备的IP地址。Mirai包含一张IP白名单表,其中包括专用网络的私有IP地址以及分配给美国邮政署美国国防部的IP地址,使用这些地址的设备将不会受Mirai感染。[14]

在扫描到IP地址之后,Mirai会通过超过60种常用默认用户名和密码辨别出易受攻击的设备,然后登录这些设备以注入Mirai软件[15][5][16]。受感染的设备会继续正常工作,不过偶尔会出现卡顿,而且带宽消耗会增大[15]。设备在重新启动之前将一直保持受感染的状态。设备重启之后,除非用户立刻修改密码,几分钟之内设备很快会被再次感染[15]。Mirai还会在成功感染后删除设备上的同类恶意软件,并屏蔽用于远程管理的端口[17]

互联网上有成千上万的物联网设备使用默认设置,这些设备都很容易受到感染。受感染的设备会监视一台下发命令与控制的服务器,该服务器将指示发起攻击的目标。[15]

在DDoS攻击中的使用

2016年9月20日,攻击者通过Mirai和BASHLITE[18]Krebs on Security网站发动了DDoS攻击,攻击流量达到了620 Gbps[19]Ars Technica报道称在对法国网站托管商OVH的攻击中发现了1 Tbps的攻击流量[5]

2016年10月21日,Dyn公司提供的DNS服务遭到了数次通过Mirai发起的大型DDoS攻击,牵涉到的受感染物联网设备数量众多。这次攻击使得数个高访问量的网站无法正常打开,其中包括GitHubTwitterRedditNetflixAirbnb[20]。Mirai和这次攻击的关联最初是由Level 3 通信在报告中指出的[18][21]

深度学习方面的安全专家发现,Mirai构建的僵尸网络数量在Dyn攻击事件发生前后有稳定的上升。[22]

Mirai亦被用于2016年11月针对利比里亚互联网基础设施的攻击[23][24][25]。计算机安全专家Kevin Beaumont认为这次攻击的发动者与Dyn攻击相同[23]

其他事件

2016年11月末,90万台德国电信用户的路由器因Mirai变种利用TR-064协议的一次失败尝试而崩溃,这些路由器由智易科技生产,受影响用户的互联网访问因此出现异常[26][27]。尽管另一家名为TalkTalk的运营商随后更新了他们的路由器,但仍有TalkTalk路由器感染上Mirai的另一支新变种[28]

作者

Krebs on Security网站在2017年1月发布报告,认为Mirai的作者“Anna-senpai”真名为Paras Jha,是罗格斯大学学生和一家DDoS防御服务提供商总裁[11][29],但后者否认这一指控的真实性[30]美国联邦调查局之后对其进行了盘问[31]

2017年12月10日美国联邦调查局已经公布调查结果,而在此之前Mirai的作者已经被捕。该作者确实就是此前Krebs on Security研究人员认为的Paras Jha[32]

Mirai 通过弱密码爆破摄像头 形成僵尸网络——尼玛值得深思的是作者居然是做安全研究的的更多相关文章

  1. [原创]内网SSH密码爆破工具sshcrack(配合Cscan批量弱口令检测)

    0x000 前言 sshcrack是一个命令行下的SSH密码爆破工具,适用于内渗中SSH密码检测 当然也可用于外网SSH密码爆破,支持Windows/Linux,其它系统未测.Tip1 0x001 目 ...

  2. IoT设备上的恶意软件——通过漏洞、弱密码渗透

    2018年,是 IoT 高速发展的一年,从空调到电灯,从打印机到智能电视,从路由器到监控摄像头统统都开始上网.随着5G网络的发展,我们身边的 IoT 设备会越来越多.与此同时,IoT 的安全问题也慢慢 ...

  3. Python Telnet弱口令爆破脚本及遇到的错误与问题

    写得时候遇到了一个很大的问题,就是我在发送用户名,接受用户名就会一直卡住.然后等了好久后提示 recv ‘\r\nSession timed out.\r\n\r\nTelnet Server has ...

  4. python ssh弱口令爆破多线程脚本及遇到的一些错误与问题

    练习写了个SSH弱口令爆破多线程脚本,遇到的问题 1.一开始想import pexpect 中的pxssh 然而却一直该有错误, ImportError: cannot import name spa ...

  5. python 写的http后台弱口令爆破工具

    今天来弄一个后台破解的Python小程序,哈哈,直接上代码吧,都有注释~~ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...

  6. Burp_用户名密码爆破

    burp 全称 Burp Suite, 是用于攻击web 应用程序的集成平台.它包含了许多工具,可以抓包可以爆破也可以扫描漏洞. 主要组件如下: Proxy--是一个拦截HTTP/S的代理服务器,作为 ...

  7. 数据库密码爆破HexorBase

    数据库密码爆破HexorBase   数据库服务是服务器上最常见的一类服务.由于数据库保存大量的敏感信息,所以它的安全非常重要.测试数据库服务安全的重要方式,就是检查口令的强壮度.   Kali Li ...

  8. 基于Python+协程+多进程的通用弱密码扫描器

    听说不想扯淡的程序猿,不是一只好猿.所以今天来扯扯淡,不贴代码,只讲设计思想. 0x00 起 - 初始设计 我们的目标是设计一枚通用的弱密码扫描器,基本功能是针对不同类型的弱密码,可方便的扩展,比如添 ...

  9. SVN弱密码扫描(Python)

    寂寞如雪的用脑过度,所以来写个博客分享一下.#虽然上一篇博客我还没写完 SVN的弱密码,看起来很复杂,但实际上很简单啊= =虽然不像pymssql/mymssql这种,Python提供了很好用的包,但 ...

随机推荐

  1. IIS 安装 .net core 绑定为 https 使用SSL证书

    前提条件: 自己服务器(Windows Server 2016)运行 dotnet .\Web****.dll 服务是可以使用http访问的 但由于实际情况必须使用https 思想历程,但未用: 1. ...

  2. 【Docker】涨姿势,深入了解Dockerfile 中的 COPY 与 ADD 命令

    参考资料:https://www.cnblogs.com/sparkdev/p/9573248.html Dockerfile 中提供了两个非常相似的命令 COPY 和 ADD,本文尝试解释这两个命令 ...

  3. 30分钟用 Laravel 实现一个博客

    介绍 Laravel 是一款 MVC架构. 目前最流行的 PHP框架. Laravel的优点在于: 丰富的composer类库支持, 优雅的代码, 未来的主流框架(目前市场占有率最高的框架) Lara ...

  4. spring cloud 服务容错保护 - Hystrix

    1.为什么要断路器 在微服务架构中通常会涉及到多个服务间调用,处于调用链路底层的基础服务故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供 ...

  5. 25个强大的CSS代码,据说这些是开发者经常遇到比较棘手的代码

    这些代码是经常用到的,比方说一些特殊的效果,圆角边框,CSS透明度,梯形环绕,CSS小三角等,希望对你有用 1简单又好的 Blockquote 样式 CSS代码如下 blockquote { back ...

  6. SpringApplication常见用法说明

    启动方式 方式1:在main方法中执行SpringApplication.run()这种方式来启动我们的工程 // 方式一 @SpringBootApplication public class Ap ...

  7. 递推 + 高精度 --- Tiling

    Tiling Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7264   Accepted: 3528 Descriptio ...

  8. C++随机数笔记

    版权声明:本文为CSDN博主「candyliuxj」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/can ...

  9. c++中如何判断sqlite表是否存在

    在项目中遇到需要判断sqlite数据库中某个表是否存在,上网搜索一些资料后,解决了问题,如下: 首先,在每个sqlite数据库中,都有一个名为sqlite_master的表,它定义了数据库的模式,它的 ...

  10. 部署elasticsearch(三节点)集群+filebeat+kibana

    用途 ▷ 通过各个beat实时收集日志.传输至elasticsearch集群 ▷ 通过kibana展示日志 实验架构 名称:IP地址:CPU:内存 kibana&cerebro:192.168 ...