Java代码审计
3riC5r
这个作者很懒,什么都没留下…
展开
-
国产软件漏洞分析系列3:泛微OA e-cology 8.1代码审计(1)
整体浏览了一下代码,大概翻了一下。大概就能明白为什么总是报出来sql注入、xss跨站脚本攻击了。我随便拿了一个类来给大家分析一下:/* */ import java.io.File;/* */ import java.io.FileInputStream;/* */ import java.io.IOException;/* */ import ja...原创 2019-10-20 21:36:36 · 1773 阅读 · 0 评论 -
[连载5]高端java课程-代码审计-halo开源博客系统-sprint boot+flexmark+hibernate-漏洞组合思维训练
0X01 序言今天本来想找个简单点的小菜开开心,最后吃到一个死蟑螂,心塞!我说怎么github的issue里面就没有人报什么安全问题,最近一个版本才处理了一个storage xss的问题。自己搞了两个小时,才发现不是没人搞它,是真的太简单了,一个都没有十个输入点,前台输入点更少。我也就算是把审计过程给大家讲解一下,当个案例吧。0X02 确定开发框架/路由/传参老规矩,先...原创 2019-10-16 23:13:00 · 741 阅读 · 0 评论 -
[连载4]高端java课程-ModelAndView的深层审计思考
我在对国内的一个知名软件做代码审计的过程中,因为一直在考虑漏洞组合利用链,其他的利用过程已经基本上搞定了三个0Day的漏洞,现在需要找到一个文件越权转移的地方。确实花了很多时间,测试了各种办法,也没有什么特别好的手法。昨天晚上我又翻出来,寻思换个思路吧,我就想随便翻翻,就从SSRF的思路去审计一下,这不就有了昨天晚上发的那篇文章《[连载3]高端java课程-代码审计中常见漏洞的特征函数-SSR...原创 2019-10-16 17:25:51 · 152 阅读 · 0 评论 -
[连载3]高端java课程-代码审计中常见漏洞的特征函数-SSRF
这个函数的两个参数分别为uri地址和post的数据,均为string型。在函数内部并未对这两个参数进行任何过滤,如果调用这个函数的调用方,也没有对输入参数进行校验和过滤的话,那就存在ssrf漏洞,只是这个漏洞提供的http method为post方式,并且post的contene-type为json。[高端java课程]原创 2019-10-15 20:05:12 · 463 阅读 · 0 评论 -
精品漏洞第4弹——层层放大java审计的攻击面
审核呆子有话说:从系统全局配置文件入手以便精准锁定框架入口和审计对象,对框架运行流程的分析足以体现作者深厚的代码审计功底。大型的Java系统都会使用Commons Collections这个组件,当开发者在不慎使用readObject()时,便会产生严重的后果。功夫不负有心人,全静态审计并找出反序列化的触发点,导致远程命令执行。(本篇分析源自2017年7月精品漏洞第三...转载 2019-10-15 19:16:29 · 293 阅读 · 0 评论 -
[连载2]高端java课程-代码审计中常见漏洞的特征函数-xxe-补充篇(框架设计者的无奈)
[高端java课程]系列讲座我在一个软件中发现了一个类XXEUtil,主要作用是阻止出现xxe漏洞,进行一个预防措施,这确实是一个好的方案。奈何!这个方案有个重大的弱点,他不是类似spring框架的AOP编程的思想实现的切面编程,需要开发人员在实际使用xml的时候调用这个类中的方法。我截取了这个类的代码如下:import javax.xml.parsers.DocumentB...原创 2019-10-15 19:01:38 · 394 阅读 · 0 评论 -
[连载]java代码审计中常见漏洞的特征函数-xxe
本期要点当一个比较完善的经过其他审计专家进行过代码审计的软件,希望直接能够找到单一的可以直接利用的漏洞,确实有点接近天方夜谭。各种代码审计专家,他们不会进行动态调试,基本上都静态的根据各种审计软件或者设计手册进行审计。这里就必然会出现一种可能性,静态审计无法对动态结果进行猜测多个小的不起眼的问题,单个是无法利用的,并且改动对于软件的整体结构有很大影响,那么开发团队就会倾向于不修改。所以我们一定不要孤立的去看任何一个小的漏洞或者不正确的写法甚至于,原创 2019-10-15 17:51:41 · 469 阅读 · 0 评论 -
Java代码审计--checklist
通常我喜欢把代码审计的方向分为业务层安全问题、代码实现和服务架构安全问题,。1. 业务层安全常见问题业务层的安全问题集中在业务逻辑和越权问题上,我们在代码审计的过程中尽可能的去理解系统的业务流程以便于发现隐藏在业务中的安全问题。1.1 业务层中常见的安全问题Checklist 用户登陆、用户注册、找回密码等功能中密码信息未采用加密算法。 用户登陆、用户注册、...转载 2019-10-14 20:14:30 · 853 阅读 · 0 评论 -
Java代码审计手册(English)
Table of ContentsPredictable pseudorandom number generator (PREDICTABLE_RANDOM) Predictable pseudorandom number generator (Scala) (PREDICTABLE_RANDOM_SCALA) Untrusted servlet parameter (SERVLET...转载 2019-10-14 19:17:31 · 10755 阅读 · 0 评论 -
Java下奇怪的命令执行
No.2前言首先Java下的命令执行大家都知道常见的两种方式:1.使用ProcessBuilderProcessBuilder pb=new ProcessBuilder(cmd);pb.start();2.使用RuntimeRuntime.getRuntime().exec(cmd)也就是说上面cmd参数可控的情况下,均存在命令执行的问题。但是话题回来,不太清...转载 2019-10-14 18:46:42 · 628 阅读 · 0 评论