亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于Basic認(rèn)證的流量代理漏洞檢測方法及系統(tǒng)與流程

文檔序號:12492961閱讀:1232來源:國知局
基于Basic認(rèn)證的流量代理漏洞檢測方法及系統(tǒng)與流程

本發(fā)明屬于網(wǎng)絡(luò)信息安全技術(shù)領(lǐng)域,尤其涉及基于Basic認(rèn)證的流量代理漏洞檢測方法及系統(tǒng)。



背景技術(shù):

Web應(yīng)用掃描器通過Web前端與Web應(yīng)用程序通信,可以自動檢查Web應(yīng)用程序,探測、分析其響應(yīng),從而發(fā)現(xiàn)潛在的安全問題和架構(gòu)缺陷。目前主流的Web應(yīng)用掃描器采用爬蟲的方式完成對Web應(yīng)用程序的全部爬取與識別。常見的Web應(yīng)用掃描器有綠盟WVSS、安恒明鑒、AWVS、Appscan等。

在Web2.0的時代傳統(tǒng)的掃描器已經(jīng)無法滿足用戶在Web檢測方面需求,目前,移動互聯(lián)網(wǎng)時代使得企業(yè)互聯(lián)網(wǎng)業(yè)務(wù)由以往的PC端延伸到手機(jī)移動端。由于移動APP絕大部分通信還是基于http協(xié)議,在移動APP前端“入口封裝”的前提下,傳統(tǒng)的Web漏洞掃描器由于基于爬蟲式的掃描原理,無法獲得移動APP與后臺調(diào)用的API,導(dǎo)致無法進(jìn)行漏洞檢測。目前主要體現(xiàn)在以下方面:

1、傳統(tǒng)Web檢測工具通過爬蟲系統(tǒng)來獲取鏈接,傳統(tǒng)Web檢測工具對于JavaScript生成的Ajax請求無法進(jìn)行檢測,其中,Ajax即Asynchronous JavaScript And XML(異步JavaScript和XML);

2、大量登錄后的基于業(yè)務(wù)交互行為的隱藏鏈接無法通過爬蟲進(jìn)行爬取;

3、移動APP絕大部分通信還是基于http協(xié)議,但傳統(tǒng)的漏洞掃描器是基于爬蟲式的掃描,不能獲取到APP后臺調(diào)用的API,無法進(jìn)行漏洞檢測,其中,API即Application Programming Interface(應(yīng)用程序編程接口);

4、目前開源的被動式掃描無法實(shí)現(xiàn)不同用戶的流量分離。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明實(shí)施例的目的在于提供一種基于Basic認(rèn)證的流量代理漏洞檢測方法及系統(tǒng),能夠更好進(jìn)行漏洞檢測,實(shí)現(xiàn)不同用戶的流量分離。

本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的:

基于Basic認(rèn)證的流量代理漏洞檢測方法,包括:

在終端或手機(jī)上的設(shè)置流量代理,使流量流經(jīng)檢測系統(tǒng),在檢測系統(tǒng)中,在接收HTTP流量前加入Basic認(rèn)證,驗(yàn)證代理用戶名及密碼是否正確,通過Basic認(rèn)證中的用戶名與流量進(jìn)行關(guān)聯(lián),分離各個用戶名下的流量;

檢測系統(tǒng)接收HTTP流量,截取所代理的HTTP的所有請求信息并記錄到檢測系統(tǒng)的數(shù)據(jù)庫中;采用異步框架及多進(jìn)程方式定期讀取數(shù)據(jù)庫中的請求信息,重放請求會話過程,在會話過程中,對請求鏈接進(jìn)行安全檢測,包括SQL注入、XSS或命令執(zhí)行的漏洞檢測。

所述的方法的檢測系統(tǒng),包括:

代理流量對接模塊,用于接收所代理的流量信息;

Basic認(rèn)證流量分離模塊,用于對用戶名與流量進(jìn)行關(guān)聯(lián),分離各個用戶名下的流量;

數(shù)據(jù)庫,用于存儲所截取的代理的HTTP的所有請求信息;

掃描模塊,用于采用異步框架及多進(jìn)程方式讀取數(shù)據(jù)庫中的請求信息,重放請求會話過程根據(jù)用戶設(shè)定的掃描策略,指定相應(yīng)的掃描插件,對請求信息進(jìn)行特定的漏洞檢測。

本發(fā)明實(shí)施例通過采用代理的方式,截取用戶會話,根據(jù)會話中的內(nèi)容加入漏洞檢測,解決傳統(tǒng)掃描器對于大量登錄后的基于業(yè)務(wù)交互行為的隱藏鏈接無法準(zhǔn)確掃描以及App交互端無法進(jìn)行漏洞檢測的問題,同時結(jié)合Basic認(rèn)證,解決不同用戶的流量分離問題。

附圖說明

圖1是本發(fā)明中基于Basic認(rèn)證的流量代理漏洞檢測方法流程圖;

