我寫了一個自定義的SNMPV2C代理(AgentX協議)延伸netsnmp,截至目前,我允許的snmpd.conf所有視圖訪問如下SNMP的默認OID訪問
view all included .1
它暴露MGMT(RFC1213)看起來不錯,它也暴露了snmpV2 mib(snmpMIB,snmpFrameworkMIB,VacmMIB等)。
我找不到任何的最佳實踐文件的細節,除了開放我們的企業OID樹什麼都予以曝光,有哪些安全隱患等
我寫了一個自定義的SNMPV2C代理(AgentX協議)延伸netsnmp,截至目前,我允許的snmpd.conf所有視圖訪問如下SNMP的默認OID訪問
view all included .1
它暴露MGMT(RFC1213)看起來不錯,它也暴露了snmpV2 mib(snmpMIB,snmpFrameworkMIB,VacmMIB等)。
我找不到任何的最佳實踐文件的細節,除了開放我們的企業OID樹什麼都予以曝光,有哪些安全隱患等
哪些安全隱患
使用SNMP v2c,您沒有加密,也沒有簽名。這意味着,人在這方面的中間人攻擊既能:
此外,查詢可以通過UDP完成,因此IP源地址不需要正確路由回源。因此,可以使用IP欺騙來繞過IP ACL,並將SNMP 設置請求從假IP源發送到目標。
請注意,使用SNMP v3,可以避免所有這些風險。
所以,要麼增加您的安全增加另一個網絡層(IPsec進行實例),或者僅僅暴露只讀的OID與公共內容。
例如,性能計數器或基本配置參數(如IP地址,主機名,計數器)可能會暴露。也許你應該做一個風險分析找到哪些信息可以真正暴露。
起初,SNMP v1根本沒有保護。因此,SNMP v2已被提議添加安全性等新功能。但它非常複雜,新的安全功能已被刪除,並且其他功能已被保留,並且協議最終以名稱SNMP v2c發佈。最後,SNMP v3主要是爲了提供安全功能而創建的,但比使用SNMP v2更容易實現。
要非常小心對整個ISO毯訪問(甚至包括只讀)(.1
)樹,特別是如果你使用SNMPv3 USM進行身份驗證和VACM授權。
的USM用戶數據庫被暴露在MIB本身(usmUserTable
),所以:
snmpusm(1)
完成)同樣,VACM MIB包含訪問政策信息,如:
vacmContextTable
);vacmSecurityToGroupTable
);vacmAccessTable
和vacmViewTreeFamilyTable
)。我不認爲的Net-SNMP允許這些VACM表的讀寫訪問(這個政策是/etc/snmp/snmpd.conf
拍攝,而不是由代理修改),但即使只讀訪問可能透露太多的信息。例如,它可能讓攻擊者找出哪個USM用戶有權訪問攻擊者感興趣的視圖,並對該特定USM用戶發起密碼破解攻擊。
SNMPv3的USM和VACM的RFC自己明確地警告你這些表的敏感程度:
11.5 Access to the SNMP-USER-BASED-SM-MIB
The objects in this MIB may be considered sensitive in many
environments. Specifically the objects in the usmUserTable contain
information about users and their authentication and privacy
protocols. It is important to closely control (both read and write)
access to these MIB objects by using appropriately configured Access
Control models (for example the View-based Access Control Model as
specified in [RFC3415]).
和:
7.4. Access to the SNMP-VIEW-BASED-ACM-MIB
The objects in this MIB control the access to all MIB data that is
accessible via the SNMP engine and they may be considered sensitive
in many environments. It is important to closely control (both read
and write) access to these to these MIB objects by using
appropriately configured Access Control models (for example the
View-based Access Control Model as specified in this document).
我會建議明確排除了USM和VACM的MIB在最小。例如:
view most included .1
view most excluded .1.3.6.1.6.3.15
view most excluded .1.3.6.1.6.3.16
謝謝,我們將在下一版本中遷移到SNMP v3,對於此版本,我們只允許只讀訪問。 ..但我主要擔心的默認模塊(我應該啓用或禁用所有)..現在查看所有.1。我看到RFC1213和SNMPV2(1.3.6.1.6.3.X)被公開..這些模塊的只讀訪問是否存在安全風險? – DevC
當只讀時,MIB-2 OID並不意味着具體的安全風險:它們只包含基本信息。但是一些人可能會認爲分享一些基本信息存在一定風險:例如,發佈MAC地址可能會將信息泄露給遠離本地以太網(遠程本地網絡,當然這個信息是公開的)的遠程主機。而你的本地MAC地址是一條可以幫助你發現服務器製造商的信息。而且知道這個製造商,攻擊者可以嘗試他們的服務器的一些公共漏洞... –
因此,它不是特別危險,但取決於處理威脅的方式,有些人可能不希望這些信息公開。 –