在最近的一次安全警報中,CiscoSystems警告說CiscoIOS易于受到一種惡意攻擊(請參考Cisco關于危急IOS漏洞的警告)。通過利用這個漏洞,黑客能夠在思科設備上執(zhí)行惡意代碼或者發(fā)動一次DDOS攻擊(拒絕服務攻擊)。由于互聯(lián)網上的路由器至少有70%的路由器是思科路由器,這個漏洞格外引人關注。為了保護你的路由器的基礎結構,你能夠做些什么呢?本文將討論這個問題。
哪些產品受到影響?
只有擁有統(tǒng)一通信管理器(CiscoUnifiedCommunicationsManager)和支持語音服務的路由器會受到影響。如果你的路由器符合這兩個條件之一,你就應該采取行動了。如果你不能確定你的路由器是否擁有語音服務(會話初始化協(xié)議(SIP)),就應該檢查一下。
哪些特定IOS的版本會受到影響?
只有某些版本的IOS12.3和所有的IOS12.4受到這個漏洞的影響,并且只有你激活SIP協(xié)議時才會發(fā)生。要查看你正在運行的IOS版本,只需要鍵入showversion命令。
我如何知道我是否啟用了IOS協(xié)議?
注意下面一點是非常重要的:即使SIP協(xié)議沒有進行特別的配置,CiscoIOS也易受到攻擊。這時所需要的只是路由器正在監(jiān)聽SIP通信。
執(zhí)行如下的三個命令就可以查看你的路由器是否正在監(jiān)聽進入的SIP請求:
以下是引用片段:showipsocketsshowudpshowtcpbriefall
注意:“showipsockets”命令在較新的IOS版本上可能無法運行!眘howtcpbriefall”命令可能不會返回任何輸出。下面就是筆者的路由器的一個輸出示例:
以下是引用片段:Router#showipsockets^%Invalidinputdetectedat’^'marker.Router#showudpProtoRemotePortLocalPortInOutStatTTYOutputIF17–listen—-any–68001017–listen—-any–288700110170.0.0.00192.168.1.100670022110Router#showtcpbriefallRouter#
你正在尋找的是下面這些協(xié)議和端口號的任何進入的通路(監(jiān)聽者):TCP5060,5061,1720,11720andUDP5060,5061,2427,2517,16384–32767
你從筆者的路由器的輸出結果中可以看出,筆者并沒有任何這樣的端口。如果你有一個這樣的通路(監(jiān)聽者),你的輸出結果將看起來會是如下的樣子:
以下是引用片段:Router#showipsocketsProtoRemotePortLocalPortInOutStatTTYOutputIF170.0.0.00–any–5060002110Router#showtcpbriefallTCBLocalAddressForeignAddress(state)835F9624*.5060*.*LISTEN
請注意這兩種情況中的端口號5060。
怎樣保護路由器免受攻擊?
下面我們介紹三種保護路由器免受攻擊的方法:
1.檢查是否存在一個對這個漏洞進行修復的IOS軟件的升級程序。在筆者寫這篇文章時,還沒有打補丁的IOS版本可供使用。雖然升級你的路由器可能是一件痛苦的事情,卻不失為一個有益的解決方案。不過,如果你的路由器相當脆弱,我建議你不要等著一個新的IOS版本了,因為你的路由器在這期間可能會受到攻擊。如果SIP協(xié)議不需要的話,你應該立即禁用SIP服務;或者進行通信的緩解,來確保只有合法的數(shù)據(jù)通信可以從受感染的思科路由器發(fā)出或進入。
2.如果SIP協(xié)議(語音服務)在這臺設備上不需要的話,你可以通過如下的命令禁用它:
以下是引用片段:Router(config)#sip-uaRouter(config-sip-ua)#notransportudpRouter(config-sip-ua)#notransporttcpRouter(config-sip-ua)#end
這些命令會禁用SIP協(xié)議,從而保護你免受這個漏洞的攻擊。
3.最后一點,如果你的路由器需要SIP協(xié)議(語音服務),而又沒有什么IOS升級可用,你應該只授權那些合法的通信到達你受感染的CiscoIOS設備,從而緩解數(shù)據(jù)通信。這一點就如同你創(chuàng)建這樣一個訪問控制列表(ACL)一樣簡單:在此ACL中,我們會允許來自已知的SIP設備的全部的SIP通信,而禁止來自所有其它主機的SIP通信。