Vulnerability Assessment of SNMP Service – III
来源:互联网 发布:pdm导入oracle数据库 编辑:程序博客网 时间:2024/06/05 06:31
Vulnerability Assessment of SNMP Service – III
背景
这是第三篇关于snmp审计的文章。前面我们已经介绍了基础,探测,及利用工具获取信息。我们已经提到了snmpcheck,使用它可以获取snmp的OID中存储的数据。但是,这个工具多少有点无法满足需求。
目标
snmpcheck简单易用,可以快速的攻击目标,但是它不能帮助我们了解OID树形结构。这篇文章中,我们将介绍如何探测指定的OID树。这样允许高级用户探测感兴趣的内容,而不是由程序自动发送请求及收集所有信息,不管是有用的,还是无用的。
这篇文章里面,我们会介绍另一款工具snmpwalk.它可以帮助我们对目标做一些细微的探测。
目标对象
这篇文章针对的是高级读者。假设读者已经深入理解SNMP协议,掌握SNMP,OID树结构等。用户应该知道,什么是OID,如何浏览OID树结构,需要获取什么数据。
稍候会给读者介绍一点OID基础,但要注意这不能取代自我学习。如果不熟悉OID,我强烈推荐阅读MIB& OID,然后结合本文的知识,你将获益匪浅。
为何寻找额外的工具
确实,使用一个工具这不是什么问题。但是,有时候因为需求,我们需要选择其他的工具;总会有一种方法,能够将任务完成的很漂亮。当我们学习某些东西的时候,需要的不仅仅是工具。这样能够帮我们了解什么时候事情会失败,怎么样做会更好。
snmpcheck已经能够完成任务,如果我们想要获取更多的信息,这样可能会发送许多的请求。我们不想这么做,但是我们无法控制工具的行为,除非我们修改它。
发送许多的请求,这并不是一个好主意,我们更需要的是用最少的数据包去探测目标,这样可以降低触发入侵防护设施的机率。
snmpwalk会发送一个请求,以便获取OID的位置,但如果OID应答中包含子树,snmpwalk会探测下面的所有节点,这样会针对性的发送一些请求。高级用户与新手之间最大的不同就在这里。高级用户知道自己正在做什么,新手不知道自己探测指定OID的过程中,发送了多少网络请求。后面会介绍有子树,与无子树这两种情况。
假设
网络上已经有一台运行默认SNMP配置的主机或网络设备。
你的测试工具包中已经有了snmpwalk
Object ID(OID) 概述
我将粗略的介绍一下对象标识(OID),因为它是snmpwalk的核心.用户可以通过指定的OID去遍历探测MIB树形结构中的对象。
OID树形结构很清晰。每个snmp对象用数字标识,如下所示:
ROOT
Iso(1)
Org(3)
Dod(6)
Internet(1)
Directory(1)
Mgmt(2)
Experimental(3)
Private(4)
从上面的结构中,我们了解到,ISO对象的OID是1,root的第三个对象是org。所以,如果想参考Iso,需要指明OID是1;类似的,如果是org,OID则是1.3,dod则是1.3.6。如果你觉得这个没什么用,这意味着,可能需要额外再读一次。下面介绍一下snmpwalk如何从远程主机的SNMP服务获取信息。
SNMPWALK
snmpwalk 可以针对性的查询网络设备,获取树信息。发送GETNEXT请求,snmpwalk会查询OID下面的所有变量,并将根据请求结果返回给用户。这个工具有许多的开关,大部分都很重要。
root@gnu:~# snmpwalk -c public192.168.1.105 -v1 1
iso.3.6.1.2.1.1.1.0 = STRING: "Linuxruby 2.6.32-5-686 #1 SMP Tue May 13 16:33:32 UTC 2014 i686"
iso.3.6.1.2.1.1.2.0 = OID:iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks:(2249333) 6:14:53.33
iso.3.6.1.2.1.1.4.0 = STRING: "Me<me@example.org>"
iso.3.6.1.2.1.1.5.0 = STRING:"ruby"
iso.3.6.1.2.1.1.6.0 = STRING:"Sitting on the Dock of the Bay"
iso.3.6.1.2.1.1.7.0 = INTEGER: 72
iso.3.6.1.2.1.1.8.0 = Timeticks: (0)0:00:00.00
iso.3.6.1.2.1.1.9.1.2.1 = OID:iso.3.6.1.6.3.10.3.1.1
iso.3.6.1.2.1.1.9.1.2.2 = OID:iso.3.6.1.6.3.11.3.1.1
iso.3.6.1.2.1.1.9.1.2.3 = OID:iso.3.6.1.6.3.15.2.1.1
iso.3.6.1.2.1.1.9.1.2.4 = OID:iso.3.6.1.6.3.1
iso.3.6.1.2.1.1.9.1.2.5 = OID:iso.3.6.1.2.1.49
iso.3.6.1.2.1.1.9.1.2.6 = OID:iso.3.6.1.2.1.4
iso.3.6.1.2.1.1.9.1.2.7 = OID:iso.3.6.1.2.1.50
iso.3.6.1.2.1.1.9.1.2.8 = OID:iso.3.6.1.6.3.16.2.2.1
iso.3.6.1.2.1.1.9.1.3.1 = STRING:"The SNMP Management Architecture MIB."
iso.3.6.1.2.1.1.9.1.3.2 = STRING:"The MIB for Message Processing and Dispatching."
iso.3.6.1.2.1.1.9.1.3.3 = STRING:"The management information definitions for the SNMPUser-based Security Model."
iso.3.6.1.2.1.1.9.1.3.4 = STRING:"The MIB module for SNMPv2 entities"
iso.3.6.1.2.1.1.9.1.3.5 = STRING:"The MIB module for managing TCP implementations"
iso.3.6.1.2.1.1.9.1.3.6 = STRING:"The MIB module for managing IP and ICMP implementations"
iso.3.6.1.2.1.1.9.1.3.7 = STRING:"The MIB module for managing UDP implementations"
iso.3.6.1.2.1.1.9.1.3.8 = STRING:"View-based Access Control Model for SNMP."
iso.3.6.1.2.1.1.9.1.4.1 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.2 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.3 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.4 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.5 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.6 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.7 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.1.9.1.4.8 = Timeticks:(0) 0:00:00.00
iso.3.6.1.2.1.25.1.1.0 = Timeticks:(2572475) 7:08:44.75
iso.3.6.1.2.1.25.1.2.0 = Hex-STRING:07 DE 08 0A 13 0C 1B 00 2D 04 00
iso.3.6.1.2.1.25.1.3.0 = INTEGER:1536
iso.3.6.1.2.1.25.1.4.0 = STRING:"BOOT_IMAGE=/boot/vmlinuz-2.6.32-5-686root=UUID=a01d3689-98bb-47e9-9be0-fe57c7d89628 ro quiet
"
iso.3.6.1.2.1.25.1.5.0 = Gauge32: 3
iso.3.6.1.2.1.25.1.6.0 = Gauge32:123
iso.3.6.1.2.1.25.1.7.0 = INTEGER: 0
End of MIB
root@gnu:~# snmpwalk -c public192.168.1.105 -v1 1.3.6.1.2.1.1.1.0
iso.3.6.1.2.1.1.1.0 = STRING: "Linux ruby 2.6.32-5-686 #1SMP Tue May 13 16:33:32 UTC 2014 i686"
we can also use iReasoning MIB Browser and SnmpB.
参考链接
http://resources.infosecinstitute.com/vulnerability-assessment-of-snmp-service-part-4/
http://pen-testing.sans.org/blog/2013/05/31/invasion-of-the-network-snatchers-part-i
- Vulnerability Assessment of SNMP Service – III
- Vulnerability Assessment of SNMP Service – I
- Vulnerability Assessment of SNMP Service – II
- Using SQLMap for Automated Vulnerability Assessment
- Vulnerability Assessment - Information Assurance Tools Report
- SNMP Reflected Denial Of Service - PoC
- Network Security Assessment: From Vulnerability to Patch [ILLUSTRATED]
- BackTrack5漏洞评估之OpenVAS(Open Vulnerability Assessment System)
- Introducing 35 Pentesting Tools Used for Web Vulnerability Assessment
- List Of Vulnerability Web Application
- observium & snmp service install
- DNS & DDoS – What is the Vulnerability of DNS Servers to DDoS Attacks?
- Map of Public Vulnerability to Advisory/Alert
- WHYPER: Towards Automating Risk Assessment of Mobile Apps
- A Quality Model for the Systematic Assessment of Requirements Traceability
- Microsoft IIS FTP Service Remote Buffer Overflow Vulnerability
- SAP Netweaver 'SAPHostControl' Service Remote Code Execution Vulnerability
- Ptrace Vulnerability Allows Gaining of Elevated Privileges under Linux
- 高效vim插件
- 数量可变的
- 安装foreman
- 剑指offer 4.2 画图形象化问题2- 顺时针打印矩阵
- 安卓更新Toast流程图
- Vulnerability Assessment of SNMP Service – III
- 程序缓冲区
- iBatis入门教程
- XMPP
- Android 中的 Service 全面总结
- poj1029
- ARM学习笔记&思考_20140810
- Oracle中rowid与rownum的使用
- C++中指针