Mozi僵尸网络(P2P僵尸网络Mozi)

news2024/11/28 7:09:07

Mozi僵尸网络概述

Mozi僵尸网络是于2019年底首次出现在针对路由器和DVR 的攻击场景上的一种P2P僵尸网络。主要攻击物联网(IoT)设备,包括网件、D-Link和华为等路由设备。它本质上是Mirai的变种,但也包含Gafgyt和IoT Reaper的部分代码,用于进行DDoS攻击、数据窃取、垃圾邮件发送以及恶意命令执行和传播。

Mozi僵尸网络特征

僵尸网络”Mozi“
Mozi的代码与Mirai及其变体重叠,并复用Gafgy代码
Mozi是p2p网络,各台计算机处于对等的地位,有相同的功能,无主从之分,并使用Telnet弱口令和漏洞利用传播
Mozi使用签名验证识别同伙;主动上报新感染节点信息给Mozi botnet master
Mozi使用自己扩展的DHT协议构建p2p网络;使用基于命令注入(CMDi)攻击,利用了loT设备的配置错误;Mozi没有将竞争对手从被侵入的系统中删除,而是抑制对手

 Mozi.m样本分析 

样本信息:

SHA256:bba18438991935a5fb91c8f315d08792c2326b2ce19f2be117f7dab984c47bdf

Magic

7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00
类别ELF32
数据2 补码,大端序 (big endian)
Version1 (current)
OS/ABIUNIX - System V
ABI 版本0
类型EXEC (可执行文件)
系统架构MIPS R3000
版本0x1
入口点地址0x41fb58
程序头起点52 (bytes into file)

阻断22、2323端口通信

在成功感染目标设备之后,Mozi为进行自我保护,会通过防火墙阻断SSH、Telnet端口,以防止被其他僵尸网络入侵:

放行自身使用端口 

根据感染的设备,修改防火墙策略放行不同的端口来保证自身的通信:

Kill相关进程 

 同时读取/proc/net/tcp和/proc/net/raw来查找并KILL掉使用1536和5888端口的进程:

检测Watchdog 

检查被感染的设备上是否存在Watchdog来避免重启:

更改进程名 

检查被感染的设备上是否存在/usr/bin/python,如果存在,则将进程名称更改为sshd,不存在则更改为dropbear,以此来迷惑被攻击者。

 内置的节点 

分析过程中发现Mozi僵尸网络复用了部分Gafgyt家族僵尸网络的代码,其中内嵌了8个硬编码的公共节点信息,用于加入P2P网络,如下:

配置文件 

在样本中还硬编码了一个使用XOR加密的配置文件及密钥:

通信标识 

使用硬编码的秘钥解密后得到如下配置数据: [ss]bot[/ss][hp]88888888[/hp][count]http://ia.51.la/go1?id = 19894027&pu =http%3a%2f%2fbaidu.com/[idp][/count]。

新的Mozi节点向 http://ia.51.la/发送HTTP请求,来注册自身。

在通信流量中通过 1:v4:JBls来标记是否为Mozi节点发起的通信。

 

攻击的设备类型 

所攻击的设备类型包括:GPON光纤设备、NetGear路由设备、华为HG532交换机系列、D-Link路由设备、使用Realtek SDK的设备、Vacron监控摄像机、斐讯路由器、 USR-G806 4G工业无线路由器等:

部分弱口令密码 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154563.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot mybatis mysql快速开始(详细入门操作)(二)

