| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
基础篇
第 1 章 Java 代码审计基础 3
1.1 Java Web 环境的搭建 3
1.1.1 JDK 的安装与配置 3
1.1.2 Tomcat 的安装与配置 8
1.2 Java Web 动态调试方法 13
1.2.1 本地动态调试 13
1.2.2 远程动态调试 15
1.3 代码审计工具介绍 24
1.3.1 IDEA 24
1.3.2 SpotBugs 28
1.3.3 Fortify 33
1.3.4 CodeQL 36
1.3.5 Semgrep 45
入门篇
第 2 章 Java 代码审计常见漏洞 51
2.1 SQL 注入 51
2.1.1 SQL 注入简介 51
2.1.2 常见的 SQL 注入漏洞 52
2.1.3 SQL 注入漏洞代码审计要点与防御方法 66
2.2 XSS 漏洞 66
2.2.1 XSS 漏洞简介 67
2.2.2 常见的 XSS 漏洞 67
2.2.3 XSS 漏洞代码审计要点 70
2.2.4 XSS 漏洞的防御方法 70
2.3 命令执行漏洞 71
2.3.1 命令执行漏洞简介 71
2.3.2 常见的命令执行漏洞 71
2.3.3 命令执行漏洞代码审计要点 82
2.3.4 命令执行漏洞的防御方法 82
2.4 XXE 漏洞 83
2.4.1 XXE 漏洞简介 83
2.4.2 常见的 XXE 漏洞 83
2.4.3 XXE 漏洞代码审计要点 91
2.4.4 XXE 漏洞的防御方法 91
2.5 任意文件上传漏洞 92
2.5.1 任意文件上传漏洞简介 92
2.5.2 常见的任意文件上传漏洞 93
2.5.3 任意文件上传漏洞代码审计要点 106
2.5.4 任意文件上传漏洞的防御方法 107
2.6 SSRF 漏洞 109
2.6.1 SSRF 漏洞简介 109
2.6.2 常见的 SSRF 漏洞 110
2.6.3 SSRF 漏洞代码的审计要点 115
2.6.4 SSRF 漏洞的防御方法 115
2.7 反序列化漏洞 115
2.7.1 反序列化漏洞简介 115
2.7.2 常见的反序列化漏洞 116
2.7.3 反序列化漏洞代码审计要点 142
2.7.4 反序列化漏洞防御 142
第 3 章 基于 Java-sec-code 的代码审计 143
3.1 Java-sec-code 源码审计基础 143
3.1.1 Java-sec-code 项目介绍及搭建 143
3.1.2 Java-sec-code 审计的CodeQL 配置 145
3.2 Java-sec-code SQL 注入漏洞代码审计 147
3.2.1 常规手工审计 148
3.2.2 基于 CodeQL 的半自动化审计 153
3.3 Java-sec-code XSS 漏洞代码审计 156
3.3.1 常规手工审计 156
3.3.2 基于 CodeQL 的半自动化审计 161
3.4 Java-sec-code 命令执行漏洞代码审计 163
3.4.1 常规手工审计 163
3.4.2 基于 CodeQL 的半自动化审计 168
3.5 Java-sec-code XXE 漏洞代码审计 171
3.5.1 常规手工审计 171
3.5.2 基于 CodeQL 的半自动化审计 181
3.6 Java-sec-code 任意文件上传漏洞代码审计 188
3.6.1 常规手工审计 188
3.6.2 基于 CodeQL 的半自动化审计 196
3.7 Java-sec-code SSRF 漏洞代码审计 198
3.7.1 常规手工审计 198
3.7.2 基于 CodeQL 的半自动化审计 208
3.8 Java-sec-code 反序列化漏洞代码审计 214
3.8.1 常规手工审计 214
3.8.2 基于 CodeQL 的半自动化审计 242
高级篇
第 4 章 SSM 框架介绍及漏洞分析 247
4.1 SSM 框架介绍 247
4.2 SSM 框架漏洞分析 262
4.2.1 CVE-2022-22965 Spring Framework 远程代码执行漏洞分析 262
4.2.2 CVE-2020-26945 MyBatis 远程代码执行漏洞分析 273
4.3 SSM 框架代码审计方法总结 279
第 5 章 SSH 框架介绍及漏洞分析 280
5.1 SSH 框架介绍 280
5.2 SSH 框架漏洞分析 293
5.2.1 Hibernate 框架 HQL 注入漏洞分析 294
5.2.2 Struts2 框架 S2-048 漏洞分析 297
5.2.3 Spring 框架 Messaging 组件远程代码执行漏洞分析 306
5.3 SSH 框架代码审计方法总结 316
第 6 章 Spring Boot+MyBatis 框架介绍及漏洞分析 319
6.1 Spring Boot 介绍 319
6.2 Spring Boot 漏洞分析 326
6.2.1 Spring Boot Actuator 未授权访问 327
6.2.2 CNVD-2016-04742 Spring Boot whitelabel error page SpEL RCE 分析 329
6.2.3 Spring Boot Actuator SnakeYAML RCE 338
6.2.4 CNVD-2019-11630 Spring Boot jolokia logback JNDI RCE 分析 346
6.2.5 Spring Boot restart logging.config groovy RCE 356
6.3 Spring Boot 框架代码审计方法总结 366
6.3.1 Spring Boot SpEL 漏洞审计方法总结 366
6.3.2 Spring Boot JNDI 注入漏洞审计方法总结 367
6.3.3 Spring Boot groovy 脚本漏洞审计方法总结 367
6.3.4 MyBatis SQL 注入漏洞审计方法总结 368
实战篇
第 7 章 代码审计实战 371
7.1 youkefu 代码审计 371
7.1.1 youkefu 介绍及环境搭建 371
7.1.2 SSRF 漏洞代码审计 375
7.1.3 反序列化漏洞代码审计 381
7.1.4 XXE 漏洞代码审计 385
7.1.5 SQL 注入漏洞代码审计 391
7.1.6 任意文件上传漏洞代码审计 396
7.2 JeeWMS 代码审计 401
7.2.1 JeeWMS 环境搭建 402
7.2.2 JeeWMS XXE 漏洞审计 409
7.2.3 JeeWMS 任意文件下载漏洞审计 416
7.2.4 JeeWMS 任意文件上传漏洞审计 421
7.2.5 JeeWMS SQL 注入漏洞审计 428