SNMPv3原理-SNMP的安全問題



SNMP制定之初並沒有過多地考慮其安全性,這使其早期版本存在安全隱患。

隨着網絡安全的日趨重要,在SNMP的發展過程中也出現了一些安全方面的增強方案。這些方案雖然沒有形成統一的標準,也沒有得到廣泛應用,但是對後來SNMPv3的形成具有借鑑意義。

1、SNMP早期版本的安全機制及其缺陷

SNMPv1存在一些明顯的缺陷,其中之一就是忽視了安全問題。SNMPv1只提出了基於團體(community)的安全機制。一個SNMP團體是一個SNMP代理和任意一組SNMP管理站之間的一種關係,它定義了認證和訪問控制的特性。

團體是定義在代理上的一個本地概念。代理爲每一個必要的認證和訪問控制的聯合建立一個團體,每個團體擁有唯一一個名字。團體之中的管理站必須使用該團體的團體名進行Get和Set操作。

(1)認證服務

認證服務用於保證通信是可信的。在SNMP消息中,認證服務將向消息接收者保證該消息的確是從它所聲明的來源出發的。SNMP僅提供了一種很簡單的認證方式:從管理站發往代理的每個消息都包括一個團體名,起口令的作用。如果該團體名存在於代理已知的團體名列表中,則該消息被認爲是可信的,接收該消息;否則,消息不可信,丟棄該消息。

(2)訪問控制策略

通過定義團體,代理可以限制它的MIB只能被選定的一組管理站訪問。而通過定義多於一個的團體,代理能夠爲不同的管理站提供不同的MIB訪問權限。

但是,團體名通常以明文形式隨SNMP報文傳輸。對於熟悉SNMP的人來說,可以很容易地從網絡上捕獲的SNMP報文中分析得到團體名,從而盜用某些權限、進行非法的操作。

2、SNMP面臨的安全威脅

在實際中廣泛使用的SNMPv1/v2c採用以明文傳輸的團體名作爲認證手段。這種脆弱的保護機制使得SNMP面臨着一系列安全威脅。這些威脅包括:

(1)僞裝(masquerade [ˌmæskəˈreɪd])

一些未授權的實體可以僞裝爲已授權實體的身份,去執行只有授權實體纔可以執行的管理操作,從而獲得額外的特權。

(2)信息更改(Modification of Information)

一個實體可以更改由另一授權實體產生的正在傳輸的報文,從而導致越權的管理操作。這種威脅的本質就是未授權的實體可以修改任何管理參數,包括配置、操作和計費方面的參數。

(3)信息泄露(Disclosure [dɪs'kləʊʒə(r)] of Information)

實體可以觀測管理者與代理之間的信息交換,從而獲得管理對象的值,並獲知所報告的事件。例如,通過觀測更改口令的Set命令,可以使攻擊者獲知新口令的內容。

(4)消息流更改(Message Stream Modification)

SNMP被設計成在無連接的協議上運行。因此,SNMP消息有可能被重排、延遲或者重放(複製),從而導致越權的管理操作。例如,一個重新啓動設備的消息可能被複制,並在將來的某一時刻重放,導致非授權的操作。

(5)拒絕服務(Denial [dɪ'naɪəl] of Service)

阻止管理者與代理之間的信息交換,或阻止通信設備的正常使用和管理。這種攻擊或者是阻止所有發往特定目的站點的消息、或者是對網絡進行破壞使其不能運行、或者是發送大量消息使網絡過載從而降低其性能。

(6)流量分析(Traffic Analysis)

分析管理者和代理之間信息交換的一般模式。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章