Skip to content

Drun1baby/JavaSecurityLearning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaSecurityLearning

项目的初衷是为了让更多师傅在学习 Java 安全的时候能够有一条比较清晰的学习路线,也希望师傅们通过这个项目学习 Java 安全时有能够所收获。

项目文件夹中包含了部分用于漏洞调试的代码(如果有些东西自己搭建失败,可以复用仓库代码),对应文章记录在博客中。

基础开发(是一定要学的)

先学 Springboot【狂神说Java】SpringBoot最新教程IDEA版通俗易懂

学一下 vue,VUE 可以过快一点:尚硅谷Vue2.0+Vue3.0全套教程丨vuejs从入门到精通

学完这两个之后可以自己过一个小项目【实战】基于SpringBoot+Vue开发的前后端分离博客项目完整教学

  • 学完这些内容最多花费两个月

推荐的 Java 基础,哪块不懂看哪块,二倍速【狂神说Java】Java零基础学习视频通俗易懂

Java 安全基础

可以看b站白日梦组长视频,讲的非常好。

一开始学还是会有点懵的,学到后面自然而然就会了。

Java 反序列化基础

接着就可以开始 CC 链了;CC 链是 1-6-3-2-4-5-7

还有一个 CC11;这一块 CC 链的学习要多自己总结,有利于后续的学习。

CC 链部分结束,进入 shiro 部分,shiro 之前我们已经走过开发了,所以理解起来很简单。

后面根据自己需求可以补 Shiro 权限绕过的部分。

Java 反序列化进阶

LDAP 是包含在 JNDI 里面的


学完上面的之后就可以开始学习其他的了。

Fastjson

2022 蓝帽杯初赛有一道 fastjson 1.2.68 的题目 CTFReposityStore

Log4j2

这些学完之后可以学一下内存马,Weblogic,Tomcat 和 Spring 开发;这里先学 Spring 开发。

Spring开发学习

Weblogic

以下四个洞虽然简单,但很有趣。

EL 表达式注入(本质上还是 OGNL 表达式注入)

内存马

关于内存马的环境搭建可以看我这一篇文章:Servlet 项目搭建 学习完之后最好自己可以用 Java Agent 实现一个 RASP

关于 Java 代码审计(很多人对这块其实有个误区)

其实 Java 安全不光只有反序列化,其实代码审计也是很重要的,我最开始学的时候就踏入了这个误区。

WebGoat 代码打底 WebGoat代码审计

详细的代码审计的文章与资料,指路 Java Owasp Top10 审计

Springboot 文件上传 RCE https://github.com/LandGrey/spring-boot-upload-file-lead-to-rce-tricks

查漏补缺

  • 其实链子没必要跟太多了,实战才是最重要的。

Java反序列化之C3P0链

Java OWASP 中的 XXE 代码审计

Java OWASP 中的 SQL 注入代码审计

Java 代码审计之华夏 ERP CMS v2.3

Java反序列化之 SnakeYaml 链

因为 SnakeYaml 的链子和 Fastjson 特别像,所以又复习了一遍 Fastjson 的源码

Java反序列化Fastjson篇05-写给自己看的一些源码深入分析

JS 引擎攻防 https://xz.aliyun.com/t/8697

Struts2 系列漏洞

这块应该是目前学习的重点之一

Java Struts2 学习与环境搭建

Java Struts2 系列 S2-001

Jackson 系列漏洞

Jackson 反序列化(一)漏洞原理

Jackson 反序列化(二)CVE-2017-7525

Jackson 反序列化(三)CVE-2017-17485

Jackson 反序列化 —— https://boogipop.com/2023/06/20/Jackson%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%80%9A%E6%9D%80Web%E9%A2%98/

Apache

Apache DolphinScheduler

CVE-2023-49299 & CVE-2024-23320 & CVE-2023-49109 漏洞概述:https://xz.aliyun.com/t/13981

Apache Ofbiz

https://y4tacker.github.io/2023/12/27/year/2023/12/Apache-OFBiz%E6%9C%AA%E6%8E%88%E6%9D%83%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C%E6%B5%85%E6%9E%90-CVE-2023-51467/

CodeQL

师傅可能在编译的时候还会遇到一些问题,然而新版本的 CodeQL 对于 Java 已经不需要编译了

CodeQL 入门

CodeQL 官方文档学习

用CodeQL分析漏洞_CVE-2022-42889 | l3yx's blog

漏洞挖掘

Tabby 的使用:https://github.com/wh1t3p1g/tabby

后记

感觉现在 go 用的真的很多,java 系列可能暂时断更了,或许在不久的将来会出一个 golangSecurityLearning

Star History Chart
  • 交流群

随着点 Star 的师傅越来越多,希望给师傅们提供一个交流的平台 同时平常有一些师傅会加我好友问问题,问的人越来越多,于是决定建个群,也可以让师傅们在群里交流。(希望以后会写 golang 的 SecurityLearning)

可加 VX DrunkbabySec

image

About

记录一下 Java 安全学习历程,也算是半条学习路线了

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy