以前諸位看到過大牛的php代碼審計,但是后來由于技術需要學了Java的代碼審計,剛來時實戰演練檢測自個的技術成果,實際上代碼審計我覺得不單單是取決于源代碼方面的檢測,包含你去構建布署下去和去黑盒測試方法作用點相匹配的源代碼中去探索這一環節是最重要的,在代碼審計中通常全部都是靜下心去一步步的探索就可以峰回路轉了!
環境系統配置,本地布署環境:idea+tomcat8.5.67+db2數據庫.7.26+jdk1.8,cms源碼技術棧:SpringBoot、SpringCloud、Shiro、Thymeleaf、vuejs、Element、Bootstrap,取得源代碼初期看的情況下看的確實嚇人這框架結構和構架給我看的很懵,第一次java的代碼審計審這么多構架的搭配。
垂直越權漏洞,Java審計案例分析也有構架工作原理什么的可以參考以前的內容都是有詳細說明~這個地方實際上也有個更改別人管理權限,在cors跨域這個地方只需確保咱們的cors跨域沒有無效的狀況,那樣去更改別的的userIds和roleId都能夠去更改的。
不成功的授權管理,實際上審計大家都期待立即尋找getshell方式找上傳點,在ssm框架構架里邊的uploadController,追蹤一下下(tip:在這兒我就用的idea檢索鼠標雙擊shift追蹤的情況下立即ctrl鍵+點擊)FileUploadUtils這個地方加了控制沒法去穿越文件目錄做到任意文件下載了。有源代碼根基的小伙伴能夠跟我似的找cms源碼練習,去看看cnvd以前版本號的舊BUG,能夠去復現還可以去比較他的自動更新進行了什么修復,官方網站的補丁包有什么,隨后自個開展深入分析和筆記的記載,那樣不單單是有利于代碼審計更針對BUG工作原理&產生有愈發深層次的掌握,盡管此次審計審出來的垂直越權遞交cnvd了,剩余2個是上一個版本號BUG的深入分析,期待大伙兒提建議,如果想要對自己的網站源代碼進行全面的人工代碼審計的話,可以向網站安全公司或滲透測試公司尋求服務。
附1個常用審計構思,正方向數據流分析深入分析-依據業務推源代碼。反向數據流分析深入分析-依據缺點推業務,代碼審計軟件輔助。查驗重要部件。自定框架結構審計。