Ubuntu
可能對 BIND 進行 UDP 攻擊?
大家好,
上個月,當我的 EC2 實例(ubuntu 精確伺服器)應該仍然在免費套餐下,積累了大量流量時,我感到很驚訝……今天,在查看我目前的賬單時,我注意到我已經有大量流量了,雖然還在月中,我擔心到月底我的賬單會是多少……
我安裝了 bandwidthd,幾分鐘後,我注意到大量 UDP 流量到“108.162.233.15”。這顯然是一個 cloudflare IP,我沒有任何使用 cloudflare 的東西(據我所知)。
所以我執行“iftop”來查看正在使用哪些埠,我看到了從埠 80 到我的埠 53 的 UDP 流量……為什麼網路伺服器會查詢 dns?
所以我停止在我的伺服器上綁定,並在前台調試模式下執行它,並看到以下查詢,不斷重複:
17-Nov-2012 12:30:58.216 client 108.162.233.15#80: UDP request 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: request is not signed 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: recursion available 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: query 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: query (cache) 'isc.org/ANY/IN' approved 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: send 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: sendto 17-Nov-2012 12:30:58.216 client 108.162.233.15#80: senddone 17-Nov-2012 12:30:58.217 client 108.162.233.15#80: next 17-Nov-2012 12:30:58.217 client 108.162.233.15#80: endrequest 17-Nov-2012 12:30:58.217 client @0x7fbee05126e0: udprecv 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: UDP request 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: request is not signed 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: recursion available 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: query 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: query (cache) 'isc.org/ANY/IN' approved 17-Nov-2012 12:30:58.343 client 108.162.233.15#80: send 17-Nov-2012 12:30:58.344 client 108.162.233.15#80: sendto 17-Nov-2012 12:30:58.344 client 108.162.233.15#80: senddone 17-Nov-2012 12:30:58.344 client 108.162.233.15#80: next 17-Nov-2012 12:30:58.344 client 108.162.233.15#80: endrequest
我的問題是……這正常嗎?我應該擔心嗎?或者這與我的數據費用完全無關,我應該等待從頻寬中查看更多數據?
先感謝您。
在我看來,您的伺服器正被用於 DNS 放大攻擊。
我不知道 Amazon EC2 的定價模型,但如果不計算此流量,我會感到驚訝。
它的工作原理如下:
有人使用欺騙性 IP 108.162.233.15 向您的伺服器發送 DNS 查詢。
您的伺服器將此查詢回答給真正的受害者 - 108.162.233.15。
查詢很小,但答案很大(檢查
dig -t ANY isc.org
)。真正的問題是,為什麼您的伺服器會回答這些查詢?
您是否有意執行公共遞歸 DNS 供所有人使用?
如果沒有,您需要禁用遞歸或將其限制為受信任/已知客戶端(
recursion no;
和allow-query-cache {none;};
)。