引言:很多操作系统或者网络设备的SNMP代理服务都存在默认口令。如果没有修改这些默认口令或者口令为弱口令,远程攻击者就可以通过SNMP代理获取系统的很多细节信息。如果攻击者得到了可写口令,它甚至可以修改系统文件或者执行系统命令。
很多操作系统或者网络设备的SNMP代理服务都存在默认口令。如果用户没有修改这些默认口令或者将这些口令设置为弱口令,远程攻击者就可以通过SNMP代理获取系统的很多细节信息。如果攻击者得到了可写口令,其甚至可以修改系统文件或者执行系统命令。
建议修改SNMP默认口令或者禁止SNMP服务,其过程为:
对于像Windows系统,可以参考以下方法来关闭SNMP服务(以Windows 2000为例):
打开控制面板,双击“添加或删除程序”,选择“添加/删除Windows组件”,选中“管理和监视工具”,双击打开,取消“简单网络管理协议”复选框,点击“确定”,然后按照提示完成操作。
在Cisco路由器上可以使用如下方式来修改、删除SNMP口令:
1. 通过telnet程序或者通过串口登录进入Cisco路由器。
2. 进入enable口令:
3. 显示路由器上当前的snmp配置情况:
4. 进入配置模式:
可以选用下面三种方法中的一种或者结合使用:
1.如果不需要通过SNMP进行管理,可以禁止SNMP Agent服务:
将所有的只读、读写口令删除后,SNMP Agent服务就将被禁止。
a.删除只读(RO)口令:
2.如果用户仍需要使用SNMP,可以选择修改SNMP口令,使其不易被猜测。
a. 删除原先的只读或者读写口令:
b. 设置新的只读和读写口令,口令强度应该足够,不易被猜测:
3.只允许信任主机通过SNMP口令访问(以对只读口令“public”为例 )。
a.创建一个访问控制列表(假设名为66):
b.禁止任何人访问public口令:
c.设置允许使用public口令进行访问的可信主机(1.2.3.4):
对于读写口令的访问限制同上。
在对SNMP口令进行修改、删除等操作之后,需要执行write memory命令保存设置:
如果有防火墙设备,用户也可以在防火墙上过滤掉对内部网络UDP 161端口的访问。