前言:本来想要写一下jndi注入在jdk高版本下的利用这个专题的,后来发现之前分析过底层jndi注入的原理,但是好像一直没有记述,就先来补一下;趁着现在机会写一写,顺便复习一下;改天再来补jndi的高版本jdk的利用; 正文:低版本的jndi注入可以很方便的进行攻击,利用reference远程绑定class和factory以及factorylocation可以在本地解析的时候使用造成factory去对class进行处理,因为本地无相应的
开头: 之前有一些师傅对Commons-fileupload这个apache文件上传组件有过一些研究,我之前也看到很多文章,今天来自己做一下研究看看相关的原理; 正文: 首先构建一个项目用于方便复现;相关搭建过程就不过多赘述了,我的环境搭建是采用springboot+fileupload;在此之前要先在配置文件中关闭掉原本springboot的文件上传解析,否则parseRequest函数处理返回为空;搭建完成之后导入相
前言:先来poc123456789101112131415161718192021222324import org.springframework.transaction.jta.JtaTransactionManager;import org.springframework.jndi.JndiTemplate;import java.io.*;import java.lang.reflect.Field;public class s1
最近爆出了一个新的rce;有趣的是不是爆出如何,而是爆出之后的反复bypass;这篇文章就先来追踪一下漏洞原理; 问题出现在error处;会触发log4j2的错误处理流程打印异常日志; 来个demo; 123456789101112import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;public class exploits
前言:之前分析各种组件或者框架的反序列化漏洞,fastjson或者shiro或者weblogic还有spring;其漏洞出发点都是在readObject;但是具体为什么是要在readObject点触发还没有细致的学习,今天恶补一下Java的原生序列化和反序列化; 序列化的应用:当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个Java对象转换为字节序列,才能
前言: 我最开始发现这个有趣的点的时候,是我看到了Vinoth Kumar发掘了一个Facebook的xss;细致的看了一遍他的挖掘思路,其实是利用iframe window的postMessage进行xss;当没有验证来源的时候就可以接受任意来源的数据,攻击者相应的伪造postMessage函数就可达到篡改内容的效果; 在读此文章前可以考虑先阅读如下几篇文章: https://javascript.info/cros
因为之前分析过反序列化的一些点,之后有段时间没怎么看,现在重拾一下,理解一下漏洞原理和相关运行流程; 这篇文章主要分析一下Templatesmpl下的攻击方法,这种方法在实际攻击中有点鸡肋,但是凸显了很多fj的实现机制,可以更好理解fj解析流程;值得追踪一波; 这里拿着1.2.47的版本来进行分析一下走向;在进行序列化的时候会new一个SerializeWriter;然而在进行反序列化的时候则会去先初始化ParserConfig对象,以
前言:这篇文章在很多博客上看到,觉得很有意思,学习一波; 正文:其实通过细读陆队和一些其他的文章,Dom clobbering xss的本质就是利用id或者name去对全局变量的劫持覆盖;在目标站点的script代码中如果有相应的引用;就会造成漏洞; 先来看一下如何进行劫持;简单看一下图: 通过这个图不难理解,我们成功劫持掉了cookie;document.cookie已经成功被我们的标签给覆盖了;但是如果这里写入的是<img
前言: Prototype pollution是一个老生常谈的问题了;JavaScript是一门非常灵活的语言,在某些方面可能比PHP更加灵活。所以,除了一些sql注入和代码执行等注入型漏洞外,也会有一些独有的安全问题,比如prototype polllution。 正文: 说javascript灵活是因为一般的OOP语言会使用class关键字进行模版的定义,从这个class去实例化的对象都会自然的继承了模版中相应的属性
前言: 之前大二暑假开发了一款基于终端的webshell-controller;相应的代码开源选择了在中秋节前夕;在后期的比赛当中也展现出相应的风采,比如上海的极客谷杯中相应的数据库操作和反弹shell之类的操作完美施展,没有什么错误;在shell-hack中我个人加入相对比较重要的一些点是支持bypass disable_functions; 下面主要介绍两个bypass的原理实现; 正文: shell-hack有多种
s1mple's safety