僵尸网络的威胁值得关注

僵尸网络(botnet)是指一组受到恶意软件感染并遭到恶意用户控制的计算机。术语“僵尸网络”由“机器人(bot)”和“网络(network)”两个词组合而成,每台受感染设备被称为“机器人”。僵尸网络可用于完成非法或恶意的任务,包括发送垃圾邮件、窃取数据、投放勒索软件、欺诈性点击广告或发动分布式拒绝服务(DDoS)攻击。

虽然某些恶意软件(如勒索软件)会对设备所有者产生直接影响,但 DDoS 僵尸网络恶意软件的可见性可能各不相同;一些恶意软件用于完全控制设备,另一些恶意软件则以后台进程的形式偷偷运行,同时默默等待攻击者或“僵尸牧人”发出指令。

自我传播僵尸网络可通过各种不同渠道招募更多机器人。感染路径包括利用网站漏洞、特洛伊木马恶意软件及破解弱身份验证来获得远程访问权限。获得访问权限后,所有这些感染方法都将在目标设备上安装恶意软件,以便僵尸网络操控者进行远程控制。一旦设备受到感染,可能尝试通过向周边网络招募其他硬件设备,以自行传播僵尸网络恶意软件。

虽然无法确定特定僵尸网络中机器人的确切数量,但根据估算,复杂僵尸网络的机器人总数从几千一直延伸到百万以上。

僵尸网络因为什么原因而诞生?

使用僵尸网络的原因多种多样,包括激进主义和国家赞助的破坏活动,许多攻击纯粹是为了牟利。在线招募僵尸网络服务所需的费用相对较低;特别是,对比可能造成的损失,价格优势尤为显著。另外,创建僵尸网络的门槛也足够低,因而成为某些软件开发人员的牟利手段,在监管和执法力度有限的地区应用尤其广泛。综合以上,提供招募出租的在线服务迅速风靡全球。

如何控制僵尸网络?

僵尸网络的核心特征是能够接收僵尸牧人(bot herder)发出的更新指令。由于能够与网络中每个机器人进行通讯,攻击者可改变攻击手段、更改目标IP 地址、终止攻击或进行其他自定义行动。僵尸网络设计各不相同,但控制结构可分为两大类:

一、客户端/服务器僵尸网络模型

客户端/服务器模型模拟传统远程工作站的工作流程,其中每台机器都连接到集中式服务器(或少数集中式服务器),以便访问信息。在这种模型中,每个机器人将连接到命令和控制中心(CnC)资源(例如 Web 域或 IRC 通道),以便接收指令。通过使用这些集中式存储库向僵尸网络传达新命令,攻击者只需修改每个僵尸网络从命令中心获取的原始资源,即可向受感染机器传达最新指令。控制僵尸网络的集中式服务器可以是攻击者自有及操控的设备,也可以是一台受感染的设备。

目前已发现大量流传甚广的集中式僵尸网络拓扑,包括:

星形网络拓扑

多服务器网络拓扑

分层网络拓扑

在以上各类客户端/服务器模型中,每个机器人均连接命令中心资源(如 Web 域或 IRC 通道)以接收指令。鉴于使用这些集中式存储库向僵尸网络传达新命令,攻击者只需从一个命令中心修改各个僵尸网络占用的原始资源,即可向受感染机器传达最新指令。

同时,利用有限数量的集中来源即可向僵尸网络发送最新指令,这种简便性成为此类机器的又一漏洞;若要移除使用集中式服务器的僵尸网络,只需中断这台服务器便可。在这一漏洞的驱使下,僵尸网络恶意软件创建者不断发展,探索出一种不易受到单一或少量故障点干扰的新模型。

二、点对点僵尸网络模型

为规避客户端/服务器模型漏洞,最近恶意用户一直使用分散式对等文件共享组件设计僵尸网络。在僵尸网络中嵌入控制结构,消除采用集中式服务器的僵尸网络的单点故障,缓解攻击的难度随之提高。P2P 机器人可以同时是客户端和命令中心,协同相邻节点传播数据。

点对点僵尸网络会维护受信任的计算机列表,僵尸网络可根据列表往来通信并更新其恶意软件。限制机器人连接的其他机器数量,使每个机器人仅对相邻设备公开,这使得跟踪和缓解难度相应增高。由于缺乏集中式命令服务器,点对点僵尸网络更容易受到僵尸网络创建者以外的其他用户的控制。为防止失控,分散式僵尸网络通常经过加密以限制访问。

如何保护设备,防止其加入僵尸网络?

1.创建安全密码:

