tomcat对url请求中的特殊字符处理 分析 0x00 前言事情起因是 最近在看 orange 大佬在black hat 发的一篇关于路径穿越的议题PDF:https://i.blackhat.com/us-18/Wed-August-8/us-18-Orange-Tsai-Breaking-Parser-Logic-Take-Your-Path-Normalization-Off-And-Pop-0days-Out-2.pdf里面谈到了反向代理和tomcat 二义性问题导致路径穿越:然后本地搭建tomcat ,直接在浏览器中用 …;/来进
thinkphp 源码分析(四)—— 错误和异常处理 以及 log 日志 0x01 前言本来是这样的,继续是smile 师傅的那篇文章,文章中提到了可以用包含日志, 但是一开始我输入:http://127.0.0.1/public/index.php/index/index/inde 这种居然没有产生日志文件,一开始以为thinkphp 会按照日志级别来处理,也就是说我设置了 info 的话,error 级别的日志也会记录。后来发现thinkphp 中config.php 中规定了记录哪些类型的日志才会记录这种类型的日志,不是按照级别高低来的。但是后来就算在config
thinkphp 源码分析系列(三) —— 多语言 0x01 前言:thinkphp 支持多语言,一直对thinkphp 怎么实现多语言比较好奇。这次来分析一下thinkphp 语言包0x02 分析:在App::run() 中:先是98行设置Lang的默认语言,赋值为Lang::range然后100行检测是否开启多语言自动检测lant_switch_on,如果开启的话,进行语言检测(自动侦测设置获取语言):可以看到195 行,如果get 中传入了lang 参数的话,就把langSet设置为传入的值,cookie中设置了也是一样的,如果都没有的
thinkphp 源码分析系列(二)—— 路由 0x00 前言这篇文章主要是结合 thinkphp 5.0.x 两个rce :(1)变量覆盖filter(2)没有开启强制路由导致rce来分析thinkphp 的路由0x01 路由检测首先要说的是$dispatch 调度信息,类似于:调度信息最后会传入App::exec() 中:而exec 会根据调度信息的type ,去调用相应的函数去映射到具体的函数上去执行。App.php 中run() 函数中,$dispatch 是通过 App.php 中的routeCheck() 函数返回
thinkphp 5.0.x 源码分析系列(一)请求基本流程 0x01 前言这次来分析分析thinkphp 的源码。这是这个系列的第一篇。本篇涉及除了涉及到了框架的基本流程外,还涉及了thinkphp 中类的自动加载机制。0x02 thinkphp 安装这次选择的是thinkphp 5.0.22 完整版,下载的地址: http://www.thinkphp.cn/down/1260.html0x03 目录结构这是官方文档上的目录结构。0x04 请求基本流程分析thinkphp是单入口框架,所有的请求都先经过 public/index.php 文件,
python 利用code对象沙箱逃逸 0x 前言最近遇到一些python 沙箱逃逸的问题,突然想起之前群友发了一个关于python2 code对象沙箱逃逸的博客,然后想自己也重新回顾回顾这个方法,同时也想python2 可以利用code 对象沙箱逃逸,那么python3 可不可以呢?抱着好奇心,然后就有了这篇文章。0x 准备知识1.python 中利用code 对象来动态函数的几种方法【本质都是得到Function类,然后使用Fuction类的构造函数】:(1) 通过types.FunctionType 函数python 文档中查看t
Java 反序列化 ysoserial-URLDNS利用链 调试分析 0x 前言遇到java 反序列化漏洞时,很多时候都会利用 ysoserial 这个工具来生成payload,于是这次决定来跟一根 ysoserial 里面最简单的 URLDNS 这条利用链0x 准备分析先看看 ysoserial 生成 URLDNS 的这段代码:注释里说得很明白,利用链是: * Gadget Chain: * HashMap.readObject() * HashMap.putVal() * HashMap.hash() *
红日安全靶机实战(一) 0x01 入侵web服务器0x 1.1 信息收集首先使用 nmap 来扫描ip 段存活的主机nmap -sn 192.168.127.0/24 这里网上有的用 netdiscover 来扫描,其实和 nmap -sn 扫描原理是一样的,都是通过arp 来实现扫描。然后接着nmap 激进模式扫端口:nmap -A -T4 192.168.127.154发现80端口,浏览器访问,发现是phpStudy 搭建的环境,而且网站根路径是C:/php/WWW:0x 1.2 写webshell
天翼杯 web APITest 0x00 前言上周末打天翼杯,这道题磕了很久。拿到这个题的时候,发现是一个node js 题,于是搜了搜 导入的包,发现 express-jwt 最近爆出一个Bypass 的漏洞 。CVE-2020-15084,利用条件是:https://github.com/auth0/express-jwt/security/advisories/GHSA-6g6m-m6h5-w9gf没有用 algorithms 参数 然后使用jwks-rsa 最为 secret 。好吧,比赛的时候我好像忽略了第二个利用条件
thinkphp v6.0.x 反序列化利用链分析 0x00 前言继续分析 thinkphp v6.0.x 反序列化利用链,本来是打算先分析 thinkphp v5.2.x 的利用链的,但是使用composer 安装失败,而且官方又说只能通过composer 来安装 , 网上找了好久没找到解决方法,然后去github上面提交 issue ,官方给的回复 是没有 5.2版本,这个回答确实有点懵。所以就先来分析 6.0.x 的反序列化利用链。0x01 分析thinkphp 6.0 __toString() 后面的利用链和 thinkphp 5.2 是
thinkphp v5.0.24 反序列化利用链分析 0x00 前言前几天分析了 thinkphp v5.1.37 反序列化利用链, 今天继续来分析thinkphp v5.0.x 反序列化利用链。0x01 环境搭建这次直接从官网下载 ,下载地址:http://www.thinkphp.cn/donate/download/id/1279.html0x02 分析0x 2.1 先找触发__call() 方法的地方前面和 thinkphp v5.1.37 一样,都是think\process\pipes\Windows 的__destruct() 里面调
thinkphp v5.1.37 反序列化利用链分析 0x00 前言最近看到一篇代码审计的文章中 ,里面多次提到用thinkphp 的 反序列化利用链 来写shell 。由于之前没有对thinkphp 反序列化利用链做过系统的分析,所以决定最近对thinkphp 反序列化利用链 亲自动手来复现 分析以下。0x01 环境搭建我是直接在github 上下载源码来搭建环境的,看到网上也可以用composer来安装。我这里就介绍从github上拉源码来安装的方法:需要下载 thinkphp 两部分:https://github.com/top-think/
[强网杯 2019]Upload wp 0x00 前言本来是在刷 文件上传的题,然后没想到强网杯这个题打着upload 的幌子其实是个反序列化题,看了看wp 后,觉得很有意思,值得记录一下0x01 题解1.首先用户登录后的 cookie 是一串加密的内容,很可疑,base64 解密之后,发现是序列化的内容2.dirmap 扫目录,扫到源码,/www.tar.gz下载之后发现里面包含源码,以及.idea 文件,phpstorm 打开发现断点,估计是出题人故意留的提示3.审计源码先看两个断点处:login_check() 函数
asp.net 中 viewstate 反序列化攻击 学习记录 0x00 前言asp.net 平时接触得少,ctf 中也比较少遇到,之前对他的了解也只限于对 c# 语言的一些简单学习。然后这次在 buu 上面遇到 一道 [BJDCTF 2nd]EasyAspDotNet 题,然后在看wp 的时候,又碰巧了解到 HITCON CTF 2018 - Why so Serials? 和这题差不到,都是利用了viewstate 反序列化来做;然后在查资料的时候,又发现 CVE-2020-0688 exchange远程代码执行漏洞 也是利用viewstate 反序列化漏洞。
[ASIS 2019]Unicorn shop ( 自找 wp 记录) 0x00 前言这题拿到之后有点懵,后来看了 网上的 wp 更加懵,网上大多数都是直接说 去 compart 搜thousand,然后找个大于1337 的就可以,至于为什么?基本都没有给出解答。于是乎 就有了这篇水文0x01 自找 wp 过程既然网上的wp 基本都没给出一个合理的解释,那么我们就自己去找原因。首先 想这道题要是有源码的话,那么一切都好解决了,于是尝试性地 去 github 搜了搜 ,还真搜到源码了。https://github.com/Tiaonmmn/asis_2019_unicor