在滲透測試過程中,我們可以通過插件識別類型后,使用漏洞腳本對特定系統(tǒng)進行模糊。在這里,筆者將與大家分享漏洞POC驗證系統(tǒng)的設(shè)計和研究思路。在系統(tǒng)開發(fā)之初,選用了分布式平臺設(shè)計架構(gòu)。后來因為考慮到與分布式資產(chǎn)掃描平臺兼容的接口,最后理解了耦合機制,徹底變成了單機版。首先我們可以看到這個地方?jīng)]有單獨設(shè)計web管理端,只能通過命令行調(diào)度。但是,在設(shè)計中,守護進程restapi是保留的,它可以接受來自第三方平臺的調(diào)度請求。插件模塊調(diào)用方面,主要有三個模塊:流行的漏洞插件,主要用于重現(xiàn)常見的手工測試方法和一些團隊發(fā)現(xiàn)的內(nèi)部漏洞。密碼漏洞插件:主要包括端口、中間件、未授權(quán)應(yīng)用和弱密碼漏洞,包括弱密碼字典。第三方漏洞插件:主要用于訪問互聯(lián)網(wǎng)上的一些開源和泄露的插件,用于結(jié)果集成和性能調(diào)優(yōu)。
獲取目標信息時,主要有以下幾種形式:Api調(diào)度:第三方平臺通過rpc傳輸目標信息來調(diào)度系統(tǒng)的api。命令行調(diào)度:通過命令行參數(shù)傳遞目標信息,直接進行調(diào)度。資產(chǎn)導(dǎo)入調(diào)度:通過訪問接口調(diào)度并掃描第三方平臺api給出的數(shù)據(jù)。在分布式資產(chǎn)掃描平臺本身,有一個cms類別和應(yīng)用程序類型信息的存儲庫。然而,為了考慮內(nèi)部網(wǎng)的情況,分別提取了兩個子模塊:Cms認證插件:主要是對目標的cms類型進行認證。如果目標與本地指紋數(shù)據(jù)庫匹配,它將被標記,否則它將訪問internet查詢界面。應(yīng)用識別插件:主要是補充cms類型,識別服務(wù)和應(yīng)用的類型,標注為第二梯隊。當(dāng)然,除了這些模塊,還有一些小效果優(yōu)化插件,這里就不多說了。
最后簡單說一下掃描結(jié)果落入數(shù)據(jù)庫的問題。這里選用日志打印存儲+數(shù)據(jù)庫返回的分布式資產(chǎn)掃描平臺,可以關(guān)閉返回選項,保證了本系統(tǒng)在惡劣環(huán)境下的兼容性。當(dāng)掃描內(nèi)部網(wǎng)系統(tǒng)或帶有敏感防火墻的系統(tǒng)時,我們可以支持訪問多種類型的代理。速率控制,檢測敏感服務(wù)器時,第三方插件可能帶來的密碼認證爆破機制會比較粗糙。要么是單線程轉(zhuǎn),要么是大范圍的線程池,很容易讓服務(wù)器失效,或者讓IDS很快發(fā)現(xiàn)。因此,對于這個塊的控制,我們需要進行詳細的優(yōu)化,選用動態(tài)速率控制的策略,而不是硬編碼來配置和分配任務(wù)。如果想深入的對網(wǎng)站進行全面的漏掃服務(wù)的話可以向SINESAFE,鷹盾安全,大樹安全,綠盟等這些網(wǎng)站安全公司來做更詳細的人工手動安全測試服務(wù)來確保網(wǎng)站的安全問題,防止被黑客入侵。
對于第三方插件,我們在統(tǒng)一調(diào)度機制和庫文件上花了不少功夫,還有一個關(guān)鍵點就是轉(zhuǎn)換庫的格式。在各種插件的上報過程中,我們會盡量為第三方插件掛接數(shù)據(jù)上報層,統(tǒng)一格式后上報。但是,并不是每種插件都有一個統(tǒng)一的將記錄放入庫中的過程,可能需要為這種插件重寫函數(shù)。目前我們的插件都是點擊式的。為了符合法律法規(guī)層面的制度,我們沒有深挖漏洞,需要手工使用和審核。
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!