非标准端口服务的识别前言: 服务识别在网络安全评估中的作用 非标准端口服务识别的意义 常见服务的识别(被动识别、主动识别) 非标准端口服务识别在安全评测中的应用(构想) 感谢 十分感谢北京工业大学计算机学院的老师给予的指导。感谢我的家人、Ee、我宿舍的同学们在我撰写本文时给予的关照。 词汇表
1.前言 从上世纪60年代互联网的前身--ARPANET诞生起,网络就开始向着开放、国际化、自由的方向发展着。以Internet为代表的全球性信息化浪潮日益深刻,信息网络技术的应用正日益普及和广泛。越来越多的大型、重要机构开始通过网络来实现业务和信息共享。随着网络的普及,安全问题成为影响网络效能的重要问题。 在互联网上,每天都要发上数万次以上的攻击事件,或者非授权测试。根据《今日美国报》的报道,黑客每年给全球电脑网络带来数百亿美元的损失。 目前,一般认为,网络存在的威胁主要表现在:
为了保护网络安全,目前通常使用的方法有:安装防火墙(Firewall)、安装入侵检测系统(IDS)、访问控制、加密传输。但是,从某种意义上说,防护永远是被动的、滞后的。新的攻击方法总是在它的防护方法诞生之前就造成了极大破坏。所以,评估网络是否真的安全的方法,不是看他的防护措施有多么多,而是应该站在攻击者的角度,对网络进行真实的、经过授权的攻击测试。 2.服务识别在网络安全评估中的作用 假如从入侵者的角度来评估网络的安全状况,我们可以看到黑客通常的入侵步骤一般是:第一步,收集信息:第二步,收集足够的信息后,扫描目标网络,并且分析其中的安全弱点;第三步,在收集到这些安全弱点的基础上,进攻目标网络;第四步,进攻目标网络后,可以取得足够的权限;第五步,窃取数据或者对系统进行破坏;第六步,打扫战场,把入侵痕迹全部抹去,使被入侵机器的系统管理员没办法追查。第一步,也是最重要的一步--收集信息(Information gather)中,最常见的方法就是端口扫描。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。 根据RFC1700的规定的已分配端口(the assigned ports),网络服务和端口是一一对应的。比如FTP服务通常开设在21端口,TELNET服务通常开设在23端口。进行端口扫描,可以快速获得被评估主机开设的服务。当然,如果能直接控制待评估的主机,不通过端口扫描也可以获得开设服务的情况。但是一些隐藏的比较好的后门程序(backdoors),能逃过一般的本地检查。而且,出于安全的考虑,和评估真实性的考虑,通常情况下,不可能直接控制主机。所以,端口扫描是获得主机开设服务的更好的方法。 假如对www.foo.bar扫描的结果如下: 21,22,25,80,110,7626, 端口(TCP端口)开放。通过查RFC1700马上就可以得出结论:该主机开设的服务有:FTP, SSH,SMTP,HTTP,POP3以及一个未知的服务在7626端口。实际上上面的步骤就是模仿入侵者的第一步--收集信息。现在,已经获得了足够多的信息。作为评估者,我们可以按照现有的针对FTP、SSH、SMTP、HTTP、POP3的漏洞库对该主机进行攻击测试。这样就做到了有的放矢,而不是所有服务的各种漏洞全都一一尝试。先进行信息收集可以节省大量的时间以及网络资源。目前常见的网络安全评估软件,如:ISS、Nessus等都是在做攻击性测试前先做端口扫描。在获得端口列表后,软件自动对应成相应的服务,然后加载相应的测试模块并且进行测试。 3.非标准端口服务识别的意义 刚才提到的www.foo.bar这台主机上有一个未知的服务开设在7626端口。这个端口开放有如下几种可能:
因为该端口是未定义的,所以,检测者无法通过查RFC1700的方法来直接获得服务。根据规定,49151之下的端口都可以被注册为某种应用所有。7626端口开设的服务,很可能是该主机的安全隐患。为了对该主机做完全的安全测试,我们必须识别7626端口开设的服务。 上一篇:端口扫描程序nmap使用手册 下一篇:Xinetd完全指南 更多相关文章
|
推荐文章
精彩文章
·帐号安全
|