什么是木马

木马

    • 1. 定义
    • 2. 木马的特征
    • 3. 木马攻击流程
    • 4. 常见木马类型
    • 5. 如何防御木马

1. 定义

木马一名来源于古希腊特洛伊战争中著名的“木马计”,指可以非法控制计算机,或在他人计算机中从事秘密活动的恶意软件。

木马通过伪装成正常软件被下载到用户主机,随后黑客通过木马控制用户主机并盗取用户信息。由于计算机中了木马后不会表现出异常,所以往往很难发现,具有很强的隐蔽性。

木马与病毒的区别
木马和病毒一般统称恶意程序或恶意软件。木马更倾向于默默窃取,病毒则具有一定显性破坏性。前者像暗中行动的小偷,后者像打砸抢烧的强盗。

木马不同于计算机病毒的地方在于计算机病毒是能够实现自我复制的一组恶意代码,而木马则不会自我复制,不具有传染性。实践中,有些病毒带有木马的特征,有些木马则带有病毒的特征。

2. 木马的特征

(1)隐藏性

隐藏性是木马的最重要特性,木马能够长时间潜伏在用户计算机中不被发现。木马虽然会在系统启动时自动运行,它将自身隐藏在合法的程序中,运行时不会在“任务栏”中生成图标,不会在任务管理器中被轻易发现。这使得用户和一些安全软件难以发现木马的存在。

(2)欺骗性

欺骗性是指木马一般会通过将自己包装为普通的软件来欺骗用户和躲避安全软件查杀。木马的欺骗方法很多,例如修改木马程序的图标,或更改文件名称将自己伪装成系统服务等。

(3)危害性

危害性是指当木马被植入目标主机以后,攻击者可以通过对客户端的远程控制进行一系列能造成严重后果的非法行为,例如窃取机密文件、控制系统的运行和以失陷主机为跳板感染其他主机等。

3. 木马攻击流程

在这里插入图片描述

(1)伪装木马

伪装木马,攻击者事先会将木马伪装成正常软件,常用的木马伪装方法如下:

  • 修改图标:攻击者会将木马的图标修改成常用的文件图标。例如文本、图片或HTML等文件的图标。
  • 修改名称:攻击者的常用手段是将木马的名称修改为系统文件的名称,因为用户一般不会轻易删除系统文件。
  • 修改扩展名:一般情况下,木马文件后缀名为.exe(可执行文件),但攻击者会将木马修改为常用文件类型的扩展名。
  • 捆绑文件:攻击者常会将木马和某文件捆绑在一起。例如,将木马和一个损坏的 ZIP 包(可自制)捆绑在一起。

(2)传播木马

木马常通过邮件附件和网页站点下载的方式被传播。具体手段如下:

  • 邮件钓鱼:攻击者冒充用户邮箱联系人或知名机构向用户发送携带木马附件的邮件,一旦用户点击附件,木马就会自动下载安装至用户计算机中。
  • 网站钓鱼:攻击者将木马上传到钓鱼网站中,并将网站设置为用户访问自动下载该木马,然后通过社会工程诱骗用户访问该网站以实现木马的传播。
  • 危险站点植入:攻击者会攻破软件下载站点,随后将下载量大的软件捆绑上木马,或将木马下载链接隐藏在站点的弹出式广告中。

(3)运行木马

木马被下载后会自动安装和运行,在首次运行时,会自动更改注册表信息,将自身写入到启动配置文件或注册表中。例如,木马在system.ini等文件或注册表自启动项中添加自身路径,以达到目标主机开机时木马能自动加载的目的。

(4)远程控制

感染用户计算机后,木马会持续监视该主机。在用户不知情的情况下,攻击者能通过下发命令实现对用户计算机的远程控制,并完成木马传播者下发的攻击指令。例如,盗取用户信息、执行DDoS攻击,甚至以用户计算机为跳板感染内网其他设备。

4. 常见木马类型

(1)远控木马

远程控制是现代木马的基本功能,木马会设法与用户计算机建立连接,随后通过远程下发命令实现远程抓取、文件传输、屏幕截取等功能。受控计算机就成为“肉鸡”。

典型代表有:灰鸽子、冰河、BO等。

(2)盗号木马