对于很多易受攻击的设备,减少遭受僵尸网络攻击的危险,可能只需要更管理凭据,以避免使用默认用户名和密码。创建安全密码可增加暴力破解难度,创建了高度安全的密码,则暴力破解几乎不再可能。例如,感染 Mirai 恶意软件的设备将扫描 IP 地址,查找响应设备。一旦设备对 Ping 请求做出响应,机器人将尝试使用一个预设默认凭证列表登录找到的设备。如果更改了默认密码并且采用了安全密码,机器人将放弃并继续寻找更容易攻击的设备。

2.仅允许通过可信方式执行第三方代码:

如果采用手机的软件执行模式,则仅允许的应用可以运行,赋予更多控制来终止被认定为恶意的软件(包括僵尸网络)。只有管理软件(如内核)被利用才会导致设备被利用。这取决于首先具有安全内核,而大多数 IoT 设备并没有安全内核,此方法更适用于运行第三方软件的机器。

3.定期擦除/还原系统:

在过了设定的时间后还原为已知良好状态,从而删除系统收集的各种垃圾,包括僵尸网络软件。如果用作预防措施,此策略可确保即使恶意软件静默运行也会遭到丢弃。

4.实施良好的入口和出口过滤实践:

其他更高级的策略包括在网络路由器和防火墙执行过滤。安全网络设计的一个原则是分层:公共可访问资源周围的限制最小,同时对您认为敏感的内容加强安全保护。此外,对跨越边界的任何内容进行仔细检查:包括网络流量、U 盘等。采用高质量过滤的做法后,更有可能在 DDoS 恶意软件及其传播方法和通讯进入或离开网络前将其拦截。

5.使用德迅云安全之德迅云图(威胁检测与分析)

依赖云端强大的基础数据收集系统 ,结合自主研发的多款、累计数十种提取方法的核心情报提取系统 ,快速且自动化的生产高覆盖度、高准确度、上下文丰富的情报数据。为各种不同类型的业务提供独特的价值。

提供Web/邮件/SSH等公网开放的应用或者服务的外放访问IP的风险识别:精准发现相关IP是否属于扫描、撞库、漏洞利用、僵尸网络等风险,同时进一步提供该IP的基础信息,如代理、网关出口、CDN、移动基站等。

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

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

相关文章

视频下载器 - 网页视频自动嗅探2.2.4

【应用名称】:视频下载器 - 网页视频自动嗅探 【适用平台】:#Android 【软件标签】:#Video #Downloader 【应用版本】:2.2.4 【应用大小】:33MB 【软件说明】:软件升级更新。支持多种格式的看片神器&am…

【AI+agent智能助手】使用Dify新手小白也能分分钟构建属于自己的 AI 原生应用

最近有读者看了我这篇文章 【人工智能】字节版GPTs「扣子」coze免费使用chatGPT4模型操作步骤 , 私信我有没有本地私有化 智能体推荐。 这里推荐一款, Dify支持私有化部署,新手小白也能分分钟构建属于自己的 AI 原生应用。 官方地址&#…

如何将Git仓库中的文件打包成zip文件?

要将Git仓库中的文件打包成zip文件,您可以使用git archive命令。这个命令允许您将任何git可访问的树或提交导出成一个归档文件。以下是一些基本的步骤: 打开命令行或终端。切换到您的Git仓库的目录。执行git archive命令。 git archive --formatzip --o…

3D Tiles资源大全

本文汇总整理3D Tiles相关的各种资源,包括查看器、生成器、示例数据集、教程、演示等。 1、3D Tiles特色演示 注意:这些演示是基于 CesiumJS 1.87.1 Release 发布的,其中包括对 3D Tiles Next 扩展的实验性支持。这些演示中显示的大多数功能现…

Linux进程(三) --- 状态和优先级

运行,阻塞,挂起 运行 (Running) 当一个进程处于运行状态时,它正在使用CPU执行指令。进程在以下两种情况下可能被认为是运行状态: 实际运行(Running on CPU): 进程当前正在CPU上执行。可运行&…

如何利用R包进行主成分分析和可视化

