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