简单端口扫描器的设计与实现课件.ppt

简单端口扫描器的设计与实现课件.ppt

ID:57027440

大小:389.50 KB

页数:20页

时间:2020-07-26

简单端口扫描器的设计与实现课件.ppt_第1页
简单端口扫描器的设计与实现课件.ppt_第2页
简单端口扫描器的设计与实现课件.ppt_第3页
简单端口扫描器的设计与实现课件.ppt_第4页
简单端口扫描器的设计与实现课件.ppt_第5页
资源描述:

《简单端口扫描器的设计与实现课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、简单端口扫描器的设计与实现曹水根目录设计原理总体设计3任务与目标12详细设计45系统测试与改进任务与目标一、任务目标(1)、掌握端口扫描技术的基本原理。(2)、设计并实现一个简单的端口扫描器。(3)、进一步熟悉C语言或其他程序设计语言。二、设计原理扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法可以搜集到很多关于目标主机的各种有用的信息,例如远程系统是否支持匿名登录、是否存在可写的FTP目录、是否开发TELNET服务和HTTPD服务等。二、设计原理2.1、TCPconnect扫描这是最基本的TCP扫描方式,其原理是直接使用系统提供的连接函数完

2、成完整的三次握手。连接函数在几乎具有支持网络编程的编程语言里都能找到,在WindowsSocket2中是connect函数,在CSocket类中是该类的Connect方法。优缺点:这项扫描技术的优点是:不需要关注三次握手的细节,并且该函数对于使用用户的权限没有太多的限制。它的缺点是安全性差,很容易被对方发觉,或者被对方的防火墙过滤掉。目标主机的日志文件也会记录下这一连串的连接和连接出错的服务消息,并被反向查出来。二、设计原理1、TCPconnect端口扫描服务端与客户端建立连接成功的过程:①Client端发送SYN;②Server端返回SYN/ACK,表明端口开放;③Clie

3、nt端返回ACK,表明连接已建立;④Client端主动断开连接。2、TCPconnect端口扫描服务端与客户端未建立连接成功(目标端口关闭)过程:①Client端发送SYN;②Server端返回RST/ACK,表明端口未开放。二、设计原理2.2、TCPSYN扫描TCPSYN扫描又称“半开扫描”。回顾TCP连接的三次握手,申请方首先发送的是一个SYN数据包,服务方在接到这个SYN数据包后,如果该端口处于侦听状态,则会回复一个SYN

4、ACK的数据包。如果该端口没有处于侦听状态,则会回复一个RST的数据包。而此时如果对方处于侦听状态,申请方还需要再向对方回复一个ACK数据包以示建立

5、连接。此时对方就认为连接建立,并记入日志。这种扫描技术的优点在于一般不会在目标计算机上留下记录,有时即使在用netstat命令也显示不出来;但这种方法的一个缺点是必须要有管理员权限才能建立自己的SYN数据包。二、设计原理端口开放:1、Client发送SYN;2、Server端发送SYN/ACK3、Client发送RST断开(只需要前两步就可以判断端口开放);端口关闭:1、Client发送SYN;2、Server端回复RST(表示端口关闭);二、设计原理2.3、TCPFIN扫描TCPFIN扫描也和TCPSYN扫描原理差不多,当申请方主机向目标主机一个端口发送的TCP标志位FIN

6、置位的数据包,如果目标主机该端口是“关”状态,则返回一个TCPRST数据包;否则不回复。根据这一原理可以判断对方端口是处于“开”还是“关”状态。这种方法的缺点是,该原理不是协议规定,因而与具体的协议系统实现有一定的关系,因为有些系统在实现的时候,不管端口是处于“开”还是“关”状态,都会回复RST数据包,从而导致此方法失效。不过,二、设计原理2.4TCP反向Ident扫描Ident(IdentificationProtocol,标识协议)提供了一种方法,可以对建立TCP连接的用户身份进行标识,该协议使用113端口,一旦建立连接,该服务就会读取指定TCP连接的查询数据,将拥有指定

7、TCP连接的用户信息反馈给对方。Ident协议(RFC1413)允许通过TCP连接查询对方的任何进程的用户名,即使这个连接不是由该进程开始的。根据这一原理,扫描程序可以通过TCP连接到对方的WWW端口(默认的80),然后通过Ident协议判断对方是否正以管理员权限运行。这种方法的缺点是只能在和目标端口建立了一个完整的TCP连接后才能看到。2.4、ip分段扫描它并不是直接发送TCP探测数据包,是将数据包分成两个较小的IP段。这样就将一个TCP头分成好几个数据包,从而过滤器就很难探测到。三、总体设计3.1系统主要目标本程序主要实现了:简易的TCPconnect()扫描,支持多线程

8、;UDP扫描功能;能对单个指定的主机进行扫描或扫描指定网段内的主机;能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描;3.2开发环境及工具测试平台:win7使用软件:eclipse开发语言:java语言三、总体设计3.3功能模块与系统结构(1)、单个指定的主机进行扫描或扫描指定网段内的主机;(2)、扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描;(3)、对指定ip段进行扫描;三、总体设计指定端口段的扫描指定ip段的扫描四、详细设计4.1、获取待扫描的端口通过eclipse的runco

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。