一. 使用R包“FactoMineR”进行主成分分析(PCA) 基本步骤如下: 安装和加载包:如果尚未安装,首先安装“FactoMineR”包,然后加载它: install.packages("FactoMineR")library(FactoM…

在springboot项目中自定义404页面

今天点击菜单的时候不小心点开了一个不存在的页面,然后看到浏览器给的一个默认的404页面 后端的程序员都觉得这页面太丑了,那么怎么能自定义404页面呢? 很简单,在我们的springboot的静态资源目录下创建一个error包,然…

ue引擎游戏开发笔记(41)——行为树的建立(2)--丰富ai行为:巡逻后返回原处

1.需求分析: 就敌人ai而言,追踪到敌人有可能丢失目标,丢失目标后应该能返回原来位置,实现这一功能。 2.操作实现: 1.思路:利用clear value函数,禁用掉当前的追踪功能,执行之后的返…

积温空间分布数据、气温分布数据、日照数据、降雨量分布、太阳辐射数据、地表径流数据、土地利用数据、npp数据、ndvi数据

引言 积温是某一时段内逐日平均气温之和,它是研究植物生长、发育对热量的要求和评价热量资源的一种指标,是影响植物生长的重要因素之一,对指导农业生产和生态建设具有非常重要的意义。作为重要的气候资源,积温与其它资源的区别在于存在很大的地域差异和时…

Python | Leetcode Python题解之第91题解码方法

题目&#xff1a; 题解&#xff1a; class Solution:def numDecodings(self, s: str) -> int:n len(s)# a f[i-2], b f[i-1], c f[i]a, b, c 0, 1, 0for i in range(1, n 1):c 0if s[i - 1] ! 0:c bif i > 1 and s[i - 2] ! 0 and int(s[i-2:i]) < 26:c aa,…

C++——STL容器——List

1. 前言 List也是STL容器的一种&#xff0c;是C提供的链表结构的容器。C中所提供的list是双向带头循环链表&#xff0c;我们这篇文章通过自己模拟实现来学习list的使用。 为了避免和库中的命名冲突&#xff0c;也为了封装的考虑&#xff0c;我们将我们的list放入一个命名空间之…

微服架构基础设施环境平台搭建 -(七)Kubesphere pod内安装vimping命令

微服架构基础设施环境平台搭建 -&#xff08;七&#xff09;Kubesphere pod安装vim&ping命令 在K8s集群运维过程&#xff0c;需要进入pod容器内通过ping来测试网络是否通畅&#xff0c;或使用vim进行编辑文件&#xff0c;但是pod容器默认情况下是不支持ping、vim命令的&…

2024.05.15学习记录

1、完成Ts重构Axios项目中更多功能的开发 2、刷题&#xff1a;二叉树&#xff08;代码回忆录&#xff09; 3、复习diff算法源码解读

C语言 | Leetcode C语言题解之第91题解码方法

题目&#xff1a; 题解&#xff1a; int numDecodings(char* s) {int n strlen(s);// a f[i-2], b f[i-1], c f[i]int a 0, b 1, c;for (int i 1; i < n; i) {c 0;if (s[i - 1] ! 0) {c b;}if (i > 1 && s[i - 2] ! 0 && ((s[i - 2] - 0) * 10…

C++|树形关联式容器(set、map、multiset、multimap)介绍使用

目录 一、关联式容器介绍 1.1概念 1.2键值对 1.3树形结构的关联式容器 1.3.1pair模板介绍 1.3.2make_pair的介绍 二、set的介绍和使用 2.1set介绍 2.2set使用 2.2.1构造 2.2.2容量 2.2.3修改 三、map的介绍和使用 3.1map介绍 3.2map使用 3.2.1构造 3.2.2容量 …

相机模型的内参、外参

相机模型的内参、外参 文章目录 相机模型的内参、外参1. 针孔模型、畸变模型&#xff08;内参&#xff09;2. 手眼标定&#xff08;外参&#xff09; Reference 这篇笔记主要参考&#xff1a;slam十四讲第二版&#xff08;高翔&#xff09; 相机将三维世界中的坐标点&#xff…

PDK安装及简介

目录 PDK简介 pdk安装 Standard Cell Library简介 IO Library简介 PDK简介 PDK&#xff1a;全称Process Design Kit&#xff0c;是工艺设计工具包的缩写&#xff0c;是制造和设计之间的沟通桥梁&#xff0c;是模拟电路设计的起始点。 具体来说&#xff0c;PDK是代工厂(FAB…

使用Docker进行Jmeter分布式搭建

大家好&#xff0c;随着技术的不断发展&#xff0c;对性能测试的要求也日益提高。在这样的背景下&#xff0c;如何利用 Docker 来巧妙地搭建 Jmeter 分布式成为了关键所在。现在&#xff0c;就让我们开启这场探索之旅&#xff0c;揭开其神秘的面纱。前段时间给大家分享了关于 L…

通信指挥类装备(多链路聚合设备)-应急通信指挥解决方案

现场通信指挥系统是一种功能全面的便携式音视频融合指挥通信平台&#xff0c;可实现现场应急救援指挥、多种通信手段融合、现场通信组网等功能&#xff0c;是现场指挥系统的延伸。 多链路聚合设备&#xff0c;是一款通信指挥类装备&#xff0c;具有 4G/5G&#xff0c;专网&…

Free RTOS中Semaphore(二值信号量)的使用介绍

目录 概述 1 使用STM32Cube 配置信号量 1.1 引子 1.2 STM32Cube中配置FreeRTOS 1.3 STM32Cube生成Project 2 cmsis_os中信号量接口函数 2.1 函数&#xff1a;osSemaphoreNew 2.2 函数&#xff1a;osSemaphoreGetName 2.3 函数&#xff1a;osSemaphoreAcquire 2.4 函数…