課程簡介
本課程目的是為網(wǎng)絡(luò)安全行業(yè)培養(yǎng)合格的人才。網(wǎng)絡(luò)安全人才的培養(yǎng)是一項艱巨的任務(wù),其中代碼審計人才更是“稀缺資源”。本課程分為4部分。
第1部分 代碼審計基礎(chǔ),內(nèi)容包括開發(fā)環(huán)境搭建、代碼審計環(huán)境搭建。
第2部分 常見漏洞審計,介紹了多種常見漏洞的成因以及審計和修復(fù)的技巧。
第3部分 常見的框架漏洞,介紹了Java開發(fā)中經(jīng)常使用的一些框架的典型漏洞,如Spring、Struts2等的命令執(zhí)行漏洞。
第4部分 代碼審計實戰(zhàn),通過對真實環(huán)境下的Java應(yīng)用程序進行審計,向讀者詳細(xì)介紹了Java代碼審計的技巧與方法。
本課程可供軟件開發(fā)工程師、網(wǎng)絡(luò)運維人員、滲透測試工程師、網(wǎng)絡(luò)安全工程師,以及想要從事網(wǎng)絡(luò)安全工作的人員閱讀。
目標(biāo)收益
培訓(xùn)對象
課程大綱
第一部分:代碼安全審計基本原理 |
1.典型漏洞代碼案例分析 2.代碼審計的基本思想 3.代碼審計的現(xiàn)狀 4.代碼審計對象 5.代碼審計的目的 6.代碼審計的原則 7.代碼審計要素 8.代碼審計的內(nèi)容 9.代碼審計與漏洞驗證相關(guān)工具 10.代碼審計方法 11.代碼審計技術(shù) 12.代碼審計指標(biāo) |
第二部分:java代碼安全審計 |
1.Java代碼審計所需的基礎(chǔ)能力 2.代碼審計的常用思路 3.代碼審計輔助工具簡介 4.測試工具 5.反編譯工具 6.ClassLoader類加載機制 7.Java動態(tài)代理 8.可用于Java Web的安全開發(fā)框架 9.Java代碼靜態(tài)掃描工具 10.FindBugs與FindSecBugs插件 11.公開漏洞查找平臺 12.《Java語言源代碼漏洞測試規(guī)范》解讀 13.Java源代碼漏洞測試總則 14.Java源代碼漏洞測試工具 15.Java源代碼漏洞測試文檔 16.Java源代碼漏洞測試內(nèi)容 |
第三部分: 常見漏洞審計(上) |
1.SQL注入漏洞 2.執(zhí)行SQL語句的幾種方式 3.常見Java SQL注入 4.常規(guī)注入代碼審計 5.二次注入代碼審計 6.SQL注入漏洞修復(fù) 7.任意文件上傳漏洞 8.常見文件上傳方式 9.文件上傳漏洞審計 10.文件上傳漏洞修復(fù) 11.XSS漏洞 12.XSS常見觸發(fā)位置 13.反射型XSS 14.存儲型XSS 15.XSS漏洞修復(fù) 16.目錄穿越漏洞 17.目錄穿越漏洞簡介 18.目錄穿越漏洞審計 19.目錄穿越漏洞修復(fù) 20.URL跳轉(zhuǎn)漏洞 21.URL重定向 22.URL跳轉(zhuǎn)漏洞審計 23.URL跳轉(zhuǎn)漏洞修復(fù) 24.命令執(zhí)行漏洞 25.命令執(zhí)行漏洞簡介 26.ProcessBuilder命令執(zhí)行漏洞 27.Runtime exec命令執(zhí)行漏洞 28.命令執(zhí)行漏洞修復(fù) |
第四部分: 常見漏洞審計(下) |
1.XXE漏洞 2.XML的常見接口 3.XXE漏洞審計 4.XXE漏洞修復(fù) 5.SSRF漏洞 6.SSRF漏洞簡介 7.SSRF漏洞常見接口 8.SSRF漏洞審計 9.SSRF漏洞修復(fù) 10.SpEL表達(dá)式注入漏洞 11.SpEL介紹 12.SpEL漏洞 13.SpEL漏洞審計 14.SpEL漏洞修復(fù) 15.Java反序列化漏洞 16.Java序列化與反序列化 17.Java反序列化漏洞審計 18.Java反序列化漏洞修復(fù) 19.SSTI模板注入漏洞 20.SSTI漏洞審計 21.SSTI漏洞修復(fù) 22.整數(shù)溢出漏洞 23.整數(shù)溢出漏洞介紹 24.整數(shù)溢出漏洞修復(fù) 25.硬編碼密碼漏洞 26.不安全的隨機數(shù)生成器 |
第五部分: 常見的java 框架漏洞 |
1.Spring框架 2.CVE-2018-1260 Spring Security OAuth2 RCE 3.CVE-2018-1273 Spring Data Commons RCE 4.CVE-2017-8046 Spring Data Rest RCE 5.Struts2介紹 6.OGNL表達(dá)式介紹 7.S2-045遠(yuǎn)程代碼執(zhí)行漏洞 8.S2-048遠(yuǎn)程代碼執(zhí)行漏洞 9.S2-057遠(yuǎn)程代碼執(zhí)行漏洞 10.OWASP 0 2017”漏洞的代碼審計 11.OWASP 0 2017”之外常見漏洞的代碼審計 12.Java EE開發(fā)框架安全審計 13.Jspxcms代碼審計實戰(zhàn) |
第一部分:代碼安全審計基本原理 1.典型漏洞代碼案例分析 2.代碼審計的基本思想 3.代碼審計的現(xiàn)狀 4.代碼審計對象 5.代碼審計的目的 6.代碼審計的原則 7.代碼審計要素 8.代碼審計的內(nèi)容 9.代碼審計與漏洞驗證相關(guān)工具 10.代碼審計方法 11.代碼審計技術(shù) 12.代碼審計指標(biāo) |
第二部分:java代碼安全審計 1.Java代碼審計所需的基礎(chǔ)能力 2.代碼審計的常用思路 3.代碼審計輔助工具簡介 4.測試工具 5.反編譯工具 6.ClassLoader類加載機制 7.Java動態(tài)代理 8.可用于Java Web的安全開發(fā)框架 9.Java代碼靜態(tài)掃描工具 10.FindBugs與FindSecBugs插件 11.公開漏洞查找平臺 12.《Java語言源代碼漏洞測試規(guī)范》解讀 13.Java源代碼漏洞測試總則 14.Java源代碼漏洞測試工具 15.Java源代碼漏洞測試文檔 16.Java源代碼漏洞測試內(nèi)容 |
第三部分: 常見漏洞審計(上) 1.SQL注入漏洞 2.執(zhí)行SQL語句的幾種方式 3.常見Java SQL注入 4.常規(guī)注入代碼審計 5.二次注入代碼審計 6.SQL注入漏洞修復(fù) 7.任意文件上傳漏洞 8.常見文件上傳方式 9.文件上傳漏洞審計 10.文件上傳漏洞修復(fù) 11.XSS漏洞 12.XSS常見觸發(fā)位置 13.反射型XSS 14.存儲型XSS 15.XSS漏洞修復(fù) 16.目錄穿越漏洞 17.目錄穿越漏洞簡介 18.目錄穿越漏洞審計 19.目錄穿越漏洞修復(fù) 20.URL跳轉(zhuǎn)漏洞 21.URL重定向 22.URL跳轉(zhuǎn)漏洞審計 23.URL跳轉(zhuǎn)漏洞修復(fù) 24.命令執(zhí)行漏洞 25.命令執(zhí)行漏洞簡介 26.ProcessBuilder命令執(zhí)行漏洞 27.Runtime exec命令執(zhí)行漏洞 28.命令執(zhí)行漏洞修復(fù) |
第四部分: 常見漏洞審計(下) 1.XXE漏洞 2.XML的常見接口 3.XXE漏洞審計 4.XXE漏洞修復(fù) 5.SSRF漏洞 6.SSRF漏洞簡介 7.SSRF漏洞常見接口 8.SSRF漏洞審計 9.SSRF漏洞修復(fù) 10.SpEL表達(dá)式注入漏洞 11.SpEL介紹 12.SpEL漏洞 13.SpEL漏洞審計 14.SpEL漏洞修復(fù) 15.Java反序列化漏洞 16.Java序列化與反序列化 17.Java反序列化漏洞審計 18.Java反序列化漏洞修復(fù) 19.SSTI模板注入漏洞 20.SSTI漏洞審計 21.SSTI漏洞修復(fù) 22.整數(shù)溢出漏洞 23.整數(shù)溢出漏洞介紹 24.整數(shù)溢出漏洞修復(fù) 25.硬編碼密碼漏洞 26.不安全的隨機數(shù)生成器 |
第五部分: 常見的java 框架漏洞 1.Spring框架 2.CVE-2018-1260 Spring Security OAuth2 RCE 3.CVE-2018-1273 Spring Data Commons RCE 4.CVE-2017-8046 Spring Data Rest RCE 5.Struts2介紹 6.OGNL表達(dá)式介紹 7.S2-045遠(yuǎn)程代碼執(zhí)行漏洞 8.S2-048遠(yuǎn)程代碼執(zhí)行漏洞 9.S2-057遠(yuǎn)程代碼執(zhí)行漏洞 10.OWASP 0 2017”漏洞的代碼審計 11.OWASP 0 2017”之外常見漏洞的代碼審計 12.Java EE開發(fā)框架安全審計 13.Jspxcms代碼審計實戰(zhàn) |