目錄攻擊後的應對
寫指令碼,指令碼內容是分析日誌裡面對**訪問次數超過限定值的ip的數量,當超過一定的數量,就應當將其加入到防火牆的拒絕列表裡面,防火牆的拒絕列表也要定期清空,不能一直攻擊某個ip位址,因為可能是這個ip是肉機。
//指令碼示例
#!/bin/bash
/bin/netstat -na|grep established|awk 『』|awk -f: 『』|sort|uniq -c|sort -rn|head -10|grep -v -e 』192.168|127.0′|awk 『}』>/tmp/dropip
for i in $(cat /tmp/dropip)
do
/sbin/iptables -a input -s $i -j drop
echo "$i kill at date">>/var/log/ddos
done
//基本防護
iptables -p input accept
iptables -f
iptables -a input -p tcp -m tcp --dport 80 -j accept
iptables -a input -s 1.1.1.1 -p tcp -m tcp --dport 22 -j accept
iptables -a input -s 2.2.2.2 -p tcp -m tcp --dport 22 -j accept
iptables -a input -i eth1 -j accept
iptables -a input -i lo -j accept
iptables -a input -p tcp -m tcp --tcp-flags fin,syn,rst,psh,ack,urg fin,syn,rst,psh,ack,urg -j drop
iptables -a input -p tcp -m tcp --tcp-flags fin,syn,rst,psh,ack,urg none -j drop
iptables -a input -p tcp -m tcp --tcp-flags fin,syn,rst,psh,ack,urg fin,psh,urg -j drop
iptables -a input -p tcp -m tcp --tcp-flags syn,rst syn,rst -j drop
iptables -a input -p tcp -m tcp --tcp-flags fin,syn fin,syn -j drop
iptables -a input -p tcp -m tcp --tcp-flags fin,rst fin,rst -j drop
iptables -a input -p tcp -m tcp --tcp-flags fin,ack fin -j drop
iptables -a input -p tcp -m tcp --tcp-flags psh,ack psh -j drop
iptables -a input -p tcp -m tcp --tcp-flags ack,urg urg -j drop
iptables -a input -m state --state related,established -j accept
iptables -p input drop iptables -p output accept iptables -p forward drop
#防止syn攻擊 輕量級預防
iptables -n syn-flood
iptables -a input -p tcp --syn -j syn-flood
iptables -i syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j return
iptables -a syn-flood -j reject
#防止dos太多連線進來,可以允許外網網絡卡每個ip最多15個初始連線,超過的丟棄
iptables -a input -i eth0 -p tcp --syn -m connlimit --connlimit-above 15 -j drop
iptables -a input -p tcp -m state --state established,related -j accept
#用iptables抵禦ddos (引數與上相同)
iptables -a input -p tcp --syn -m limit --limit 12/s --limit-burst 24 -j accept
iptables -a forward -p tcp --syn -m limit --limit 1/s -j accept
通過sysctl和iptables來防範,對sysctl引數進行修改
$ sudo sysctl -a | grep ipv4 | grep syn
輸出類似下面:
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_synack_retries = 5
net.ipv4.tcp_syn_retries = 5
net.ipv4.tcp_syncookies:是否開啟syn cookies的功能,「1」為開啟,「2」關閉。
net.ipv4.tcp_max_syn_backlog:syn佇列的長度,加大佇列長度可以容納更多等待連線的網路連線數。
net.ipv4.tcp_synack_retries和net.ipv4.tcp_syn_retries:定義syn重試次數。
把如下加入到/etc/sysctl.conf即可,之後執行「sysctl -p」!
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
提高tcp連線能力
net.ipv4.tcp_rmem = 32768
net.ipv4.tcp_wmem = 32768
net.ipv4.sack=0
DDOS三種不同型別的攻擊行為 Vecloud
分布式拒絕服務 ddos 攻擊給企業帶來了令人擔憂的挑戰,尤其是因為攻擊的目標通常是破壞和關閉組織的服務運營。隨著ddos攻擊的規模,強度和頻率不斷增長,它們將來可能會面臨更大的挑戰。在ddos攻擊中,您公司的伺服器或網路可能被大量流量淹沒,其唯一目的是惡意中斷您的業務。這些攻擊會導致您的 響應緩慢...
黑客的一次攻擊行為
主要由 隱藏自己 預攻擊探測 攻擊行為 擦除痕跡 四個步驟構成。一般完整的攻擊過程都是先隱藏自身,在隱藏好自己後再進行預攻擊探測,檢測目標機器的各種屬性和具備的被攻擊條件,然後採取相應的攻擊方法進行破壞,達到自己的目的,之後攻擊者會刪除自己的行為日誌。1 隱藏自己 常見的攻擊者隱藏自身的方式有以下幾...
使用機器學習異常檢測攻擊行為
一般現有的內部威脅檢測演算法都會被轉化為異常檢測來做。內部威脅檢測領域除了異常檢測之外。識別攻擊動機以及區分異常和攻擊也是重點。內部威脅檢測主要是基於使用者的網路 檔案 裝置 郵件等審計日誌構建正常使用者行為模型,之後使用包括圖 機器學習 整合學習等方法對當前行為進行異常檢測。基於機器學習的異常檢測...