MCPcopy Index your code
hub / github.com/TonyD0g/JavaHacker

github.com/TonyD0g/JavaHacker @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
794 symbols 1,331 edges 185 files 11 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

JavaHacker ——更新ing

—— 记录自己学习Java安全的过程,无技术含量

在学习Java安全的过程中很迷茫,遂做记录方便复习

在此感谢前辈们的研究成果,没有他们就没有我如此方便学习Java安全


注意事项:

1.文中涉及到的安全文章都会引出处,自行导航过去查阅文章即可

2.为避免重复的复制粘贴,只会提取文章里的一点点内容作为简洁概括和梳理脉络,具体还需要自行详读师傅们的文章

3.如果看不懂了,就自行查阅文章,或继续往下看。回过头来可能就懂了

4.个人能力有限,大多是个人的理解。如出错欢迎提交issue

5.不是教学贴,只是简单记录自己学习Java安全的过程,更像是粗略的读书笔记,所以不详细。

6.个人的学习过程在 【我的学习历程.txt】中


Java安全技能树——正在点技能树中

1.Java开发基础

  • Java SE
  • 代码整洁之道
  • Java ASM基础
  • IDEA使用技巧

2.Java安全基础

  • 反射机制

  • 类加载机制

  • 动态代理机制
  • RMI,RMI攻击
  • 本地命令执行和反弹shell
  • JNDI
  • JVM基础(JVM结构,垃圾回收机制/器,字节码结构,执行引擎等)
  • EL表达式基础
  • SpEL表达式基础

3.Java反序列化

  • URLDNS链
  • CC

  • CC1

  • CC6,CC6-Shiro
  • CC3
  • CC6-Shiro550
  • CC4
  • Commons Beanutils,CB无依赖
  • cc2
  • cc5
  • cc7
  • JDK7u21
  • 利用zkar初识序列化结构
  • 奇技淫巧
  • 终极Java反序列化Payload缩小技术
  • Java反序列化回显的多种姿势

4.开源项目学习

  • JSPHorse-master 和 JSP免杀学习
  • 冰蝎自定义协议仿写
  • JSPKiller
  • Gadgetinspector (还没看代码,只看了文章)
  • 学习JSPFinder源码,并改进为JSPHunter
  • 实现java版本的mysql蜜罐:Groundhog
  • 基于jvm-sandbox的简易rasp
  • 二开CS基础(beacon部分不会,因为需要逆向,C,shellcode的技术)
  • ShortPayload (终极 Java 反序列化 Payload 缩小技术)

5.Fastjson

  • Fastjson基础
  • Fastjson 1.2.24
  • Fastjson 1.2.24以上版本绕过
  • Fastjson1.2.62-1.2.68版本反序列化

6.Spring基础

  • 浅学设计模式(策略,观察者,装饰,工厂,抽象工厂)(安全开发必看)

  • 代码整洁之道(安全开发必看)

  • Spring基础

7.内存马基础

  • 内存马基础
  • Filter型内存马
  • Listener型内存马
  • Servlet型内存马
  • Valve型内存马

8.CodeQL基础


用到即查

文档: https://www.runoob.com/java/java-tutorial.html

Java API: https://www.w3cschool.cn/java/dict

https://docs.oracle.com/javase/8/docs/api/

参考:

https://github.com/Drun1baby/JavaSecurityLearning

GitHub - phith0n/JavaThings: Share Things Related to Java - Java安全漫谈笔记相关内容

Y4tacker/JavaSec

JavaSec

JavaSecurityLearning

Extension points exported contracts — how you extend this code

RemoteObj (Interface)
(no doc) [4 implementers]
1 Java安全基础/4 RMI/Code/AttackRegistry/RemoteObj.java
RemoteObj (Interface)
(no doc) [4 implementers]
1 Java安全基础/6 JNDI/Code/RemoteObj.java
CalculateAble (Interface)
(no doc) [2 implementers]
0 Java开发基础/1 Java SE基础/10.异常处理,接口/TableAreaException.java
User (Interface)
(no doc) [2 implementers]
1 Java安全基础/4 RMI/Code/AttackClient/User.java
PayAble (Interface)
(no doc) [2 implementers]
0 Java开发基础/1 Java SE基础/10.异常处理,接口/PayAbleException.java
MoveAble (Interface)
(no doc) [1 implementers]
0 Java开发基础/1 Java SE基础/10.异常处理,接口/TableAreaException.java

Core symbols most depended-on inside this repo

set
called by 34
0 Java开发基础/1 Java SE基础/6.类置取,静态方法,重构等/MoneyClass.java
close
called by 30
4 Fastjson基础/4 Fastjson1.2.62-1.2.68版本/Code/VulAutoCloseable.java
toString
called by 22
0 Java开发基础/1 Java SE基础/8.继承/polymorphic.java
print
called by 21
0 Java开发基础/1 Java SE基础/5.构造方法,类的组合等/WorkerClass2.java
add
called by 18
0 Java开发基础/1 Java SE基础/6.类置取,静态方法,重构等/MoneyClass.java
add
called by 16
0 Java开发基础/1 Java SE基础/11.集合类/ArraySort1.java
getName
called by 15
4 Fastjson基础/1 基础/Code/demo/Student.java
stop_key
called by 14
0 Java开发基础/1 Java SE基础/12.项目实训/src/com/ncist/Pokemon/Message/MessageMain.java

Shape

Method 524
Class 261
Interface 7
Function 2

Languages

Java100%
Go1%

Modules by API surface

0 Java开发基础/1 Java SE基础/8.继承/polymorphic.java21 symbols
0 Java开发基础/1 Java SE基础/5.构造方法,类的组合等/WorkerClass2.java18 symbols
0 Java开发基础/1 Java SE基础/5.构造方法,类的组合等/WorkerClass.java18 symbols
0 Java开发基础/1 Java SE基础/8.继承/Inherit.java17 symbols
0 Java开发基础/1 Java SE基础/10.异常处理,接口/TableAreaException.java15 symbols
0 Java开发基础/1 Java SE基础/10.异常处理,接口/PayAbleException.java13 symbols
0 Java开发基础/1 Java SE基础/5.构造方法,类的组合等/CarClass.java12 symbols
0 Java开发基础/1 Java SE基础/11.集合类/ListArray3.java12 symbols
3 开源项目学习/6 二开CS/Code/CrackSleeve.java11 symbols
0 Java开发基础/1 Java SE基础/9.接口,抽象/TableInfo1.java11 symbols
0 Java开发基础/1 Java SE基础/7.继承,泛化,多态/CelsiusClass.java11 symbols
0 Java开发基础/1 Java SE基础/11.集合类/ListArray1.java11 symbols

Datastores touched

(mysql)Database · 1 repos
dbDatabase · 1 repos
pokemondbsDatabase · 1 repos

For agents

$ claude mcp add JavaHacker \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact