對于安全防護來講,我這里按照從源頭到服務器內部的順序,依次梳理出防護的措施。對于目前的服務器來講,很多服務器是已經做了這里大部分的安全措施的,有一些措施可能還沒有做。當然,鑒于本人水平有限,防御吧小編這里列出的肯定沒有完全覆蓋,
最源頭自然是發(fā)起請求端的客戶端,請求則是通過IP來定位服務器的。我們服務器的IP自然是公開的,而客戶端的IP則是不確定的。我們如果通過分析和控制客戶端的IP,也就將安全遏制在源頭。
然后就是要對端口進行控制。過了這兩關,也就進入了服務器的內部邏輯了。我們就可以對應用場景進行分析控制,頻率更要控制,其他的就更加細致了。
最后就是安全措施,一般有三種:停止響應,節(jié)省性能;拉黑處理,以后只要是這個IP就不響應;對于不能大刀闊斧干的,就控制頻率,延遲一段時間才能訪問。
下面是一個簡要的清單,后續(xù)將逐個解釋控制的原理和流程。再最后就是針對每一種控制,提出實現(xiàn)方案。
一、安全防護:
1.源頭控制(ip)
-封閉式:限定訪問的IP(指定服務器才能訪問即授權訪問)
-開放式:白名單IP允許
-開放式:黑名單IP禁止
-開放式:業(yè)務行政物理地址外IP禁止(IP定位),消除代理攻擊
-開放式:業(yè)務行政物理地址內IP允許(IP定位),消除代理攻擊
2.端口控制
-知名端口:常用的知名端口,如80,修改知名端口或關閉不必要知名端口。
-匿名端口:采用不常用的端口號,端口不連號。
3.應用場景控制(手機或PC和其他)
-手機端:只會在手機端使用的接口,不對其他終端響應
-PC端:都可以訪問
-特定場景:特定場景使用的接口不暴露,且做場景分析控制,非場景下不允許使用
4.頻率控制
-訪問間隔:連續(xù)訪問間隔控制
-周期間隔:周期內訪問間隔控制
-周期訪問次數(shù):周期訪問次數(shù)控制
-特定場景訪問次數(shù)控制:特定場景次數(shù)分析
5.請求地址控制
-不存在的地址控制
-惡意攻擊地址控制
6.參數(shù)控制
-多余的參數(shù):多余的參數(shù)分析和記錄
-SQL攻擊:SQL攻擊
-XSS攻擊:js腳本攻擊和url檢測
-參數(shù)取值:合理取值范圍和類型
7.流程控制
-流程漏洞控制,確保沒有流程空白
-多接口混合使用形成的流程漏洞控制
8.緩存控制
-緩存更新漏洞機制
-緩存不同步漏洞控制
9.bug錯誤控制
-異?刂
-異常暴露
-異常流程控制
-bug對設計的沖擊控制
10.系統(tǒng)協(xié)作控制
-多端協(xié)作流程漏洞控制
11.分布式控制
-數(shù)據(jù)一致性漏洞
-其他
12.服務器漏洞
-漏洞檢測和修復