知識庫
什么樣的網站容易被ip攻擊?在我們處理過的ip攻擊中,主要消耗的是CPU和內存,通常在帶寬被占滿前CPU和內存已經爆掉。而對于靜態網站,也就是生成HTML頁面的網站,靜態請求占用的CPU和內存是極低的,所以幾乎不太可能出現生成HTML后被CC攻擊掛掉的情況。所以,被ip攻擊的主要都是動態網站,比如Discuz,Wordpress等。都是什么人在攻擊?無聊惡作劇、打擊報復、敲詐勒索、同行惡意競爭。
防ip攻擊:http://www.bxgb88.com/dedicated/hkcdn.html
1.OOB攻擊:利用NETBIOS中一個OOB (Out of Band)的漏洞而來進行的,它的原理是通過TCP/IP協議傳遞一個數據包到計算機某個開放的端口上(一般是137、138和139),當計算機收到這個數據包之后就會瞬間死機或者藍屏現象,不重新啟動計算機就無法繼續使用TCP/IP協議來訪問網絡。
2.DoS攻擊:針對Windows 9X所使用的ICMP協議進行的DOS(Denial of Service,拒絕服務)攻擊,一般來說,這種攻擊是利用對方計算機上所安裝協議的漏洞來連續發送大量的數據包,造成對方計算機的死機。
3.WinNuke攻擊:從最初的簡單選擇IP攻擊某個端口發展到可以攻擊一個IP區間范圍的計算機,并且可以進行連續攻擊,還能夠驗證攻擊的效果,還可以對檢測和選擇端口,所以使用它可以造成某一個IP地址區間的計算機全部藍屏死機。
4.SSPing:它的工作原理是向對方的計算機連續發出大型的ICMP數據包,被攻擊的機器此時會試圖將這些文件包合并處理,從而造成系統死機。
5.TearDrop攻擊:利用那些在TCP/IP堆棧實現中信任IP碎片中的包的標題頭所包含的信息來實現自己的攻擊,由于IP分段中含有指示該分段所包含的是原包哪一段的信息,所以一些操作系統下的TCP/IP協議在收到含有重疊偏移的偽造分段時將崩潰。TeadDrop最大的特點是除了能夠對Windows 9X/NT進行攻擊之外,連Linux也不能幸免。
①JavaScript方式輸出入口
第一次訪問的時候,不是直接返回網頁內容,而且返回這段JS程序。
作用就是計算出入口變量的值,然后在訪問的網址后面加上類似于”?jdfwkey=hj67l9″的字串,組合成新的網址,然后跳轉,當防火墻驗證了jdfwkey的值(hj67l9)是正確的之后,就放行,一段時間內就不會再出這個判斷程序的頁面。
(防護方式用的最早并且用的最多的是金盾防火墻。也正是由于用的人太多了,市面上已經有突破金盾防火墻的軟件在出售,原理就是通過JS解析引擎計算出jdfwkey的值。)
②301或者302轉向方式輸出入口
原理和1類似,突破的方式更簡單,和1差不多,只不過是直接在HTTP頭中,連JS引擎都省了。區別在于把入口直接輸出在了HTTP頭部信息里,不重復敘述了。還有一些把入口通過其他方式輸出的,比如cookie,類似于1和2,原理都是在第一次訪問的時候設置一道檻。這個就不單獨計算為一條了。
③屏蔽代理
由于一部分的CC攻擊是利用代理服務器發起的,所以有些時候防CC會屏蔽掉帶x-forward-for這個值的IP,對匿名代理無效。無法硬性突破,也就是說,如果屏蔽了帶x-forward-for的IP,那么它就不可能訪問到。
④判斷速率
由于CC攻擊是持續的發起請求,所以發起攻擊的IP在單位時間內的請求數量會明顯比正常多出很多,通過把請求頻率過高的IP屏蔽掉來防御。突破的方式就是限制請求速度,但是這對于攻擊者是一個挑戰,限制單個攻擊源的請求速度,并且保證攻擊效果,這就要求攻擊者擁有更多倍的攻擊源(肉雞)。
⑤驗證碼
這個基本是最后的無敵大招了,必須在用戶輸入驗證碼后才能訪問。目前階段幾乎不可能應用到CC攻擊中,未來也不太可能。但是網絡上有很多的打碼平臺,如果和這些平臺對接的話,人工識別驗證碼,就OVER了(應該不會有人去搞,太麻煩)。
對于所有的防護方式,如果是把網站域名解析到了別處,通過其他機器轉發請求來防御CC攻擊流量的(比如CDN),都可以通過添加HOST值的方式將流量發到真實機器上,使這些防護失效。找查網站真實IP的方法很多很復雜,不能保證100%都能找得到,本文不做敘述。
大多數路由器的內置的欺騙過濾器。過濾器的最基本形式是,不允許任何從外面進入網絡的數據包使用單位的內部網絡地址作為源地址。從網絡內部發出的到本網另一臺主機的數據包從不需要流到本網絡之外去。因此,如果一個來自外網的數據包,聲稱來源于本網絡內部,就可以非常肯定它是假冒的數據包,應該丟棄。這種類型的過濾叫做入口過濾,他保護單位的網絡不成為欺騙攻擊的受害者。另一種過濾類型是出口過濾,用于阻止有人使用內網的計算機向其他的站點發起攻擊。路由器必須檢查向外的數據包,確信源地址是來自本單位局域網的一個地址,如果不是,這說明有人正使用假冒地址向另一個網絡發起攻擊,這個數據包應該被丟棄。
有些IP,我們會要求它一直可以訪問到網站內容,比如蜘蛛,比如交易類網站的支付寶異步通知。但是收集這些IP,幾乎是無法100%準確的收集到的(可能有人會想到useragent,一句話:攻擊者可以偽造),所以我們盡可能選擇屬于自己的獨立IP空間。