圖2是本發(fā)明方法實(shí)施的系統(tǒng)架構(gòu)圖;

圖3是本發(fā)明方法的檢測系統(tǒng)原理圖。

具體實(shí)施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。

本發(fā)明實(shí)施例通過采用代理的方式,截取用戶會話,根據(jù)會話中的內(nèi)容加入漏洞檢測,解決傳統(tǒng)掃描器對于大量登錄后的基于業(yè)務(wù)交互行為的隱藏鏈接無法準(zhǔn)確掃描以及App交互端無法進(jìn)行漏洞檢測的問題,同時結(jié)合Basic認(rèn)證,解決不同用戶的流量分離問題。

以下結(jié)合具體實(shí)施例對本發(fā)明的具體實(shí)現(xiàn)進(jìn)行詳細(xì)描述:

如圖1所示,基于Basic認(rèn)證的流量代理漏洞檢測方法,包括:

在終端或手機(jī)上的設(shè)置流量代理,使流量流經(jīng)檢測系統(tǒng),在檢測系統(tǒng)中,在接收HTTP流量前加入Basic認(rèn)證,驗(yàn)證代理用戶名及密碼是否正確,通過Basic認(rèn)證中的用戶名與流量進(jìn)行關(guān)聯(lián),分離各個用戶名下的流量;

檢測系統(tǒng)接收HTTP流量,截取所代理的HTTP的所有請求信息并記錄到檢測系統(tǒng)的數(shù)據(jù)庫中,即復(fù)制訪問流量;采用異步框架及多進(jìn)程方式定期讀取數(shù)據(jù)庫中的請求信息,重放請求會話過程,在會話過程中加入安全測試語句,實(shí)現(xiàn)目標(biāo)掃描,對請求鏈接進(jìn)行安全檢測,包括SQL注入、XSS或命令執(zhí)行的漏洞檢測,以對這些請求信息進(jìn)行漏洞檢測。

所謂SQL注入,就是通過把SQL命令插入到Web表單提交或輸入域名或頁面請求的查詢字符串,最終達(dá)到欺騙服務(wù)器執(zhí)行惡意的SQL命令。具體來說,它是利用現(xiàn)有應(yīng)用程序,將(惡意)的SQL命令注入到后臺數(shù)據(jù)庫引擎執(zhí)行的能力,它可以通過在Web表單中輸入(惡意)SQL語句得到一個存在安全漏洞的網(wǎng)站上的數(shù)據(jù)庫,而不是按照設(shè)計者意圖去執(zhí)行SQL語句。比如先前的很多影視網(wǎng)站泄露VIP會員密碼大多就是通過WEB表單遞交查詢字符暴出的,這類表單特別容易受到SQL注入式攻擊。SQL注入攻擊指的是通過構(gòu)建特殊的輸入作為參數(shù)傳入Web應(yīng)用程序,而這些輸入大都是SQL語法里的一些組合,通過執(zhí)行SQL語句進(jìn)而執(zhí)行攻擊者所要的操作,其主要原因是程序沒有細(xì)致地過濾用戶輸入的數(shù)據(jù),致使非法數(shù)據(jù)侵入系統(tǒng)。

XSS是一種經(jīng)常出現(xiàn)在web應(yīng)用中的計算機(jī)安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。比如這些代碼包括HTML代碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy)。這種類型的漏洞由于被黑客用來編寫危害性更大的網(wǎng)絡(luò)釣魚(Phishing)攻擊而變得廣為人知。對于跨站腳本攻擊,黑客界共識是:跨站腳本攻擊是新型的“緩沖區(qū)溢出攻擊“,而JavaScript是新型的“ShellCode”。

圖3中,所述的方法的檢測系統(tǒng),包括:

代理流量對接模塊,用于接收所代理的流量信息;

Basic認(rèn)證流量分離模塊,用于驗(yàn)證代理用戶名及密碼是否正確,對用戶名與流量進(jìn)行關(guān)聯(lián),分離各個用戶名下的流量;

數(shù)據(jù)庫,用于存儲所截取的代理的HTTP的所有請求信息;

掃描模塊,用于采用異步框架及多進(jìn)程方式讀取數(shù)據(jù)庫中的請求信息,重放請求會話過程根據(jù)用戶設(shè)定的掃描策略,指定相應(yīng)的掃描插件,對請求信息進(jìn)行特定的漏洞檢測。