这类木马以找到所有的隐藏密码为主,如各种社交帐号的账户和密码,网络游戏中游戏账号和密码,并在受害者不知情的情况下将密码信息发送出去。

典型代表有:Wirenet等。

(3)记录键值型木马

记录键值型木马顾名思义就是记录你每一次的敲击键盘操作。这种木马程序会随着操作系统的启动而自动加载,分为在线和离线两种,分别记录用户在在线和离线两种状态下敲击键盘的情况。记录键值型木马一般也有邮件发送功能,能通过邮件将记录的信息发送给控制者。

典型代表有:Magic Lantern、键盘记录器木马变种EOM等。

(4)DDoS攻击型木马

攻击者通过木马程序控制被感染的主机,那些被感染的主机称为“肉鸡”。攻击者通过控制大量“肉鸡”发起DDoS(distributed denial of service,分布式拒绝服务)攻击。例如,攻击者针对网站发起DDoS攻击,导致网站服务器资源被大量占用,无法正常为用户提供服务。

典型代表有:Satan DDoS僵尸网络木马、魔鼬等。

(5)网银木马

网银木马主要针对银行的网上交易系统,该木马旨在窃取用户的银行账户信息,包括银行账号和密码信息,给个人财产安全带来很大的危害。

典型代表有:Tiny Banker、木马银行家等。

5. 如何防御木马

防御木马的关键在于预防,即在木马进入设备并造成实质性损失之前,拦截攻击。用户可以从提升网络安全意识和在计算机系统上完善防御措施入手,
建议采取如下手段:

  • 安装正版操作系统和应用程序,不在非正规网站下载应用程序。
  • 使用专门的木马查杀软件,并定期进行软件升级。
  • 不打开来历不明的邮件,即使是熟悉的人发来的邮件也要谨慎对待,因为木马可能感染了他们的计算机,并通过他们的计算机来散播木马。
  • 不点击网站上的弹出式广告,一般那些广告信息为了吸引用户点击,往往会包装的很好,我们要提高辨别能力,防止木马入侵。
  • 加强个人账户信息的安全意识,使用字符、大小写字母、数字的组合方式设置密码。
  • 对重要数据和文件进行定期备份,即使木马程序对该数据文件进行了更改或删除等操作,也能通过备份恢复减少损失。
  • 使用防火墙保护个人计算机。

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

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

相关文章

js无法请求后端接口,别的都可以?

在每个接口的控制器中加入以下代码即可: header(Access-Control-Allow-Methods:*); header("Access-Control-Allow-Origin:*"); 如果嫌麻烦可以添加在api初始函数里面

万宾科技可燃气体监测仪的功能有哪些?

随着城市人口的持续增长和智慧城市不断发展,燃气作为一种重要的能源供应方式,已经广泛地应用于居民生活和工业生产的各个领域。然而燃气泄漏和安全事故的风险也随之增加,对城市的安全和社会的稳定构成了潜在的威胁。我国燃气管道安全事故的频…

设计模式详解(三):工厂方法

目录导航 抽象工厂及其作用工厂方法的好处工厂方法的实现关系图实现步骤 工厂方法的适用场景工厂方法举例 抽象工厂及其作用 工厂方法是一种创建型设计模式。所谓创建型设计模式是说针对创建对象方面的设计模式。在面向对象的编程语言里,我们通过对象间的相互协作&…

智能优化算法应用:基于教与学算法无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于教与学算法无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于教与学算法无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.教与学算法4.实验参数设定5.算法结果6.参考文献7.…

leetCode 78.子集 + 回溯算法 + 图解

