![](https://img-blog.csdnimg.cn/20190918140213434.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java安全
文章平均质量分 95
发布对java安全方向的审计类知识
b1gpig安全
Debug the world.
展开
-
java安全(八)TransformedMap构造POC
上一篇构造了一个了commons-collections的demopackage test.org.vulhub.Ser;import org.apache.commons.collections.Transformer;import org.apache.commons.collections.functors.ChainedTransformer;import org.apache.commons.collections.functors.ConstantTransformer;impo原创 2022-07-31 15:47:46 · 1083 阅读 · 0 评论 -
java安全(七) 反序列化3 CC利用链 TransformedMap版
给个关注?宝儿!给个关注?宝儿!给个关注?宝儿! 关注公众号:b1gpig信息安全,文章推送不错过众所周知,CommonCollections利⽤链是作为反序列化学习不可绕i过的一关图解先挂一张wh1te8ea的利用链图解,非常直观!代码demo分析:代码使用了phith0n大佬的代码,对原本复杂的源码进行了优化,适合复现以及更加深刻理解demo代码:package test.org.vulhub.Ser;import org.apache.commons.collecti.原创 2022-04-21 15:02:47 · 3388 阅读 · 5 评论 -
java安全(六)java反序列化2,ysoserial调试
ysoserial下载地址:https://github.com/angelwhu/ysoserialysoserial可以让⽤户根据⾃⼰选择的利⽤链,⽣成反序列化利⽤数据,通过将这些数据发送给⽬标,从⽽执⾏⽤户预先定义的命令。什么是利⽤链?利⽤链也叫“gadget chains”,我们通常称为gadget。如果你学过PHP反序列化漏洞,那么就可以将gadget理解为⼀种⽅法,它连接的是从触发位置开始到执⾏命令的位置结束,在PHP⾥可能是 __desctruct 到 eval ;如果你没学过其他语原创 2022-04-19 16:06:34 · 3807 阅读 · 3 评论 -
java安全(五)java反序列化
序列化在调用RMI时,发现接收发送数据都是反序列化数据.例如JSON和XML等语言,在网络上传递信息,都会用到一些格式化数据,大多数处理方法中,JSON和XML支持的数据类型就是基本数据类型,整型、浮点型、字符串、布尔等,如果开发者希望在传输数据的时候直接传输一个对象,那么就不得不想办法扩展基础的JSON(XML)语法。比如,Jackson和Fastjson这类序列化库,在JSON(XML)的基础上进行改造,通过特定的语法来传递对象.RMI使用java等语言内置的序列化方法,将一个对象转化成一串二进制原创 2022-04-09 10:13:08 · 6324 阅读 · 1 评论 -
java安全(四) JNDI
JNDIJNDI(Java Naming and Directory Interface)是Java提供的Java 命名和目录接口。通过调用JNDI的API应用程序可以定位资源和其他程序对象。JNDI是Java EE的重要部分,需要注意的是它并不只是包含了DataSource(JDBC 数据源),JNDI可访问的现有的目录及服务有:JDBC、LDAP、RMI、DNS、NIS、CORBA通俗理解,使用jndi作为数据源而不是直接去连接数据库,将数据库交给jndi去配置管理,jndi通过数据源名称去应用数据原创 2022-03-25 20:45:11 · 8931 阅读 · 0 评论 -
java安全(三)RMI
1.RMI 是什么RMI(Remote Method Invocation)即Java远程方法调用,RMI用于构建分布式应用程序,RMI实现了Java程序之间跨JVM的远程通信。RMI底层通讯采用了Stub(运行在客户端)和Skeleton(运行在服务端)机制,RMI调用远程方法的大致如下:1.RMI客户端在调用远程方法时会先创建2.Stub(sun.rmi.registry.RegistryImpl_Stub)。Stub会将Remote对象传递给远程引用层(java.rmi.server.Remo原创 2022-03-22 11:24:17 · 5345 阅读 · 0 评论 -
java安全(二):JDBC|sql注入|预编译
1 JDBC基础JDBC(Java Database Connectivity)是Java提供对数据库进行连接、操作的标准API。Java自身并不会去实现对数据库的连接、查询、更新等操作而是通过抽象出数据库操作的API接口(JDBC),不同的数据库提供商必须实现JDBC定义的接口从而也就实现了对数据库的一系列操作。2 JDBCConnection2.1连接Java通过java.sql.DriverManager来管理所有数据库的驱动注册,所以如果想要建立数据库连接需要先在java.sql.Drive原创 2021-11-14 10:40:12 · 6162 阅读 · 0 评论 -
Java安全(一) : java类 | 反射
1.java基础Java平台共分为三个主要版本Java SE(Java Platform, Standard Edition,Java平台标准版)、Java EE(Java Platform Enterprise Edition,Java平台企业版)、和Java ME(Java Platform, Micro Edition,Java平台微型版)。2. java类2.1Classloader 类加载机制Java是一个依赖于JVM(Java虚拟机)实现的跨平台的开发语言。Java程序在运行前需要先编译原创 2021-10-20 19:57:14 · 3356 阅读 · 0 评论