Java(63 篇文章)

用Java 调试协议JDWP(Java DEbugger Wire Protocol) 弹shell

yzmm
1688 阅读

`JPDA(Java Platform Debugger Architecture)` 是 Java 平台调试体系结构的缩写,通过 JPDA 提供的 API,开发人员可以方便灵活的搭建 Java 调试应用程序。 大概在2015年左右用tangscan扫到了很几次jdwp服务端口,当时只是简单的测试过这个服务。 这个jdwp服务提供来对java程序调试的功能,只要有程序启动时使用了jdwp参数且端口...

阅读全文

JShell(JDK9+) eval 任意Java代码片段执行

yzmm
1915 阅读

最近几年开发RASP产品期间整理了很多的Java语言的特性,不过一直都没有时间写文章,可能真的是变懒了吧~ JDK9开始提供了一个叫jshell的功能,让开发者可以想python和php一样在命令行下愉快的写测试代码了。JDK9已经发布距今(2019年9月)了2年时间了,但在生产环境下使用JDK8以上的应用依旧寥寥无几。不过我们只需要利用这一特性其实是可以实现任意代码执行了,也就是说正真意义上的原...

阅读全文

Java11之前使用sun.misc.Unsafe定义类对象

yzmm
1349 阅读

上一篇文章写了如何使用Unsafe来创建任意类对象的实例,这篇文章接着写如何使用Unsafe来定义一个类对象。 正常情况下我们可以重写ClassLoader类来实现定义任意的类,但是某些时候我们无法通过自定义ClassLoader来定义类的时候可以使用这种方式来定义一个class,但是前提条件是在JDK11之前的版本。 如果我们需要定义一个名为`com.anbai.lingxe.agent.AbT...

阅读全文

Gson sun.misc.Unsafe.allocateInstance序列化Java对象

yzmm
2898 阅读

最近使用Fastjson的时候遇到一个类无空构造方法导致无法反序列化类对象,试了下Fastjson和Jackson都无法创建,而Gson确可以无视构造方法反序列化对象。 **测试类:TestRequest.java** ```java public class TestRequest implements Serializable { private String method; private ...

阅读全文

Java SpEL、Ognl、MVEL2表达式Hook项目

yzmm
2180 阅读

最近Spring连续两个命令执行,SpEL表达式在Spring的子项目中大量的使用甚至是滥用让人感觉不到安全。昨天写了一个Hook并记录Java表达式语言的项目,可用于观测命令和执行点调用链信息。适当的改改可以直接用于拦截未知的表达式注入漏洞攻击。 git地址:https://github.com/anbai-inc/javaweb-expression 这是一个专门Hook并记录Java表达式语...

阅读全文

IDEA 由数据库表生成带注释的java实体类代码

yzmm
3353 阅读

Java生成实体类代码有非常多的方案,而且强大的可以生成整个项目的解决方案,不过这里只是讨论实体类的生成。IDEA提供了类似的实体类生成脚本,用起来比较方便简捷。不过需要用IDEA支持的jvm脚本语言开发(默认示例是Clojure、Groovy)。 但是自带的脚本简单到生成的代码都没法用(有bug),所以花了点时间完善了下脚本实现代码,这里简单介绍下如何使用我们的脚本去生成java实体类代码。 连...

阅读全文

java inputstream toString

yzmm
1523 阅读

在以前的众多执行利用代码当中获取命里执行结果一直是一个比较麻烦的事情,常见的byte/char[50000]、readFully、readLine但总会有很多不便,比如说readLine的while循环读取问题。使用java.util.Scanner(xxx).useDelimiter(xxx)可以快速解决命令执行回显问题。 ```java import java.io.IOException; ...

阅读全文

HttpServletRequestWrapper 编码问题

yzmm
1594 阅读

当发现经过Wrapper后Spring setCharacterEncoding还乱码时,可以实现HttpServletRequestWrapper,重写public String[] getParameterValues(String name) {....}等方法,再Encoding已设了encoding。 ```java /** * 获取应用层的编码方式,应用层Filter需要setChar...

阅读全文

Oracle public权限用户通过Oracle索引提权

yzmm
1746 阅读

今天下午2点左右看到这个漏洞就立马测试了一下发现没成功(我测试的版本是12.1.0.1.0 和oracle 10g),google了一下找到了[INDEX to SYSDBA without SELECT](http://www.oracleforensics.com/wordpress/index.php/2014/03/27/index-to-sysdba-without-select/)。 ...

阅读全文
63 条记录