七、创建service类。要注意相应的注解service,autowired不能丢,不然系统识别不到这些组件。里面写对应的mapper方法。Service public class SplineService { private static final Logger log LoggerFactory.getLogger(SplineService.class); Autowired private Sp…

国产音频ADC芯片的应用以及选型

想要让模拟信号和数字信号顺利“交往”,就需要一座像“鹊桥”一样的中介,将两种不同的语言转变成统一的语言,消除无语言障碍。这座鹊桥就是转换器芯片,也就是ADC芯片。ADC芯片的全称是Analog-to-Digital Converter, 即模拟数字转换…

设计模式_创建型模式 -《单例模式》

设计模式_创建型模式 -《单例模式》 笔记整理自 黑马程序员Java设计模式详解, 23种Java设计模式(图解框架源码分析实战) 创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是“将对象的创建与使用分离”。 这样…

广州蓝景分享—Web前端开发培训机构如何选择

首先Web前端培训机构如何选择?相信很多人都不是很清楚,就是听别人推荐哪家好哪家不好,没有合理性的去实地了解,看看是否符合自己。所以,最好的方法就是自己在网上可以找一些判断web前端培训机构的条件,然后…

nacos原理和实战问题解决方案

nacos原理和集群搭建实战,在开始之前、我们先要知道nacos的官网并熟悉其基本特性 官网介绍 一、原理: 1、多种注册中心对比 2、nacos作为注册中心的核心功能 2.1、服务注册: Nacos Client会通过发送REST请求的方式向Nacos Server注册自己…

ArcGIS基础实验操作100例--实验82聚集点空间特征分析

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书 实验平台:ArcGIS 10.6 实验数据:请访问实验1(传送门) 高级编辑篇--实验82 聚集点空间特征分析 目录 一、实验背景 二、实验数据 三、实验步骤 (…

Leetcode.60 排列序列

题目链接 Leetcode.60 排列序列 题目描述 给出集合 [1,2,3,...,n],其所有元素共有 n!n!n! 种排列。 按大小顺序列出所有排列情况,并一一标记,当 n3n 3n3 时, 所有排列如下: "123" "132" "213" …

二、TTY子系统框架

个人主页:董哥聊技术我是董哥,嵌入式领域新星创作者创作理念:专注分享高质量嵌入式文章,让大家读有所得!文章目录1、TTY子系统框架分析2、TTY数据处理流程3、驱动的目录结构及核心文件4、TTY在Linux下的分布1、TTY子系…

微信小程序使用

微信开发介绍微信公众号的二次开发,主要点后端配置交互,前端负责h5页面微信小程序和微信小游戏的开发,必须要依托于微信,方便宣传开放平台,公众平台小程序介绍2016年出来的,取缔app应用。传统的App应用开发…

Vue中动态展示数据的字典项

问题描述 今天在写自己网站的时候,遇到一个问题,不知道各位前端初学者有没有遇到过这个问题 如图所示:我通过接口查询到一些信息,有两个属性是枚举数据(魔法值) 我们称这种数据为字典项,因为开发中一般称0&#xff…

AWS Markeplace 上的 DolphinDB MGR 快速上手

1. AWS 上的 DolphinDB MGR 简介 DolphinDB MGR 是部署于 Kubernetes 上的 DolphinDB 集群自动运维系统,提供包括部署、升级、扩缩容、配置变更的 DolphinDB 全生命周期管理。通过 DolphinDB MGR,DolphinDB 可以无缝运行在公有云或私有部署的 Kubernete…

openEuler RISC-V 的 Firefox 性能大升级,最高 40 倍性能提升

RISC-V SIG 择日即将发布 openEuler RISC-V 22.03 V2 版本镜像。本次发版会提供带有 SpiderMonkey JIT 编译支持的 Firefox 最新版本和带有 LLVMpipe 优化的 Mesa 最新版本安装源供使用者选装测试,预期图形界面使用性能会获得可观优化。 新版本的 Firefox 开启 JIT…

5.3、UDP 和 TCP 的对比

在使用 TCP/IP 体系结构的网络通信中,这两个协议的使用频率仅次于网际层的 IP 协议 TCP/IP 体系结构应用层中的某些协议需要使用运输层的 TCP 提供的服务 而另一些协议需要使用运输层的 UDP 提供的服务 1、UCP(无连接) & TCP(面向连接) 1.1、UDP 如下所示&am…

小程序:会议OA项目-其它页面

目录 一、tabs组件及会议管理布局 自定义tabs组件 跟着官网来感受一下 会议管理的布局 二、个人中心布局 一、tabs组件及会议管理布局 自定义tabs组件 文档参考:自定义组件 | 微信开放文档 跟着官网来感受一下 先建一个文件夹名为components,里面再建一个tabs的…

【C语言进阶(NEW)】六、文件操作(一)|文件|文件的打开和关闭|文件的顺序读写|文件读取结束的判定

目录 一、文件 1.1 什么是文件 1.1.1 程序文件 1.1.2 数据文件 1.2 为什么使用文件 1.3 文件名 二、文件的打开和关闭 2.1 文件指针 2.2 文件的打开和关闭 三、文件的顺序读写 3.1 fgetc 和 fputc(字符输入输出函数) 3.2 fgets 和 fputs&am…

20行原生JS代码手写ElementUI表格组件

又是许久没有写博客了,这几年的疫情,总是居家,时间久了,慢慢的总会想很多。现在越发觉得想做的事情一定要尽早去做,不然总说等下一次,很多时候,就没有下一次了。 今天给大家分享一下如何用原生…

从0到1完成一个Vue后台管理项目(十七、使用Echarts:柱状图、折线图)

往期 从0到1完成一个Vue后台管理项目(一、创建项目) 从0到1完成一个Vue后台管理项目(二、使用element-ui) 从0到1完成一个Vue后台管理项目(三、使用SCSS/LESS,安装图标库) 从0到1完成一个Vu…

DB性能跟不上,加缓存就够了?

服务端软件开发时,通常会把数据存储在DB。而服务端系统遇到的第一个性能瓶颈,往往发生在访问DB时。 这时大部分开发会拿出“缓存”,通过使用Redis在DB前提供一层缓存数据,缓解DB压力,提升服务端性能。 在数据库前添加…

nohup后台运行,进程查看与终止(ubuntu)

1.nohup用途:不挂断地运行命令。语法:nohup Command [ Arg … ] [ & ]无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohu…

threejs 学习一

前提 threejs官网:https://threejs.org/ 由于官网访问慢,可以github下载压缩包解压后本地启动 github地址:https://github.com/mrdoob/three.js/ 下载好后解压 安装依赖 npm install 启动:npm start 目录介绍: …