一種基于Android系統的DDoS防御系統和方法
【專利摘要】本發明提供了一種基于Android系統的DDoS防御系統和方法,將防御系統程序安裝于移動平臺的Android系統中,通過監控系統網絡端口,定時檢測當前進程發向同一個IP地址同一端口的SYN請求,ACK-SYN響應或UDP包的速率是否超出設定閾值,跟蹤、記錄并終止發送數據包的異常進程,實現了移動平臺上對DDoS攻擊的防御。本發明提供的DDoS防御系統安裝容易,且無論是網絡流量還是系統開銷都非常低,不影響移動平臺的正常使用,解決了現有DDoS防御方法部署實施復雜,資源開銷大,不適用于移動平臺的技術問題。
【專利說明】一種基于Android系統的DDoS防御系統和方法
【技術領域】
[0001]本發明涉及移動平臺安全【技術領域】,具體涉及一種基于Android系統的DDoS防御系統和方法。
【背景技術】
[0002]分布式拒絕服務攻擊(distributeddenial of service attack,DDoS)是通過控制互聯網上多臺機器同時向目標系統發送大量正常請求,使受害服務器遭受無法承受的海量請求,導致服務器無法處理真正的請求,從而達到拒絕服務攻擊的目的。一直以來互聯網的DDoS攻擊事件層出不窮,困擾著網絡服務商。隨著移動平臺如智能手機的迅猛發展,移動互聯網和傳統網絡的不斷融合,移動平臺用戶的不斷增多,移動平臺逐漸進入網絡黑客的視野,成為網絡攻擊的受害者和被利用者,典型的DDoS攻擊技術也開始進入移動平臺領域。移動平臺成為DDoS攻擊的新目標,現有的攻擊方式有控制移動平臺,使其變成DDoS攻擊發起的“肉機”,或者利用DDoS攻擊的各種變種,例如反射式DDoS攻擊,在不需直接控制主機的情況下達到攻擊目的。這些攻擊方式具有很強的隱蔽性,因此用戶往往已經成為網絡攻擊的受害者而沒有任何察覺。
[0003]目前利用移動平臺進行DDoS攻擊的案例遠遠不如利用PC機攻擊的案例,但是隨著移動平臺軟硬件水平和移動互聯網技術的迅速發展以及移動用戶數量的不斷增加,利用移動平臺進行DDoS攻擊將成為一種常見的攻擊手段。
[0004]現有典型的DDoS防御技術方案可以歸納為:入口防御類、回推追蹤類和基于路由跳數類。
[0005]入口防御類,這類方法在網絡邊界的路由器和網關部署,對進出網絡的數據包進行檢查和過濾。由于移動平臺和傳統互聯網的區別,普通用戶不可能在網關處進行修改和部署,因此這類方法對移動平臺用戶并不適用。
[0006]回推追蹤類,這類方法包括源回溯和路由回推。
[0007]源回溯方法是在數據包傳輸過程中,由路由器等網絡節點記錄其經過的全部或部分路由信息,根據記錄的路由信息得到DDoS攻擊的攻擊路徑,并進行處理。路由回推法是當某條鏈路達到該鏈路擁塞閾值時,路由器丟棄數據包,同時檢查造成其擁塞的入口鏈路,并通知這些鏈路的上個節點路由器,要求其對網絡流量進行相應的限制,而上個節點路由器也以同樣的方式進行流量限制并回推給上個節點的上個節點的路由器,照理不斷回推,以限制網絡流量達到防御效果。
[0008]基于路由跳數類的方法是利用IP欺騙后到達被攻擊目標的數據包經過的路由跳數和實際的源IP到目的IP經過的路由跳數不一致來判斷數據包是否經過IP欺騙,進行防御。但是這類方法需要維護龐大的源IP和TTL值表,且攻擊者完全可以將偽造IP的數據包的TTL值進行設置躲過該方法的檢查。
[0009]移動平臺的硬件性能遠不如PC平臺,回推追蹤和基于路由跳數兩類方法雖然很有效,但很難應用于移動平臺。
[0010]由于移動平臺的特殊性,移動平臺的DDoS攻擊防御方法需要低消耗,低網絡流量消耗。而目前網絡的DDoS防御方法部署實施復雜,資源開銷大,不適用于移動平臺的DDoS攻擊防御,并且移動平臺首先需要保證的是本機的安全,查找問題根源并不是其的主要責任。
[0011]雖然現有DDoS防御的技術方案很多,但是專門針對移動平臺的防御方案還沒有正式提出。
【發明內容】
[0012]本申請通過提供一種基于Android系統的DDoS防御系統和方法,以解決現有DDoS防御方法部署實施復雜,資源開銷大,不適用于移動平臺的技術問題。
[0013]為解決上述技術問題,本申請采用以下技術方案予以實現:
[0014]一種基于Android系統的DDoS防御系統,包括控制模塊、系統監控模塊、系統處理模塊。其中,控制模塊負責防御系統的啟動、初始化設置、暫停和關閉,所述防御系統的初始化設置包括異常次數SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值。
[0015]進一步的,所述防御系統的初始化設置還包括監控間隔時間、監控時長。
[0016]系統監控模塊用于監控系統網絡端口,監聽數據包的發送和接收,如果當前進程發向同一個IP地址同一端口的SYN包、ACK_SYN包或UDP包速率超過速率閾值,則啟動系統處理模塊,并將異常進程數據傳遞給系統處理模塊。
[0017]系統處理模塊包括異常數據庫和異常處理單元,其中異常數據庫接收并存儲來自系統監控模塊的異常進程數據,異常處理單元用于處理異常數據包的進程,根據系統設置的等級,直接終止或報告用戶終止異常數據包進程。
[0018]作為一種優選方案,異常數據庫采用輕量級的Sqlite數據庫,所述數據庫包括異常數據表和進程表,其中異常數據表的表項包括ID、進程號、發包速率、請求IP,進程表的表項包括ID、進程號、進程名、應用名、異常次數。
[0019]一種基于Android系統的DDoS防御方法,包括以下步驟:
[0020]步驟S1:在Android系統中植入上述DDOS防御系統程序,編譯系統,在目標移動平臺上刷入編譯后的系統;
[0021]步驟S2:初始化防御系統的設置,將設置內容保存在系統參數文件中,其中設置的內容包括SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值,所述SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述ACK_SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述UDP包速率閾值設置為三個等級:嚴格、中等、寬松;
[0022]步驟S3:啟動系統監控模塊,監控系統網絡端口 ;
[0023]步驟S4:監控當前進程發向同一個IP地址同一端口的SYN請求,ACK-SYN響應或UDP包的速度是否超出閾值,如超出,則進入步驟S4,否則繼續進行步驟S4 ;
[0024]步驟S5:啟動系統處理模塊,接收來自系統監控模塊的異常進程數據,并存儲到異常數據庫中;
[0025]步驟S6:異常處理單元讀取系統設置等級,關閉異常進程或通知用戶后關閉進程;
[0026]步驟S7:檢查異常數據庫中異常次數是否超過設定異常次數閾值,如超過,則進入步驟S8,如沒有超過,則繼續執行步驟S7 ;
[0027]步驟S8:建議用戶刪除該進程的應用程序。
[0028]進一步的,所述方法還包括以下步驟:
[0029]若用戶選擇暫停,則暫停系統監控模塊的運行,直到用戶重新啟動程序;
[0030]若用戶選擇關閉,則終止系統。
[0031]與現有技術相比,本申請提供的技術方案,具有的技術效果或優點是:提供了一種基于Android系統的DDoS防御系統和方法,將DDOS防御系統安裝于移動平臺的Android系統中,監控速率異常的SYN請求包或ACK+SYN響應包或UDP包,跟蹤、記錄并終止發送這些包的異常進程,實現在移動平臺上對DDoS攻擊的防御,具有網絡流量開銷低、系統開銷低,不影響移動平臺的正常使用的優點。
【專利附圖】
【附圖說明】
[0032]圖1為本發明DDoS防御系統結構示意圖;
[0033]圖2為本發明異常數據庫的表結構圖;
[0034]圖3為本發明DDoS防御方法流程圖。
【具體實施方式】
[0035]本申請實施例通過提供一種基于Android系統的DDoS防御系統和方法,以解決現有DDoS防御方法部署實施復雜,資源開銷大,不適用于移動平臺的技術問題。
[0036]為了更好的理解上述技術方案,下面將結合說明書附圖以及具體的實施方式,對上述技術方案進行詳細的說明。
[0037]實施例
[0038]如圖1所示,DDoS防御系統包括控制模塊10、系統監控模塊20、系統處理模塊30,其中,控制模塊10負責防御系統的啟動、初始化設置、暫停和關閉,所述防御系統的初始化設置包括異常次數SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值,所述防御系統的初始化設置還可以包括監控間隔時間、監控時長。
[0039]系統監控模塊20用于監控系統網絡端口,監聽數據包的發送和接收,如果當前進程發向同一個IP地址同一端口的SYN包、ACK_SYN包或UDP包速率超過速率閾值,則啟動系統處理模塊30,并將異常進程數據傳遞給系統處理模塊30。
[0040]系統處理模塊30包括異常數據庫301和異常處理單元302,所述異常數據庫301接收并存儲來自系統監控模塊20的異常進程數據,所述異常處理單元302用于處理異常數據包的進程,根據系統設置等級,直接終止或報告用戶終止異常數據包進程。
[0041]作為一種優選方案,異常數據庫301采用輕量級的Sqlite數據庫,所述數據庫包括異常數據表和進程表,如圖2所示,所述異常數據表的表項包括ID、進程號、發包速率、請求IP,所述進程表的表項包括ID、進程號、進程名、應用名、異常次數。
[0042]一種基于Android系統的DDoS防御方法,如圖3所示,包括以下步驟:
[0043]步驟S1:在Android系統中植入上述DDOS防御系統程序,編譯系統,在目標移動平臺上刷入編譯后的系統;其中,所述DDoS防御系統的應用程序分為應用層程序和Linux內核層的協議棧層程序,應用層程序將監聽開機廣播,將程序應用層開機啟動。
[0044]步驟S2:初始化防御系統的設置,將設置內容保存在系統參數文件中,其中設置的內容包括SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值,所述SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述ACK_SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述m)P包速率閾值設置為三個等級:嚴格、中等、寬松。
[0045]步驟S3:啟動系統監控模塊,監控系統網絡端口
[0046]步驟S4:監聽數據包的發送和接收,監控當前進程發向同一個IP地址同一端口的SYN請求,ACK-SYN響應或UDP包的速度是否超出閾值,如超出,則進入步驟S5,如沒有超出,則繼續進行步驟S4 ;
[0047]其中步驟S4的具體操作為:系統監控模塊運行期間,定時掃描統計發包情況,并統計數據包速率;當發現有異常流量時,追蹤到發送數據包的異常進程,并將異常進程數據傳遞給系統處理模塊;傳遞結束后自動刪除記錄文件,繼續監控。
[0048]步驟S5:啟動系統處理模塊,接收來自系統監控模塊的異常進程數據,并存儲到異常數據庫中;數據庫采用輕量級的Sqlite數據庫,Sqlite數據庫包括異常數據表和進程表,如圖2所示,所述異常數據表的表項包括ID、進程號、發包速率、請求IP,所述進程表的表項包括ID、進程號、進程名、應用名、異常次數。
[0049]步驟S6:異常處理單元讀取步驟S2中的系統設置等級,根據系統設置的等級,關閉異常進程或通知用戶后關閉進程;
[0050]步驟S7:檢查異常數據庫中異常次數是否超過設定異常次數閾值,如超過,則進入步驟S7,如沒有超過,則繼續執行步驟S8 ;
[0051]步驟S8:建議用戶刪除該進程的應用程序。
[0052]進一步的,所述方法還包括以下步驟:
[0053]若用戶選擇暫停,則暫停系統監控模塊的運行,直到用戶重新啟動程序;
[0054]若用戶選擇關閉,則終止系統。
[0055]本申請的上述實施例中,通過提供一種基于Android系統的DDoS防御系統和方法,將防御系統程序安裝于移動平臺的Android系統中,通過監控系統網絡端口,定時檢測當前進程發向同一個IP地址同一端口的SYN請求,ACK-SYN響應或UDP包的速率是否超出設定閾值,跟蹤、記錄并終止發送數據包的異常進程,實現了移動平臺上對DDoS攻擊的防御。本發明提供的DDoS防御系統安裝容易,且無論是網絡流量還是系統開銷都非常低,不影響移動平臺的正常使用,解決了現有DDoS防御方法部署實施復雜,資源開銷大,不適用于移動平臺的技術問題。
[0056]應當指出的是,上述說明并非是對本發明的限制,本發明也并不僅限于上述舉例,本【技術領域】的普通技術人員在本發明的實質范圍內所做出的變化、改性、添加或替換,也應屬于本發明的保護范圍。
【權利要求】
1.一種基于Android系統的DDoS防御系統,其特征在于,所述系統包括控制模塊、系統監控模塊、系統處理模塊,其中,所述控制模塊負責防御系統的啟動、初始化設置、暫停和關閉,所述防御系統的初始化設置包括異常次數SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值;所述系統監控模塊用于監控系統網絡端口,如果當前進程發向同一個IP地址同一端口的SYN包、ACK_SYN包或UDP包速率超過速率閾值,則啟動系統處理模塊,并將異常進程數據傳遞給系統處理模塊; 所述系統處理模塊包括異常數據庫和異常處理單元,所述異常數據庫接收并存儲來自系統監控模塊的異常進程數據,所述異常處理單元用于處理異常數據包的進程,即直接終止或報告用戶終止異常數據包進程。
2.根據權利要求1所述的DDoS防御系統,其特征在于,所述異常數據庫為Sqlite數據庫,所述數據庫包括異常數據表和進程表,所述異常數據表的表項包括ID、進程號、發包速率、請求IP,所述進程表的表項包括ID、進程號、進程名、應用名、異常次數。
3.根據權利要求1所述的DDoS防御系統,其特征在于,所述防御系統的初始化設置還包括監控間隔時間、監控時長。
4.一種基于Android系統的DDoS防御方法,其特征在于,包括以下步驟: 步驟S1:在Android系統中植入上述DDOS防御系統程序,編譯系統,在目標移動平臺上刷入編譯后的系統; 步驟S2:初始化防御系統設置,將設置內容保存在系統參數文件中,其中設置的內容包括SYN包速率閾值、ACK_SYN包速率閾值、UDP包速率閾值、異常次數閾值,所述SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述ACK_SYN包速率閾值設置為三個等級:嚴格、中等、寬松,所述UDP包速率閾值設置為三個等級:嚴格、中等、寬松; 步驟S3:啟動系統監控模塊,監控系統網絡端口 ; 步驟S4:監控當前進程發向同一個IP地址同一端口的SYN請求,ACK-SYN響應或UDP包的速率是否超出閾值,如超出,則進入步驟S5,如沒有超出,則繼續執行步驟S4 ; 步驟S5:啟動系統處理模塊,接收來自系統監控模塊的異常進程數據,并存儲到異常數據庫中; 步驟S6:異常處理單元讀取系統設置等級,關閉異常進程或通知用戶后關閉進程;步驟S7:檢查異常數據庫中異常次數是否超過設定異常次數閾值,如超過,則進入步驟S8,如沒有超過,則繼續執行步驟S7 ; 步驟S8:建議用戶刪除該進程的應用程序。
5.根據權利要求4所述的基于Android系統的DDoS防御方法,其特征在于,所述方法進一步包括: 若用戶選擇暫停,則暫停系統監控模塊的運行,直到用戶重新啟動程序; 若用戶選擇關閉,則終止系統。
【文檔編號】H04L29/06GK104506559SQ201510011346
【公開日】2015年4月8日 申請日期:2015年1月9日 優先權日:2015年1月9日
【發明者】陳偉 申請人:重慶藍岸通訊技術有限公司