Apache Shiro漏洞绕过waf小tips】的更多相关文章

看了篇文章觉得不错记录下以免以后找不到,原理是通过base64解码特性导致waf不能成功解码绕过waf检测从而进行攻击 解码情况: payload php python openresty java shiro aGVsbG8=test hello-z� hello hello 抛异常 hello-z� aGVs.bG8 hello 解码失败 解码失败 抛异常 hel aGVs.bG8= hello hello 解码失败 抛异常 hello aGVsbG8= hello hello hello…
Apache Shiro 漏洞汇总 以下是我个人通过收集信息收集起来的一些Apache Shiro漏洞信息,这些漏洞的poc都是公开的,利用起来也是比较简单 Apache Shiro是什么东西: Apache Shiro是美国阿帕奇(Apache)软件基金会的一套用于执行认证.授权.加密和会话管理的Java安全框架 漏洞信息 shiro 反序列化(cve_2016_4437) Apache Shiro默认使用了CookieRememberMeManager,其处理cookie的流程是:得到rem…
原始默认状态: ——WebKitFormBoundary2smpsxFB3D0KbA7D Content-Disposition: form-data; name=”filepath”; filename=”backlion.asp” Content-Type: text/html 突破0,文件名前缀加[0x09]绕过: ——WebKitFormBoundary2smpsxFB3D0KbA7D Content-Disposition: form-data; name=”filepath”; fi…
利用burp dns进行检测,脚本如下: import sys import uuid import base64 import subprocess from Crypto.Cipher import AES import requests # copy to clipboard def encode_rememberme(command): popen = subprocess.Popen(['java', '-jar', 'ysoserial.jar', 'URLDNS', command…
0x01 Apache Shiro Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. 0x02 漏洞简介 2021年2月1日,Apache Shiro官方发布漏洞通告,漏洞编号为:CVE-2020-17523. 当Apache Shiro与Spring框架结合使用时,攻击者可以通过构造特殊的HTTP请求数据包,绕过身份认证匹配规则. 0x03 漏洞复现 环境搭建 使用tomcat部署shiro1.7.0.war包. 公众号回复shiro获取下载链接…
Shiro550 环境搭建 参考:https://www.cnblogs.com/twosmi1e/p/14279403.html 使用Docker vulhub中的环境 docker cp 将容器内的shiro的jar包copy出来 docker cp dd54fcfb67c6:/shirodemo-1.0-SNAPSHOT.jar ~/Desktop 解压jar包,IDEA打开,在libraries 导入该jar包 在modules 中添加解压后的jar中BOOT_INF目录 修改Docke…
前言 本文以最新版安全狗为例,总结一下我个人掌握的一些绕过WAF进行常见WEB漏洞利用的方法. PS:本文仅用于技术研究与讨论,严禁用于任何非法用途,违者后果自负,作者与平台不承担任何责任 PPS:本文首发于freebuf (https://www.freebuf.com/articles/web/254513.html ) 测试环境 PHPStudy(PHP5.4.45+Apache+MySQL5.5.53)+最新版安全狗(4.0.28330) 靶场使用DVWA:http://www.dvwa…
1. 前言 最近工作上刚好碰到了这个漏洞,当时的漏洞环境是: shiro-core 1.2.4 commons-beanutils 1.9.1 最终利用ysoserial的CommonsBeanutils1命令执行. 虽然在ysoserial里CommonsBeanutils1类的版本为1.9.2,不过上面环境测试确实可以命令执行. CommonsBeanutils1 @frohoff commons-beanutils:1.9.2 这里当时有一个问题是:如何获取Java里引用组件的版本? 大多…
漏洞介绍 漏洞类型 :JAVA反序列化(RCE) 影响版本 :Apache Shiro 1.2.4及其之前版本 漏洞评级 :高危 漏洞分析 #: 下载漏洞环境: git clone https://github.com/apache/shiro.git git checkout shiro-root-1.2.4 工具下载 git clone https://github.com/frohoff/ysoserial.git cd ysoserial mvn package -DskipTests…
转载自:https://www.leavesongs.com/PENETRATION/apache-cve-2017-15715-vulnerability.html 目标环境: 比如,目标存在一个上传的逻辑: <?php if(isset($_FILES['file'])) { $name = basename($_POST['name']); $ext = pathinfo($name,PATHINFO_EXTENSION); if(in_array($ext, ['php', 'php3'…
前言: 最近在审核漏洞的时候,发现尽管Apache shiro这个反序列化漏洞爆出来好久了,但是由于漏洞特征不明显,并且shiro这个组件之前很少听说,导致大厂很多服务还存在shiro反序列化的漏洞,这里对漏洞进行简单分析与复现. 一.漏洞前析 0x01 什么是Apache Shiro? Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理.使用Shiro的易于理解的API,您可以快速.轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程…
介绍:Apache Shiro是一个强大且易用的Java安全框架,执行身份验证.授权.密码和会话管理. 漏洞原因:因为shiro对cookie里的rememberme字段进行了反序列化,所以如果知道了shiro的编码方式,然后将恶意命令用它的编码方式进行编码并放在http头的cookie里,在shiro对提交的cookie的rememberme字段进行反序列化时,也就执行了插入的命令,最终造成了命令执行 shiro默认使用了CookieRememberMeManager,其处理cookie的流程…
Apache Shiro反序列化漏洞复现 0x01 搭建环境 获取docker镜像 Docker pull medicean/vulapps:s_shiro_1 重启docker system restart docker 启动docker镜像: docker run -d -p 8082:8080 medicean/vulapps:s_shiro_1 访问: http://192.168.1.192:8082/ 环境搭建成功 攻击机:139.199.179.167 受害者:192.168.19…
0x00 漏洞原理 Apache Shiro框架提供了记住密码的功能(RememberMe),用户登录成功后会生成经过加密并编码的cookie.在服务端对rememberMe的cookie值, 先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏洞. 0x01 漏洞环境搭建 用vulhub 部署 不会的可以看这里,https://www.cnblogs.com/bflw/p/12534401.html 部署好之后 虚拟机ip+端口 0x02 利用方法 飞鸿表哥的,哈哈哈,底下是下…
Apache Shiro 1.2.4反序列化漏洞(CVE-2016-4437)复现 环境搭建 docker pull medicean/vulapps:s_shiro_1 docker run -d -p 8080:8080 medicean/vulapps:s_shiro_1 # 访问 靶机IP:8080 出现如下图环境即可 Apache Shiro特征 Cookie中构造rememberMe,返回包会有rememberMe=deleteMe apache-maven(mvn)安装 官网下载:…
漏洞描述 Apache Shiro是一个Java安全框架,执行身份验证.授权.密码和会话管理.只要rememberMe的AES加密密钥泄露,无论shiro是什么版本都会导致反序列化漏洞. 漏洞原理 Apache Shiro框架提供了记住我(RememberMe)的功能,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问. Shiro对rememberMe的cookie做了加密处理,shiro在CookieRememberMeManaer类中将cookie中rememberMe…
靶机IP(Ubuntu):192.168.43.185 攻击IP(kali):192.168.43.37 一.docker环境搭建 打开vulhub靶机,目录定位到vulhub-master/shiro/CVE-2016-4437目录下 并使用docker-compose build与docker-compose up -d建立并启动docker 查看靶机内网地址:192.168.43.185 浏览器访问http://192.168.43.185:8080 二.使用Shiro_exploit进行…
知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 本文小结 0x6 参考资料 0x0 前言 促使本文产生最初的动机是前些天在做测试时一些攻击向量被WAF挡掉了,而且遇到异常输入直接发生重定向.之前对WAF并不太了解,因此趁此机会科普一下并查阅了一些绕过WAF的方法.网上关于绕过WAF有诸多文章,但是观察之后会发现大体上绕过WAF的方法就那八.九种,…
上个星期我被邀请组队去参加一个由CSAW组织的CTF夺旗比赛.因为老婆孩子的缘故,我只能挑一个与Web漏洞利用相关的题目,名字叫做”HorceForce”.这道题价值300点.这道题大概的背景是,你拥有一个低权限的帐号并需要找到方法来获得管理员权限. 当然,有很多种方法来介绍如何通过这关,但我想分享下我的通关经验. 当把一些单引号作为参数值发送之后返回了MySQL的典型报错信息“MySQL SQL Error Message”,因此可以轻易发现这里存在一个SQL注入漏洞. 然后,正如你了解的,我…
SQL注入9种绕过WAF方法 0x01前言 WAF区别于常规 防火墙 是因为WAF能够过滤特定Web应用程序的内容,而常规防火墙则充当服务器之间的防御门.通过检查HTTP的流量,它可以防御Web应用安全漏洞,如阻止来自 SQL注入. 跨站点脚本  (XSS). 文件包含和安全配置错误. 0x02 WAF工作原理 §  检测异常协议:拒绝不符合HTTP标准的请求 §  增强型的输入验证:代理和服务器端验证,而不仅仅是客户端验证 §  白名单和黑名单 §  基于规则和异常的保护:基于规则的更多是基于…
0×01开场白 这个议题呢,主要是教大家一个思路,而不是把现成准备好的代码放给大家. 可能在大家眼中WAF(Web应用防火墙)就是"不要脸"的代名词.如果没有他,我们的"世界"可能会更加美好.但是事与愿违.没有它,你让各大网站怎么活.但是呢,我是站在你们的这一边的,所以,今天我们就来谈谈如何绕过WAF吧.之所以叫做"杂谈",是因为我在本次演讲里,会涉及到webkit.nginx&apache等.下面正式开始:) 0×02直视WAF: 作为…
一:大小写转换法: 看字面就知道是什么意思了,就是把大写的小写,小写的大写.比如: SQL:sEleCt vERsIoN(); ‍‍XSS:)</script> 出现原因:在waf里,使用的正则不完善或者是没有用大小写转换函数 二:干扰字符污染法: 空字符.空格.TAB换行.注释.特殊的函数等等都可以.比如下面的: SQL:sEleCt+1-1+vERsIoN /*!*/ ();`yohehe‍‍ ‍‍SQL2:select/*!*/`version`(); XSS:下面一节会仔细的介绍 出现…
0x01 前言 目前市场上的WAF主要有以下几类 1. 以安全狗为代表的基于软件WAF 2. 百度加速乐.安全宝等部署在云端的WAF 3. 硬件WAF WAF的检测主要有三个阶段,我画了一张图进行说明 本文主要总结的就是针对上面的三个阶段的绕过策略.小菜一枚,欢迎拍砖. 0x02 WAF身份认证阶段的绕过 WAF是有一个白名单的,在白名单内的客户请求将不做检测 (1)伪造搜索引擎 早些版本的安全狗是有这个漏洞的,就是把User-Agent修改为搜索引擎,便可以绕过,进行sql注入等攻击,论坛bl…
Checkin .user.ini构成php后门利用,设置auto_prepend_file=01.jpg,自动在文件前包含了01.jpg,利用.user.ini和图片马实现文件包含+图片马的利用. 而.htacess构造后门是通过上传.htaccess设置AddType application/x-httpd-php .jpg,将jpg文件作为php解析,getshell 补上脚本: 修改下与easyphp中的可以通用 import requests import base64 url = "…
目录 HTTP报文包体的解析 Transfer-Encoding Charset 溢量数据 HTTP协议兼容性 HTTP请求行种的空格 HTTP 0.9+Pipelining Websocket.HTTP/2.0 高层数据 base64 Unicode JSON 实体编码 XML 八进制 同形字 容器语言特性 匹配缓冲区大小固定 白名单 输出角度 OOB Range 其他参考 传输层 SSL层 DOS 结语 本文主要从绕过WAF过程中需要注意的角色和点出发,尝试理解它们的运作,构建一个简单的知识…
本来这篇文章是想写从Factory加载ini配置到生成securityManager的过程的....但是貌似涉及的东西有点多...我学的又比较慢...很多类都来不及研究,我又怕等我后面的研究了前面的都忘记了...所以就先与大家分享一下我对Shiro里Ini这个类的研究. 简介 我感觉其实利用ini来配置shiro在实际应用中应该不是很多,我想大部分java应用还是web类型的,数据也应该储存在数据库里..不会简简单单的存在.ini这样的配置文件中的...但是对于学习Shiro来说,我觉得研究一下…
Shiro设计的初衷就是可以运行于任何环境:无论是简单的命令行应用程序还是复杂的企业集群应用.由于运行环境的多样性,所以有多种配置机制可用于配置,本节我们将介绍Shiro内核支持的这几种配置机制.       小贴士:多种配置方案:     Shiro的SecurityManager是和JavaBean兼容的,所以我们可以使用诸如Java.Xml(Spring.Jboss.Guice等).YAML.Json.Groovy等配置方式.   一.基于Java代码的配置     最简单的创建并且使用S…
 一.介绍 看完这个10分钟入门之后,你就知道如何在你的应用程序中引入和使用Shiro.以后你再在自己的应用程序中使用Shiro,也应该可以在10分钟内搞定. 二.概述 关于Shiro的废话就不多说了,详情可以看本系列第一篇博文:Apache Shiro系列一:初识 Apache Shiro可以做什么? 答案是很多,但是在这里我们就不展开说了,如果对这个有兴趣,可以去看Shiro的特性. 三.下载 1)确保安装了1.6及其以上版本的JDK,以及3.0.3以上版本的maven: 2)从Downlo…
知己知彼百战不殆 --孙子兵法 [目录] 0x00 前言 0x01 WAF的常见特征 0x02 绕过WAF的方法 0x03 SQLi Filter的实现及Evasion 0x04 延伸及测试向量示例 0x05 本文小结 0x06 参考资料 0x00 前言 笔者前几天在做测试时输入攻击向量后页面发生了重定向甚至异常输入也是重定向怀疑其中有WAF在作怪.之前对WAF接触比较少纯粹是新手趁此科普了一下并查阅了一些绕过WAF的方法.所找到的资料中主要分为两类SQL注入和XSS绕过笔者SQL注入同样是新手…
在本教程中,我们会写一个简单的.仅仅输出一些内容命令行程序,从而对Shiro有一个大体的感觉. 一.准备工作 本教程需要Java1.5+,并且我们用Maven生成项目,当然Maven不是必须的,你也可以通过导入Shiro jar包的方式.或使用Ant.Ivy,喜欢哪种就用哪种. 开始之前,确定你的Maven版本为2.2.1+(如果你用的是Maven的话),用mvn --version确定Maven的版本. 现在,我们将正式开始.首先新建一个文件夹,比如说shiro-tutorial,然后将下面的…