前几天有文章(传送门)分析了 Apktool 之前版本存在的两个漏洞,其中第二个漏洞是解包 Apk 时通过类似目录遍历的方式把 unknown 中的脚本解压到线上的网站目录从而实现 RCE。这让我想起了之前一篇讲述 Python 中解压文件时的安全问题的文章(传送门),其实 Apktool 这个也是 Java 做文件解压时存在一样的问题了。0x01 Demo 代码Java 中做压缩/解压操作代码package ZipTest; import java.io.*; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; i...

Tomcat 官方在 9 月 19 号公布了两个漏洞 CVE-2017-12616 和 CVE-2017-12615。当启用了虚拟路径,那么虚拟路径中的 jsp 脚本可被攻击者直接获取到源码。当启用了 PUT 方法,可被攻击者上传恶意 jsp 脚本导致代码执行。本文会对漏洞的产生以及官方的修复方法进行分析。0x00 Tomcat 动态调试使用动态调试的方式可以很清楚的跟踪漏洞触发的整个流程,下面是对 Tomcat 进行动态调试的配置Linux:将 bin/startup.sh 拷贝一份为 debug.startup.sh,再将 debug.startup.sh 中的exec "...

最近一直都在学习 Java 安全相关的东西,这两个玩意可以说是经常碰到了,做个笔记。话说要是在两个月前我是万万想不到我现在整天接触的居然是 Java,一边学习 Java 一边搞 = =0x00 反射机制利用反射机制能干的事情:在运行时动态对任意的类实例化在运行时分析类,获取类的成员变量和方法等信息调用任意方法0x01 获取 Class 对象的三种方法Class 类保存了所有对象运行时的类型标识,虚拟机在运行时根据类型信息再去选择对应的方法来执行。这里的 Class 可以理解为类类型,跟平时说的 Class 是有区别的。下面是如何去获取一个 Class 类型的实例。Object 类中的 g...

0x00 简述好几年前就有人提到这个关于JMX RMI的攻击了,个人觉得这个只是因为没有做到安全配置而导致存在的可被攻击利用的点。攻击者可以远程注册一个恶意的 MBean,再去调用里面的用于执行命令的方法达到攻击效果。代码来自参考文章,只对代码做了少许改动,他还为 metasploit 写了这个攻击模块,具体的可以看参考链接。主要还是去了解其中的攻击利用实现,用到的也都是正常功能了。前提条件:允许远程访问,没有开启认证 (com.sun.management.jmxremote.authenticate=false)能够远程注册 MBean (javax.management.loadi...

0x00 CommonsBeanutilsCollectionsLogging1依赖:commons-beanutils:1.9.2commons-collections:3.1commons-logging:1.2ysoserial/payloads/CommonsBeanutilsCollectionsLogging1.java:public class CommonsBeanutilsCollectionsLogging1 implements ObjectPayload<Object> { public Object getObject(final Stri...