欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)

程序员文章站 2022-05-17 08:40:14
...

SNMP

1.概述

SNMP

SNMP叫做简单网络管理协议,他的通信走的是UDP的161、162。SNMP的服务端,也就是信息被查询的被管理端使用的是UDP的161端口,客户端使用的是162端口。

和DHCP协议有点像,DHCP也是基于UDP之上的应用层的协议,DHCP使用的是67、68,服务端使用的是67,客户端使用的是68。
SNMP是网络管理员配置起来最最容易疏漏的一项服务。

当你的网络稍微有点规模的时候,通过人工去进行网络设备运行情况的监控的话,效率会低,所以需要引入基于SNMP协议的一些监控机制,通过SNMP,我们可以监控你的网络交换机、服务器、防火墙,比如他们的CPU运行情况、内存、并发连接数、带宽使用情况等系统内部信息,都可以通过SNMP进行监控。

smap可以说是信息的金矿,他里面可以查看到设备的详细内容,但他也是一个网络管理员配置最经常出现问题的服务。public/private/manager

MIB tree

国际上有一些通用的标准化组织发布了一些SNMP的通用标准,也就是说我发什么样的指令是查CPU的,发什么样的指令是查内存队列的,发什么样的指令是查内存大小的,发什么样的指令是查空闲内存大小的,每一个要查的参数点都有一个对应的编号,通过这个编号,我们发送指令的时候,我要查询这个编号的内容,那么这个编号被SNMP的服务端收到之后,就会把相应的数据返回出来。

基于这个MIB库,我们可以查常用的操作系统、网络设备里的信息。所以客户端必须先导入标准MIB库,然后根据MIB库来进行发送。不同的设备厂商也会开发自己的MIB库,比如思科有自己的MIB库,如果你有一个SNMP客户端的程序,要查这些专有的参数信息,需要再客户端先导入他专有的MIB库,用专有的MIB库中特有的一串编号数值发给服务器,才能查到厂家专有的参数最终结果值。

MIB库是一个树形结构。

Community strings
信息查询或重新配置
识别和绕过防火墙筛选

2.onesixtyone

在我们做渗透测试的过程中,查一下目标系统是不是使用的通用的community,是否启用了SNMP这个服务,是否使用的是这个通用的community字符串,这是比如做的一部分工作。如果说目标系统使用的是public,我们可以通过一些工具,发送SNMP的查询指令,对目标ip地址进行查询。

onesixtyone:是kail中基于SNMP的扫描工具。

SNMP是明文传输的,即使我们不能扫描到,但是我们可以做网络嗅探的方式把community的方式抓包抓出来。

onesixtyone 1.1.1.1 public
#该条命令主要用来实现发现目标主机是否使用的是比较脆弱的community
onesxtyone -c dict.txt -i hosts -o my.log -w 100
#-c:结合一个字典  -i:后面跟多个主机列表
dpkg -L onesixtyone #查看onesixtyone安装的文件中是否有自带的字典 

第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)

实例

实验准备windows7x64主机,ip为10.0.0.132,安装snmp
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)
通过public扫,若是目标主机没有返回查询的结果,那么就有可能目标已经改变了他默认的community,没有用public作为community。这时候我们可以使用字典。第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)

3. snmpwalk和snmpcheck

snmpwalk 10.0.0.132 -c public -v 2c  #对10.0.0.132进行snmp的信息的查询
#-v:指定要使用的snmp的版本。现在有v1/v2c/v3版本
snmpwalk -c public -v 2c 1.1.1.1   1.3.6.1.4.1.77.1.2.25
#1.3.6.1.4.1.77.1.2.25:特定库的OID,只查询该OID的具体内容
snmpcheck -t 10.0.0.132
snmpcheck -t 10.0.0.132 -c private -v 2
snmpcheck -t 10.0.0.132 -w

第七章(八)—主动信息收集—SNMP扫描(onesixtyone、snmpwalk、snmpcheck)

相关标签: kail