给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集 示例 1: 输入:nums [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1…

STM32---时钟树

写在前面:一个 MCU 越复杂,时钟系统也会相应地变得复杂,如 STM32F1 的时钟系统比较复杂,不像简单的 51 单片机一个系统时钟就 可以解决一切。对于 STM32F1 系列的芯片,其有多个时钟源,构成了一个庞大的是时…

Python 异常处理(try except)

文章目录 1 概述1.1 异常示例 2 异常处理2.1 捕获异常 try except2.2 抛出异常 raise 3 异常类型3.1 内置异常3.2 自定义异常 1 概述 1.1 异常示例 异常:程序执行中出现错误,若不处理,则程序终止 示例代码: v 6 / 0 # 除数不…

Redis入门指南学习笔记(3):Redis高级特性

一.前言 上一篇博客对Redis常用的数据结构进行了详细介绍。Redis除了丰富的数据类型支持,还包含许多高级特性,例如事务、内存驻留策略、排序、消息队列等,本文将对这些进行逐一介绍。 二.事务 Redis同样包含事务(transaction&a…

【刷题笔记】H指数||数组||二分查找的变体

H指数 最新编辑于2023.11.29 之前的代码写得有点抽象,实在抱歉,好像我自己都不理解当时自己怎么写的,现在重新更新了代码,保证好理解。 1 题目描述 https://leetcode.cn/problems/h-index/ 给你一个整数数组 citations &#xf…

Python基础学习之包与模块详解

文章目录 前言什么是 Python 的包与模块包的身份证如何创建包创建包的小练习 包的导入 - import模块的导入 - from…import导入子包及子包函数的调用导入主包及主包的函数调用导入的包与子包模块之间过长如何优化 强大的第三方包什么是第三方包如何安装第三方包 总结关于Python…

【人工智能Ⅰ】实验3:蚁群算法

实验3 蚁群算法的应用 一、实验内容 TSP 问题的蚁群算法实现。 二、实验目的 1. 熟悉和掌握蚁群算法的基本概念和思想; 2. 理解和掌握蚁群算法的参数选取,解决实际应用问题。 三、实验原理 1.算法来源 蚁群算法的基本原理来源于自然界…

网络基础_1

目录 网络基础 协议 协议分层 OSI七层模型 网络传输的基本流程 数据包的封装和分用 IP地址和MAC地址 网络基础 网络就是不同的计算机之间可以进行通信,前面我们学了同一台计算机之间通信,其中有进程间通信,前面学过的有管道&#xff…

在Linux上安装KVM虚拟机

一、搭建KVM环境 KVM(Kernel-based Virtual Machine)是一个基于内核的系统虚拟化模块,从Linux内核版本2.6.20开始,各大Linux发行版就已经将其集成于发行版中。KVM与Xen等虚拟化相比,需要硬件支持的完全虚拟化。KVM由内…

百度人工智能培训第二天笔记

参加了百度人工智能初步培训,主要是了解一下现在人工智能的基本情况,以便后续看可以参与一些啥? 下面就继续前一天的内容记录。 一、先做电动自行车的电梯里检测 先进行图片资料的上传与标注,这个昨天的最好也说了一下。 训练完后…

手摸手Element-ui组件化开发

前端环境准备 编码工具: VSCode 依赖管理:NPM 项目构建: Vuecli NPM的全称是Node Package Manager,是一个NodeJS包管理和分发工具,已经成为了非官方的发布Node模块(包)的标准。2020年3月17日,Github宣布收购npm&am…

WebGL/threeJS面试题扫描与总结

什么是 WebGL?什么是 Three.js?请解释three.js中的WebGL和Canvas的区别? WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个…

龙芯loongarch64服务器编译安装pyarrow

1、简介 pyarrow是一个高效的Python库,用于在Python应用程序和Apache Arrow之间进行交互。Arrow是一种跨语言的内存格式,可以快速高效地转移大型数据集合。它提供了一种通用的数据格式,将数据在内存中表示为表格,并支持诸如序列化和分布式读取等功能。 龙芯的Python仓库安…

【教程】 一文部署配置并入门 Redis

综述 什么是Redis Redis官网——Redis.io Redis, 作为一个高性能的键值对数据库,主要应用于以下场景: 缓存系统:由于其高速读写能力,Redis 非常适合用作缓存系统,减少数据库负载。 会话存储(Session St…

构建未来:云计算 生成式 AI 诞生科技新局面

目录 引言生成式 AI:开发者新伙伴云计算与生成式 AI 的无缝融合亚马逊云与生成式 AI 结合的展望/总结我用亚马逊云科技生成式 AI 产品打造了什么,解决了什么问题未来科技发展趋势:开发者的机遇与挑战结合实践看未来结语开源项目 引言 2023年…

基于SpringBoot母婴商城

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本母婴商城系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…