就目前的網(wǎng)絡(luò)環(huán)境而言,網(wǎng)絡(luò)攻擊時有發(fā)生,怎么判斷是否被DDoS惡意攻擊呢?很多時候我們都會被這種惡意攻擊所影響,但我們因為沒能及時發(fā)現(xiàn)并解決而造成更大的損失。如何檢測ddos攻擊這就至關(guān)重要,今天就跟著快快網(wǎng)絡(luò)小編一起來學(xué)習(xí)下吧。
怎么判斷是否被DDoS惡意攻擊?
懷疑遇到攻擊情況,首先要看看服務(wù)器上面的情況,首先top一下,看看服務(wù)器負載,如果負載不高,那么基本可以判斷不是cc類型的攻擊,再輸入命令netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'查看下網(wǎng)絡(luò)連接的情況,會得到下面這些結(jié)果:TCP/IP協(xié)議使用三次握手來建立連接,過程如下:
1、第一次握手,客戶端發(fā)送數(shù)據(jù)包syn到服務(wù)器,并進入SYN_SEND狀態(tài),等待回復(fù)
2、第二次握手,服務(wù)器發(fā)送數(shù)據(jù)報syn/ack,給客戶機,并進入SYN_RECV狀態(tài),等待回復(fù)
3、第三次握手,客戶端發(fā)送數(shù)據(jù)包ACK給客戶機,發(fā)送完成后,客戶端和服務(wù)器進入ESTABLISHED狀態(tài),鏈接建立完成
如果ESTABLISHED非常地高,那么可能是有人在惡意攻擊,進一步判斷,可以把下面命令保存為腳本執(zhí)行一下:
for i in `netstat -an | grep -i ':80 '|grep 'EST' | awk '{print $5}' | cut -d : -f 1 | sort | uniq -c | awk '{if($1 50) {print $2}}'`
do
echo $i
echo $i /tmp/evilip
done
如果輸出了多個結(jié)果,那么可能表示有人在企圖進行DDOS攻擊,想用TCP連接來拖死你的服務(wù)器,輸出的ip就是發(fā)出請求的服務(wù)器地址,并且保存在了/tmp/evilip里面。如果沒有結(jié)果,可以調(diào)整一下閾值,把50改成40試一試,對策我們后面再說,這里只講判斷。如果SYN_RECV非常高,那么表示受到了SYN洪水攻擊。
SYN洪水是利用TCP/IP協(xié)議的設(shè)計缺陷來進行攻擊的,采用一些策略以及配置可以適當(dāng)?shù)慕档凸舻挠绊?,但并不能完全消除?/p>
tcp_syncookies設(shè)置為1表示啟用syncookie,可以大大降低SYN攻擊的影響,但是會帶來新的安全缺陷。
tcp_syn_retries 表示syn重試次數(shù),重傳次數(shù)設(shè)置為0,只要收不到客戶端的響應(yīng),立即丟棄該連接,默認設(shè)置為5次。
tcp_max_syn_backlog表示syn等待隊列,改小這個值,使得SYN等待隊列變短,減少對系統(tǒng)以及網(wǎng)絡(luò)資源的占用。
TCP連接攻擊算是比較古老的了,防御起來也相對比較簡單,主要是利用大量的TCP連接來消耗系統(tǒng)的網(wǎng)絡(luò)資源,通常同一個IP會建立數(shù)量比較大的TCP連接,并且一直保持。應(yīng)對方法也比較簡單,可以將以下命令保存為腳本,定時ban掉那些傀儡機ip。
banip文件里面記錄了所有被ban的ip地址信息,方面進行反滲透以及證據(jù)保存等等。為了更好地加固系統(tǒng),我們可以使用iptables來限制一下,單個ip的最大連接數(shù)。
當(dāng)攻擊者的資源非常的多,上面這些方法限制可能就沒有什么防護效果了,面對大流量DDoS攻擊還是要考慮采用多機負載或者選擇墨者安全高防來應(yīng)對了,一般來說多機負載的成本可能更高,所以大部分人還是選擇墨者高防硬防產(chǎn)品來防御。
如何查看服務(wù)器是否被ddos攻擊?
ddos攻擊指借助于客戶/服務(wù)器技術(shù),將多個計算機聯(lián)合起來作為攻擊平臺,對一個或多個目標(biāo)發(fā)動攻擊,從而成倍地提高拒絕服務(wù)攻擊的威力。ddos的攻擊方式有很多種,最基本的dos攻擊就是利用合理的服務(wù)請求來占用過多的服務(wù)資源,從而使合法用戶無法得到服務(wù)的響應(yīng)。
第一,寬帶被占用,寬帶占用資源,一般是ddos攻擊中最重要的一個手段。畢竟對于中小型企業(yè)來講,能夠享受到的寬帶資源還是很有限的。Ddos攻擊之后,寬帶資源被占據(jù),正常的流量很難滿足服務(wù)器運行需求。如果你的服務(wù)器寬帶占用比率為百分之九十的話,很有可能是遭受到ddos攻擊了。
第二,連接不到服務(wù)器,一旦網(wǎng)站被ddos攻擊之時,是會造成電腦死機或者是藍屏的。這就代表著你使用的電腦服務(wù)器連接不成功。服務(wù)器連接不成功或者是連接出現(xiàn)錯誤的話,服務(wù)器能不能出現(xiàn)故障等問題,在進行服務(wù)器連接的同時,做好相關(guān)防御。
第三,內(nèi)存被大量占用,如何查看服務(wù)器是否被ddos攻擊,這一點是最重要的。Ddos攻擊本身就是在惡意導(dǎo)致資源被占用。攻擊者們利用攻擊軟件,針對服務(wù)器發(fā)送大量的垃圾請求。最后導(dǎo)致服務(wù)器被大量的所占用。因為正常網(wǎng)站進程,不能得到有效的處理,而且還會出現(xiàn)緩慢打開情況。就會出現(xiàn)服務(wù)器內(nèi)存被大量的占據(jù)。
如何檢測ddos攻擊
要檢測DDoS攻擊程序的存在,可以有2種方法:
1、通常,我們可以使用文件系統(tǒng)掃描工具來確定在服務(wù)器文件系統(tǒng)上是否存在已知的DDoS攻擊程序。
同病毒軟件一樣,每當(dāng)有新的DDoS發(fā)明出來,當(dāng)前的DDoS工具就將過時,或者它對現(xiàn)存的DDoS進行修改而避開檢查。所以,要選擇最近更新的掃描工具才能檢測到最新的DDoS攻擊程序。FBI提供了一個工具叫做"find_ddos",用于檢測一些已知的拒絕服務(wù)工具,包括trinoo進程、trinoo主人、加強的tfn進程、tfn客戶程序、tfn2k客戶程序和tfn-rush客戶程序。
請注意,F(xiàn)BI的這個工具并不能保證捕獲所有的DDoS工具。如果侵入者安裝了一個根文件包,那么find_ddos程序就有可能無法處理它。
2、還可使用手工方法對起源于本地網(wǎng)絡(luò)中的DDoS活動進行雙重檢查。
在Web服務(wù)器與Internet或者上游ISP連接之間的防火墻上建立一個濾波器,以尋找spoofed (哄騙)信息包,也就是那些不是從你自己的網(wǎng)絡(luò)上生成的信息包。這就是所謂的出口過濾。如果在你的網(wǎng)絡(luò)上正在生成spoofed信息包,那么這很可能是一個DDoS程序生成的。
怎么判斷是否被DDoS惡意攻擊成為現(xiàn)在的必修課,很多時候被攻擊是因為惡性競爭導(dǎo)致的,直接造成服務(wù)器癱瘓損失巨大。所以我們要在攻擊發(fā)生之前就要做好防備,檢測ddos攻擊,以免造成更大的損失。