目录
1、SNMP简介
2、SNMP架构组成
3、工作原理
4、通信方式
5、检测攻击
1)Snmpwalk:
2)MSF用于SNMP扫描:
SNMP --Simple Network Management Protocol 简单网络管理协议。
SNMP是基于TCP/IP协议族的网络管理标准,是一种在IP网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议,它通过UDP协议来操作,端口号是161/162。
协议版本:
SNMP V1: SNMP协议最初版本(1998年)。
SNMP V2: SNMP协议第二个版本,对比第一版,再性能、安全、机密性和管理者之间通信等方面进行了大量改进。
SNMP V3: SNMP协议目前最新的版本(2004年),提升协议的安全性,增加了认证和密文传输功能。
社区:同一个管理框架下的网络管理站和所有的节点的集合。
网络管理站:一个管理控制台,也称为网络管理系统(NMS)。
节点:网络上的设备(被管理的设备)。
管理员通过NMS获取网关监控数据的工作流程,涉及的一些SNMP协议关键信息:
MIB(管理信息库): 任何一个被管理设备都表示成一个对象,并称为被管理对象。而MIB就是被管理对象的集合。定义了被管理对象的一系列属性,如对象的名称、对象的访问权限和对象的数据类型等。
SNMP代理: 是一种嵌入再设备中的网络管理软件模块,主要来控制本地机器的管理信息,负责将管理信息转换成SNMP兼容的格式,传递给NMS。
工作流程步骤:
1)管理员查询被管理设备中的对象相关值时,通过网络管理站NMS中的MIB找到相关对象
2)网络管理站NMS向SNMP代理申请MIB中定义对象的相关值
3)SNMP代理在自己的MIB库中进行查找
4)SNMP代理将找到的对象相关值返回给网络管理站NMS
SNMP采用客户机/服务器模式进行通信。
客户端 —— 网络管理站NMS
服务器 —— SNMP代理
代理在UDP的161端口接收NMS的读写请求消息。
管理站在UDP的162端口接收代理的事件通告消息。
网络管理站NMS向SNMP代理发出请求,询问一个MIB定义的信息的参数值。SNMP代理收到请求后,返回关于MIB定义信息的各种查询。
snmpwalk是SNMP的一个工具,它使用SNMP的GETNEXT请求查询指定OID(SNMP协议中的对象标识)入口的所有OID树信息,并显示给用户。
参数说明:
–h:显示帮助。
–v:指定snmp的版本, 1或者2c或者3。
–c:指定连接设备SNMP密码。
–V:显示当前snmpwalk命令行版本。
–r:指定重试次数,默认为0次。
–t:指定每次请求的等待超时时间,单为秒,默认为3秒。
–l:指定安全级别:noAuthNoPriv|authNoPriv|authPriv。
–a:验证协议:MD5|SHA。只有-l指定为authNoPriv或authPriv时才需要。
–A:验证字符串。只有-l指定为authNoPriv或authPriv时才需要。
–x:加密协议:DES。只有-l指定为authPriv时才需要。
–X:加密字符串。只有-l指定为authPriv时才需要。
使用举例:
1、snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.25.2.2 --- 取得系统总内存
2、snmpwalk -v 2c -c public 10.1.1.1 hrSystemNumUsers --- 取得系统用户数(注意:hrSystemNumUsers与.1.3.6.1.2.1.25.1.5是等效的)
3、snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.4.20 --- 取得IP信息
4、snmpwalk -v 2c -c public 10.1.1.1 system --- 查看系统信息
5、snmpwalk -v 2c -c public 10.1.1.1 ifDescr --- 获取网卡信息
使用snmp_login模块扫描(其他模块也可):