端口扫描程序的设计与实现.doc

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 端口扫描程序的设计与实现 摘 要 计算机信息网络的发展加速了信息化时代的进程,但是随着社会网络化程度的增加,对计算机网络的依赖也越来越大,网络安全问题也日益明显。端口扫描技术是发现安全问题的重要手段之一。 本程序是在Windows系统中使用C语言用MFC完成的一个端口扫描程序。此程序主要完成了TCP connect()扫描和UDP扫描功能。TCP扫描支持多线程,能对单个指定的主机进行扫描或对指定网段内的主机进行逐个扫描。能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描。此端口扫描程序能快速地进行TCP扫描,准确地检测出对TCP协议开放的端口。而对于UDP扫描只支持单线程,速度较慢。扫描结果以列表的形式直观地展现出来。 关键词:端口扫描、TCP扫描、UDP扫描、TCP多线程扫描 目 录 TOC \o 1-3 \h \z \u 1 引言 1 1.1 课题的背景及意义 1 1.2 端口扫描现状 1 2 系统设计 1 2.1 系统主要目标 1 2.2 开发环境及工具 1 2.3 功能模块与系统结构 2 3 系统功能程序设计 4 3.1 获取本机IP 4 3.2 分割字符串函数的实现 4 3.3 获取待扫描的IP地址 5 3.4 获取待扫描的端口号 5 3.4.1 指定端口号的初始化 6 3.4.2 指定端口号的保存 7 3.5 TCP connect() 扫描 8 3.5.1 基本原理 8 3.5.2 扫描多个主机多端口多线程的实现 8 3.5.3 扫描结果的显示 9 3.6 UDP扫描 10 3.6.1 基本原理 10 3.6.2 计算效验和 11 3.6.3 发送UDP数据包 11 3.6.4 接收ICMP数据包 12 4 测试报告 12 4.1 TCP扫描检测 12 4.1.1扫描本机 12 4.1.2扫描网络中其他主机 13 4.1.3 扫描IP段 13 4.2 UDP扫描检测 14 4.2.1 扫描本机 14 4.1.2扫描网络中其他主机 15 4.3 TCP、UDP一起扫描 16 结 论 17 参考文献 17 第 PAGE 17 页 共 17 页 引言 课题的背景及意义 网络中每台计算机犹如一座城堡,这些城堡中,有些是对外完全开放的,有些却是大门紧闭的。入侵者们是如何找到,并打开它们的城门呢?这些城门究竟通向何处? 在网络中,把这些城堡的“城门”称之为计算机的“端口”。端口扫描是入侵者搜索信息的几种常用方法之一,也正是这一种方法最容易暴露入侵者的身份和意图。一般说来,扫描端口有以下目的: 判断目标主机上开放了哪些服务 判断目标主机的操作系统 如果入侵者掌握了目标主机开放了哪些服务,运行何种操作系统,他们就能使用相应的手段实现入侵。而如果管理员先掌握了这些端口服务的安全漏洞,就能采取有效的安全措施,防范相应的入侵。 端口扫描现状 计算机信息网络的发展加速了信息化时代的进程,但是随着社会网络化程度的增加,对计算机网络的依赖也越来越大,网络安全问题也日益明显。端口扫描技术是发现安全问题的重要手段之一。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法,可以搜集到很多关于目标主机的各种有用的信息,从而发现目标机的某些内在的弱点。 系统设计 系统主要目标 本程序主要实现了: 简易的TCP connect()扫描,支持多线程; UDP扫描功能; 能对单个指定的主机进行扫描或扫描指定网段内的主机; 能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描; 开发环境及工具 测试平台:Windows XP Professional 使用软件:Visual C++ 6.0 开发语言:C语言 功能模块与系统结构 作为端口扫描程序,首先需要完成的功能就是对于系统操作系统的服务端口进行扫描,返回扫描结果。对于端口的扫描,包括对于本机系统服务端口,局域网内目标机系统,以及远程IP的系统服务端口进行扫描。 有些时候,用户并不需要去扫描整个系统的所有端口,因为这样的话不仅会浪费大量的时间,而且可能导致难以找到自己需要了解的端口的扫描结果。所以,对于选择性地对端口进行扫描也非常重要。这当然也是扫描程序需要实现的功能之一。 用户在等待扫描的时候,往往希望知道它的工作进度。这样用户可以更好地控制自己的操作。站在用户的角度思考,设

文档评论(0)

xieliandimei + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档