圖2中,終端或手機(jī)上設(shè)置代理,當(dāng)啟動APP應(yīng)用及應(yīng)用系統(tǒng)時,web流量測試系統(tǒng)會檢測web漏洞、系統(tǒng)漏洞及弱口令等問題,web漏洞主要包括:SQL注入、跨站腳本、目錄遍歷、系統(tǒng)備份文件、常見CMS漏洞等上百種常規(guī)及業(yè)務(wù)邏輯漏洞;系統(tǒng)漏洞主要包括:Structs2漏洞、Svn信息泄露、Java反序列CVE漏洞以及運(yùn)維失當(dāng)問題;弱口令主要包括:常見系統(tǒng)弱口令、SSH弱口令、FTP弱口令、telnet弱口令、Mysql弱口令、NFS弱口令、Redis空口令、Memcached空口令、Mongodb空口令等常見應(yīng)用及服務(wù)弱口令。產(chǎn)品使用較為簡單,用戶通過在瀏覽器下設(shè)置代理,當(dāng)瀏覽流量經(jīng)過掃描系統(tǒng)時,掃描系統(tǒng)會自動記錄會話,并進(jìn)行重放,在重放過程中插入安全測試語句,整個過程中用戶僅需要在頁面點(diǎn)擊鏈接無需任何操作即可完成對目標(biāo)的檢測。

本發(fā)明的實(shí)施例中,采用tornado框架實(shí)現(xiàn)異步高效率的http與Https代理服務(wù)器,代理程序在代理http請求的同時,截取所有請求信息記錄到數(shù)據(jù)庫;后端掃描程序采用twisted異步框架及多進(jìn)程multiprocessing模塊,具有高效率高并發(fā)的優(yōu)勢的方式,定期到數(shù)據(jù)庫中讀取請求信息,并對這些請求信息進(jìn)行漏洞檢測,同時修改tornado源碼在接收http流量前加入Basic認(rèn)證,通過Basic認(rèn)證中的用戶名與流量進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)對流量分賬戶管理。其中,Tornado就是FriendFeed的Web服務(wù)器及其常用工具的開源版本,Tornado每秒可以處理數(shù)以千計的連接,因此Tornado是實(shí)時Web服務(wù)的一個理想框架;Basic認(rèn)證是HTTP協(xié)議規(guī)范中的兩種認(rèn)證方式之一,客戶端每次訪問都需要將用戶名和密碼放置報文一同發(fā)送給服務(wù)端。

twisted是一個用python語言寫的事件驅(qū)動的網(wǎng)絡(luò)框架,他支持很多種協(xié)議,包括UDP,TCP,TLS和其他應(yīng)用層協(xié)議,比如HTTP,SMTP,NNTM,IRC,XMPP/Jabber。非常好的一點(diǎn)是twisted實(shí)現(xiàn)和很多應(yīng)用層的協(xié)議,開發(fā)人員可以直接只用這些協(xié)議的實(shí)現(xiàn)。其實(shí)要修改Twisted的SSH服務(wù)器端實(shí)現(xiàn)非常簡單。很多時候,開發(fā)人員需要實(shí)現(xiàn)protocol類。一個Twisted程序由reactor發(fā)起的主循環(huán)和一些回調(diào)函數(shù)組成。

通過上述的方法,這樣就解決傳統(tǒng)掃描器中大量登錄后的基于業(yè)務(wù)交互行為的隱藏鏈接以及Javascript生成的Ajax請求無法進(jìn)行檢測的問題;解決移動App中交互端的安全漏洞無法自動化檢測的問題;解決開源被動式掃描系統(tǒng)中無法實(shí)現(xiàn)不同用戶的流量分離的問題。

本發(fā)明中的檢測方法及系統(tǒng)還適用于上線前自動化安全評估等安全場景的需求,在開發(fā)測試階段或者維護(hù)階段的版本更新都可以對安全性進(jìn)行檢測,在開發(fā)迭代的過程中,開發(fā)測試人員在進(jìn)行功能開發(fā)與測試的同時,設(shè)置代理,將流量引入到本發(fā)明的檢測系統(tǒng)中,將安全檢測自動融入到開發(fā)過程中,在出現(xiàn)安全問題時及時告警開發(fā)與測試人員進(jìn)行修補(bǔ),更好地提高代碼的安全性,減少上線前安全檢測的時間和投入成本。

本發(fā)明的漏洞檢測系統(tǒng)的價值在于:

1.更準(zhǔn)確:相對于傳統(tǒng)基于爬蟲式的Web掃描器,通過使用本系統(tǒng),能夠更好地提高安全檢測的深度,發(fā)現(xiàn)更多隱藏的安全問題。

2.無縫對接:通過本系統(tǒng)的部署,將安全檢測無縫對接到開發(fā)與測試過程中,提高在應(yīng)用快速迭代場景下的安全保障能力,同時減少上線前安全評估的時間和人力成本。

3.提升效率:由開發(fā)測試人員執(zhí)行功能測試的同時,就能完成安全測試,測試發(fā)現(xiàn)的漏洞可以由專業(yè)安全人員做進(jìn)一步的分析和處置,使功能測試與安全測試并行處理,釋放安全人員的精力,提升整體效率。

4.自動化:由于系統(tǒng)使用了功能強(qiáng)大,并富有實(shí)踐經(jīng)驗(yàn)的檢測規(guī)則,漏洞的定位和查找提升到了自動化的狀態(tài)。從而規(guī)避了常見安全測試過程中,即便是經(jīng)驗(yàn)豐富人員也會犯的人為因素錯誤。

以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1