Shunze 學園 (http://www.shunze.info/forum/index.php)
|- Sophos XG (http://www.shunze.info/forum/board.php?boardid=36)
|-- 《分享》如何封阻WAN端的攻擊IP? (http://www.shunze.info/forum/threadid.php?boardid=36&threadid=2023)


作者: shunze 發表時間: 2017-02-07, 21:33:

《分享》如何封阻WAN端的攻擊IP?

昨天客戶問我,他們的mail server一直遭到攻擊,
已經把攻擊IP加入BlockIP清單之中,但為何這條順子設定的Drop WAN to ANY置頂network rule沒有效果?



聽到這樣的狀況,著實讓順子訝異!
這個置頂規則應該能有效封阻來自WAN端的外部連線IP才對,
但實際上卻是完全沒有效果!?

該network rule的流量掛0,更顯示這條規則根本沒有任何流量經過...


這個狀況讓順子百思不解,最後只有跟Sophos原廠開case求助!(Case ID:6993046)

但沒想到這狀況連原廠也處理不好,
一直到隔天早上,該外部IP還是持續在攻擊我客戶的mail server...

這下子順子不能再坐以待斃了,總要想方法來解決!


順子發現在設定對外服務的Business Application Rule中的Source區段中,
有一個Blocked Client Networks的設定!

那麼把外部攻擊IP加入這個Blocked Client Networks區域中,應該能發揮效果吧?



果然把攻擊IP加入此區域中,此IP就無法持續,在log viewer上顯示被ID為 0 的防火牆規則擋掉了!


成功擋掉該攻擊IP後,順子的疑問也來了,
為什麼擋掉的rule ID不是那條Business Application Rule的ID?
而是XG的default deny rule ID 0 呢?

順子思考後,認為是原Business Application Rule再加了Blocked Client Networks後拒絕了該IP的連線,
所以該IP的連線繼續往下一條規則進行比對,
但一直到最後都沒有匹配的規則,
因此最後被XG ID為 0 的default rule給擋掉了。


將以上我的發現提供給原廠,
原廠Support Team同意我的看法,並解釋了為何無法透過Drop WAN to ANY的network rule來封阻外部IP。

透過block WAN to ANY的規則無法有效封鎖外部IP,
那是因為外部對內部server發起的連線,基本上不是對LAN進行連線,
而是對XG WAN介面上的alias IP進行連線,然後再轉給內部真實服務主機!

這個alias IP以XG的概念來說,是LOCAL這個區域,不是LAN;
而ANY此區域集合不包括LCOAL。
所以無法透過block WAN to ANY的規則來進行封阻。

而XG跟Cyberoam有一個很大的不同,
那就是不提供LOCAL區域的存取設定!
(除了Device Access中有限的exception services rule)

因此無法像Cyberoam一樣設定一條置頂的規則來封阻外部攻擊的IP,
這是兩者之間一個很大的差異!


在XG上目前可行的做法如下,
在每一條對外服務的Business Application Rule的Blocked Client Networks區塊中,填入黑名單的IP位址。



這樣外部IP就無法透過這條規則攻擊該服務主機,而往下比對下一條規則。
當完全比對不到符合規則時,就會被ID為 0 的預設規則所封阻。


那萬一客戶端有幾百條對外的Business Application Rule呢?

很抱歉,如果不想被攻擊,
還是建議乖乖的把這個BlockIP的黑名單list在每一條規則上加進去。

一旦發現有新的攻擊IP,立即透過更新BlockIP這個IP list即可發揮封阻效果。
這也是目前這是我在客戶端上的做法。



其實這麼做很沒效率,
因為攻擊IP從第一條比到最後一條,已吃了XG不少資源,
理想的做法,應該是在第一條規則就將該IP踢出去!

只是遺憾的,XG目前沒有這樣的設定...

Sophos XG啊...
要改進的地方還多的很咧...

Powered by: Burning Board 1.1.1 2001 by WoltLab
Taiwan Translation by Achi