|
摘 要 随着Internet日益广泛的应用,黑客攻击行为也是有增无减。如何有效地抵御这种攻击行为,一直是信息安全领域的焦点。 而其中,端口扫描技术吸引了越来越多人的关注。端口扫描是黑客搜集目标主机信息的一种常用方法。为了有效地对付网络入侵行为,对端口扫描进行研究是非常有益和必要的。攻击者在攻击一个目标时,首先要获取目标的一些基本信息,端口扫描就是其中最简单最重要的方法之一,它可以扫描目标机器中开放的端口,从而确定目标机器中提供的服务,为下一步攻击做准备。针对端口扫描技术,相应的端口扫描检测技术显的越发重要,作为网络安全技术中的一个重要课题,端口扫描检测技术意义重大。 本文首先阐述了端口扫描技术以及端口扫描检测技术的基本原理和常用方法,然后在此基础上设计了一个对基于网络的端口进行扫描,能判断出目标主机端口开放情况的程序以及一个从网络信息的数据包的捕获和分析着手,再通过统计判断是否存在端口扫描行为的程序,最后从攻击和防御的角度对端口扫描和检测技术作了演示及分析。
关键词:端口;端口扫描;数据包捕获;端口检测
1.1 本课题研究的意义 在今天快速发展的Internet中,黑客攻击方法层出不穷,网络的安全性已经越来越受到威胁。要保证计算机资源的保密性、有效性、完整性也变得越来越困难。 端口扫描作为黑客攻击的一个重要方面,也在不停地向前发展,扫描手段已经变得越来越丰富,越来越隐蔽,越来越具有威胁性。如何有效的对端口扫描行为进行检测,已经是越来越重要的一个课题,这对于保证我们网络的安全性有着重要的意义,也是入侵检测系统(IDS)和入侵预防系统(IPS)的一个重点。 1.2 本课题的研究方法 本文分别对端口扫描技术以及端口扫描的检测技术作了研究,并设计出一个根据扫描者向目标主机的TCP/IP服务端口发送探测数据包,并记录目标主机的响应,通过分析响应来判断服务端口是打开还是关闭,进而得知端口的状态的端口扫描程序,以及一个从网络信息的数据包的捕获和分析着手,通过统计判断是否存在端口扫描行为的端口扫描检测程序。 2 端口扫描概述 2.1 基本概念 端口的含义: 在网络技术中,端口(Port)大致有两种意思:一是物理意义上的端口,比如,ADSL Modem、集线器、交换机、路由器用于连接其他网络设备的接口,如RJ-45端口、SC端口等等。二是逻辑意义上的端口,一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。 我们这里将要介绍的就是逻辑意义上的端口。 端口分类: 逻辑意义上的端口有多种分类标准,下面将介绍两种常见的分类: 按端口号分布划分: (1)知名端口(Well-Known Ports) 知名端口即众所周知的端口号,范围从0到1023,这些端口号一般固定分配给一些服务。比如21端口分配给FTP服务,25端口分配给SMTP(简单邮件传输协议)服务,80端口分配给HTTP服务,135端口分配给RPC(远程过程调用)服务等等。 (2)动态端口(Dynamic Ports) 动态端口的范围从1024到65535,这些端口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配出一个供该程序使用。比如1024端口就是分配给第一个向系统发出申请的程序。在关闭程序进程后,就会释放所占用的端口号。 不过,动态端口也常常被病毒木马程序所利用,如冰河默认连接端口是7626、WAY 2.4是8011、Netspy 3.0是7306、YAI病毒是1024等等。 按协议类型划分: 按协议类型划分,可以分为TCP、UDP、IP和ICMP(Internet控制消息协议)等端口。下面主要介绍TCP和UDP端口
|