必備知識點
必備知識點:
簡要理解JAVA的EB項目組成
代碼方面,框架方面,中間件容器方面等
簡要理解JAVAwEB執行流程
參考下圖及
https://www.cnblogs.com/1987721594zy/p/9186584.html
https://blog.csdn.net/weily11/article/details/80643472
com:
公司項目,copyright由項目發起的公司所有
包名為com.公司名.項目名.模塊名.......
持久層: dao、persist、mapper
實體類: entity、model、bean、javabean、pojo
業務邏輯: service、biz
控制器:controller、servlet、action、web
過濾器:filter
異常:exception
監聽器:listener
在不同的框架下一般包的命名規則不同,但大概如上,不同功能的Java文件放在不同的包中,根據Java文件的功能統一安放及命名。
審計思路:
根據業務功能審計優點:
明確程序的架構以及業務邏輯,明確數據流向,
可以從獲取參數-->表現層-->業務層-->持久層,通讀源碼;缺點:耗費時間;
根據敏感函數畝計優點:
可以快速高效的挖出想要的漏洞,判斷敏感函數上下文,追蹤參數源頭;
缺點:覆蓋不了邏輯漏洞,不了解程序的基本松架;l
審計開始前:
1、確定框架;
通過以下三種方式確定框架:
web . xml
看導入的jar包或pom. xml
看配置文件
struts2配置文件:struts. xml
spring配置文件:applicationcontext. xml
spring MvC 配置文件:spring-mvc.xml
Hibernate配置文件:Hibernate.cfg- xml
Mybaits配置文件:mybatis-config . xml
2、查看是否存在攔戳器
通過查看web . xml文件,確定是否配置相關攔截器。
簡易Demo段SQL注入及預編譯
第一個SQL執行語句為預編譯技術,防注入。
JAVA預編譯多,因此注入難進行。
IDEA審計插件FindBugs安裝使用
Fortify_SCA代碼自動審計神器使用
shungg.cn
Ofcms后台SQL注入-全局搜索關鍵字
搜索敏感函數
Ofcms后台任意文件上傳-功能點測試
功能點->文件分析