ICMP訊息的作用和控制

2021-08-08 13:38:40 字數 2258 閱讀 2642

我們學習網路,少不了對osi模型的認識。從中,我們也知道,支援網路結構的一些協議,也是有著層次的區分。那麼今天我們介紹的icmp以及icmp訊息的有關內容也是其中的重點。osi模式的第3層是網路層。資料鏈路層提供節點間的連線,而網路層則負責路由**及實現路由表協議。其中最主要的就是網際網路協議(ip)。網路層上還提供其他的服務,如網際網路控制訊息協議(icmp)。icmp是專門用作邏輯錯誤和診斷的信使。rfc792對它作了詳細的闡述。任何ip網路裝置都有傳送、接收或運作icmp訊息的功能。雖然icmp的設計者沒有考慮今天出現的安全性問題,但是他們已經設計了一些能使icmp更有效運作的基本準則。

1. 為了確保icmp訊息不會淹沒ip網路,icmp沒有任何特別的優先順序,它總是一種常規流量。

2. icmp訊息作為其他icmp訊息的響應而傳送。這個設計機制是為了防止出現乙個錯誤訊息不斷地重複製造出另乙個錯誤訊息。否則,它就真的是個大問題了。

3. icmp不能作為多播或廣播流量的響應而傳送。

知道了這些icmp基本準則後,我們再來關注下icmp報頭的格式。設計好的icmp的報頭就包含了乙個型別域和**域。通常icmp包含以下型別:

0  echo reply (ping)

3  destination unreachable

4  source quench

5  redirect message

6  alternate host address

8  echo request (ping)

9  router advertisement

10  router solicitation

11  time exceeded

型別域和**域可以一起用於確定icmp訊息的傳送原因。例如,型別3表示乙個目標不能到達。在型別3訊息中有16位唯一碼。該**標識了目標為什麼不能到達。其中可能包括網路問題(**0)、路由阻擋資料報(**13),或者甚至是應用不在目標計算機(**3)。最常見的icmp資訊型別是8/0,它是乙個呼叫請求/回答(ping)。

現在有很多基於icmp開發的網路工具。traceroute就是其中的乙個。traceroute以連續地傳送有序編號的ip ttl資料報來尋找icmp ttl溢位的返回訊息。通過它的這個設計,你能發現icmp是乙個非常有用的網路工具。但是,它也是最常用的和最濫用的協議之一。現在,讓我們來看看一些關於icmp濫用的情況。

icmp濫用

之前介紹過使用ping作為基本的連線工具。但它也被黑客廣泛地用來在攻擊前進行連線驗證。你是無法攻擊乙個沒有連線上和沒有啟動的系統——而ping則是幫你發現系統是否正在執行的好辦法。由於這樣的問題太多了,以致目前很多網路都阻擋了ping。雖然這樣做是乙個好的開始,但是它並沒有完全解決問題。比如,隱藏工具loki就是乙個例子。

2023年phrak的地鐵雜誌上發布了loki,它是乙個概念驗證工具。如果安裝在內部電腦上,loki可以使用icmp回叫網路外的黑客。管理員看到的只是發出的新ping流量,而黑客則事實上已經建立了隱秘的通道。icmp協議從而正被用於訊息傳送。但是,只要在防火牆上同時阻擋進出的icmp就可以解決這個問題。

與icmp相關的另乙個潛在問題是它在拒絕服務(dos)攻擊中的使用。smurf就是乙個例子。smurf使用ping資料報來濫用icmp。它會傳送壞icmp資料報。它能修改目標位址以將資料報傳送到網路節點的廣播位址。而源位址則已經被重新指定為被攻擊者位址。在大型的網路上,很多系統都會響應廣播ping。這樣攻擊的結果是導致被攻擊者被ping響應流所淹沒,以致合法的訪問被阻斷。在2023年發生了乙個類似的、針對核心dns伺服器的攻擊案例。管理員可以在cisco路由器上新增以下命令來防止他們的網路響應smurf流量:no ip directed-broadcast.

icmp還可以用於輔助進行埠掃瞄和os識別,這也叫做指紋識別。它是攻擊過程中乙個必要的步驟。畢竟,在不知道目標系統執行狀態的情況下,攻擊是無法成功的。例如,黑客可能只有乙個針對windows xp的攻擊,因此它對於windows 2003系統就沒有用了。指紋識別是用於識別os的。當進行指紋識別時,黑客會使用乙個掃瞄工具來向目標系統傳送一系列正常的、特有的以及異常的icmp查詢。接著,掃瞄工具會觀察響應並將它們與資料庫進行比較。

icmp是設計用於更可信網路的。有了icmp的所有功能,如果它可以在網路上自由的進出,那麼它將會是非常實用的。但是,事實上並不是這樣的。如果你的目的是為了使網路更加的安全,那麼要盡可能地在重要的網路訪問埠阻截和禁用icmp。你的選擇將會丟棄或拒絕流量。但是,這些都由你自己來決定。從安全的角度考慮,丟棄資料報可以減少資訊的洩露並使黑客更加難以收集到資訊。而拒絕資料報會使服務能發現操作失敗並快速地中止,而這使使網路更加容易受到攻擊了。基於這些原因,作者建議選擇丟棄icmp資料。

修復ICMP許可權許可和訪問控制漏洞

解決方案 配置防火牆或過濾路由器以阻止傳出的icmp資料報。阻止型別13或14和 或 0的icmp資料報 關閉ping,使得其他主機ping自己的主機時得不到回應包 echo 1 proc sys net ipv4 icmp echo ignore all能ping通 echo 0 proc sys...

控制檔案的作用

在oracle資料庫中,控制檔案記錄著資料庫的物理結構和事務控制的值 scn,checkpoint等 以及一些可以被改寫的資訊 如備份的元資料 而歸檔日誌記錄著資料庫事務操作.在恢復的過程中,這兩個檔案分別起著不同的作用.如果僅僅是例項恢復.則不需要用到歸檔日誌,但要用到控制檔案,重做日誌,undo...

控制 Cookie 的作用範圍

當按照這樣設定域之後,cookie 將只對於特定域中的頁面可用。你同樣能夠使用 domain 屬性來建立乙個能夠在多個子域之間被共享的 cookie,如下例項所示 response.cookies domain value datetime.now.tostring response.cookies...