端口扫描程序设计毕设论文
- 格式:doc
- 大小:1.28 MB
- 文档页数:35
计算机网络课程设计论文题目:简单端口扫描程序的实现院(部)名称:计算机科学与工程学院学生姓名:专业:学号:指导教师姓名:报告提交时间:报告答辩时间:(不填)目录一、设计要求 (3)二、开发环境与工具 (3)三、设计原理 (3)四、系统功能描述及软件模块划分 (3)五、设计步骤 (5)六、关键问题及其解决方法 (5)七、设计结果 (15)八、软件使用说明 (16)九、参考资料 (16)一、设计要求本系统实现了一个简单的端口扫描器。
1. 使用端口扫描对一台主机进行扫描,一台主机上有哪些端口是打开的;2. 对一个网段进行 IP 扫描,显示出一个网段内有哪些主机是开机的。
二、开发环境与工具Windows的pc机Jdk包,:具备网络环境并连入Internet。
三、设计原理IP地址和端口被称作套接字,它代表一个TCP连接的一个连接端。
为了获得TCP服务,必须在发送机的一个端口上和接收机的一个端口上建立连接。
TCP连接用两个连接端来区别,也就是(连接端1,连接端2)。
连接端互相发送数据包。
端口扫描是在应用程序运行在 TCP 或者 UDP 协议之上工作的, 这些协议是众多应用程序使用的传输机制,端口扫描是通过扫描主机确定哪一些 TCP 和UDP 端口可以访问的过程. 端口扫描常见的几种类型: TCP Connect()扫描 SYN 扫描 NULL 扫描 ACK 扫描 Xmas-Tree Dumb 扫描。
Ping命令经常用来对TCP/IP网络进行诊断。
通过目标计算机发送一个数据包,让它将这个数据包反送回来,如果返回的数据包和发送的数据包一致,那就是说你的PING命令成功了。
通过这样对返回的数据进行分析,就能判断计算机是否开着,或者这个数据包从发送到返回需要多少时间。
Tracert命令用来跟踪一个消息从一台计算机到另一台计算机所走的路径, rusers和finger 通过这两个命令,你能收集到目标计算机上的有关用户的消息。
目录1 引言1.1课题的来源、意义和目的 (1)1.2完成的内容与设计结果 (1)1.2.1 设计内容 (1)1.2.2 设计结果 (2)2 总体设计与实施方案2.1总体设计 (3)2.1.1 设计目标 (3)2.1.2 系统结构 (4)2.2实施方案 (4)2.2.1 开发平台和工具的选择 (4)2.2.2 方案实施步骤 (4)2.2.3 关键技术介绍 (5)3 系统的实现3.1准备阶段 (7)3.2主要功能、界面的设计 (7)3.2.1 系统菜单界面、功能的设计 (8)3.2.2 扫描系统界面、功能的设计 (10)3.2.3 端口扫描模块设计 (13)3.2.4 漏洞扫描模块设计 (21)3.2.5 弱口令扫描模块设计 (26)3.2.6 本地系统监控模块设计 (31)3.2.7 日志查询模块设计 (34)3.2.8 DOS工具集界面、功能的设计 (36)3.2.9 字典管理界面、功能的设计 (39)4 程序调试5 设计结果与改进要求5.1设计结果 (42)5.2改进要求及目标 (42)参考文献 (43)致谢 (44)1 引言1.1 课题的来源、意义和目的随着科学技术的发展,21世纪的人类已经生活在信息时代,计算机技术与网络技术已经深入到人类社会的各个方面。
近年来网络的迅速发展,给人们的生活带来了新的感受,同时人类社会对于网络的依赖性也越来越强。
信息技术的飞速发展给人们带来了极大的便利,同时也引入了巨大的安全隐患。
因此,网络安全问题越来越引起人们的广泛关注,并成为当今网络技术领域研究的重点。
目前,大多数的网络攻击,如:黑客攻击、木马、病毒都是通过安全漏洞侵入目标主机的。
如果我们能够根据具体的应用环境,尽可能早地通过网络扫描来发现这些漏洞,并及时采取适当的措施进行修补,就可以预防安全威胁的发生。
因此,网络安全管理者需要一套工具能够发现网络主机的脆弱性。
端口、漏洞扫描技术能够检测出网络中潜在的安全漏洞,从而使网络管理者一目了然,了解自身网络系统存在的问题。
《计算机网络》课程设计说明书题目:简单的端口扫描器学院:计算机与信息安全学院专业:信息管理与信息系统学生姓名:廖伟兴学号:1200340124指导教师:杨兵题目类型:理论研究实验研究工程设计软件开发2015年03月26日摘要计算机信息网络的发展加速了信息化时代的进程,但是随着社会网络化程度的增加,对计算机网络的依赖也越来越大,网络安全问题也日益明显。
端口扫描技术是发现安全问题的重要手段之一。
本程序是在Windows系统中使用JA V A语言完成的一个端口扫描程序。
此程序主要完成了TCPconnect()扫描功能。
TCP扫描支持多线程,能对单个指定的主机进行扫描或对指定网段内的主机进行逐个扫描。
能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描。
此端口扫描程序能快速地进行TCP扫描,准确地检测出对TCP协议开放的端口。
关键词:端口扫描TCP扫描TCP多线程扫描目录摘要 (2)目录 (3)1.前言 (1)2.需求分析 (1)2.1.课题背景 (1)2.2.本课题研究意义 (2)2.3.安全扫描技术的产生及其发展趋势 (2)3.端口扫描的相关知识 (3)3.1.网络端口扫描原理 (3)3.2.端口 (3)3.3.相关协议 (4)3.3.1.TCP数据包结构 (4)3.3.2.TCP/IP遵循的原则 (5)3.3.3.TCP三次握手过程 (5)3.4.扫描的定义 (6)3.5.多线程技术 (6)4.概要设计 (6)4.1.整体设计框架 (6)4.2.流程图描述 (8)5.详细设计 (8)5.1.开发环境 (8)5.2.界面设计 (9)5.3.主要类说明 (9)5.4.部分关键代码描述 (10)5.4.1.基本信息检测模块 (10)5.4.2.参数设计模块 (11)5.4.3.端口扫描模块 (15)6.系统测试 (16)6.1.系统主界面 (16)6.2.子系统功能测试 (17)7.总结 (20)参考文献 (21)1.前言网络中的每一台计算机如同一座城堡,在这些城堡中,有的对外完全开放,有的却是紧锁城门。
端口扫描器实现毕业论文本科学生毕业论文简单的端口扫描器实现诚信承诺书郑重承诺:所呈交的论文是作者个人在导师指导下进行的研究工作及取得的研究成果。
除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得安阳师范学院或其他教育机构的学位或证书所使用过的材料。
与作者一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
作者签名:日期:导师签名:日期:院长签名:日期:论文使用授权说明本人完全了解安阳师范学院有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。
保密论文在解密后遵守此规定。
作者签名:导师签名:日期:目录1 引言 (2)2 端口扫描概述 (2)3 端口扫描相关知识 (2)3.1 端口的基本概念 (2)3.2 常见端口介绍 (3)3.3 端口扫描器功能简介 (3)3.4 常用端口扫描技术 (3)3.4.1 TCP connect()扫描 (3)3.4.2 TCP SYN扫描 (3)3.4.3 TCP FIN 扫描 (3)3.4.4 IP段扫描 (4)3.4.5 TCP反向 ident扫描 (4)3.4.6 FTP 返回攻击 (4)4 实验流程和运行流程 (4)4.1 实现流程 (4)4.2 程序中主要的函数 (7)4.3 主流程图 (8)5 总结 (10)5.1 提出问题 (10)5.2 解决问题 (10)5.3 心得体会 (10)6 致谢 (11)参考文献 (11)第1页简单的端口扫描器实现李涛(安阳师范学院人文管理学院河南安阳 455002)摘要:本设计通过端口扫描器的研究来提高对计算机安全的认识。
利用TCPconnect扫描原理,扫描主机通过TCP/IP协议的三次握手与目标主机的指定端口建立一次完整的连接,如果目标主机该端口有回复,则说明该端口开放。
学士学位论文远程端口扫描和本地端口监视系统的设计与实现设计人: XXX指导教师:XXX所属系部:计算机科学与技术学院专业班级:XXXXXX2014 年6月如果需要源代码、论文等请联系QQ1336540333太原科技大学毕业设计(论文)任务书学院:计算机科学与技术学院学生姓名专业班级同组人无任务下发时间2014年2月任务完成时间2014年6月设计(论文)题目远程端口扫描和本地端口监视系统的设计与实现设计目的要求通过毕业设计培养学生分析实际问题,利用软件系统解决实际问题的能力,具体要求如下:1.了解系统开发环境和工具;2.熟悉C#语言;3.掌握TCP/IP协议的工作原理;4.完成毕业论文的书写工作;设计主要内容1.熟悉系统的开发工具和相关技术;2.对“IP端口监控”进行需求分析;3.对“IP端口监控”进行模块划分;4.完成“IP端口监控”的设计和开发;5.测试并部署系统;设计提交资料毕业论文程序源代码学生签名指导教师签名系主任签名主管院长签名太原科技大学学士学位论文中文摘要计算机信息网络的发展加速了信息化时代的进程,但是随着社会网络化程度的加深,对计算机网络的依赖也越来越大,网络安全问题也日益明显。
端口扫描技术是发现安全问题的重要手段之一。
本程序是在Windows系统中使用C#语言完成的一个端口监控程序。
此程序主要完成了TCP扫描和UDP扫描功能,实现对所有有网络连接的进程端口的监控。
TCP connect()扫描支持多线程,能对单个指定的主机进行扫描或对指定网段内的主机进行逐个扫描。
能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描。
此端口扫描程序能快速地进行TCP扫描,准确地检测出对TCP协议开放的端口。
而对于UDP扫描只支持单线程,速度较慢。
扫描结果以列表的形式直观地展现出来。
关键词:计算机网络;网络安全;安全评估;端口扫描。
端口扫描程序的设计与实现一、引言端口扫描程序是一种网络安全工具,用于探测目标主机上开放的端口。
通过端口扫描,可以了解目标主机上运行的服务和应用程序,从而评估其安全性。
本文将介绍端口扫描程序的设计与实现,包括程序结构、扫描策略和实现步骤等内容。
二、程序结构1.用户界面模块:提供用户输入目标主机IP地址和扫描策略等参数的接口。
2.扫描控制模块:负责解析用户输入的参数,控制扫描的流程和策略,并调用扫描模块进行扫描。
3.扫描模块:负责具体的端口扫描操作,包括TCP连接扫描、UDP扫描等。
4.结果输出模块:将扫描结果以易于理解的方式输出给用户。
三、扫描策略设计端口扫描程序时,需要考虑以下几个方面的扫描策略:1.扫描的端口范围:通常选择常见的端口范围,如1-10242.扫描的协议:主要包括TCP和UDP两种,可以根据需要选择合适的协议。
3.扫描的方式:主要有全连接扫描、半开放扫描和综合扫描等方式,可以根据目标主机的特征选择合适的方式。
4.扫描的速度:需要根据目标主机的性能和网络负载,控制扫描的速度,避免给对方主机造成过大负载。
四、实现步骤实现一个端口扫描程序,可以按照以下步骤进行:1.解析用户输入的参数,包括目标主机IP地址、扫描的端口范围和扫描的策略等。
2.根据用户输入的参数,确定使用TCP还是UDP协议进行扫描。
3.遍历用户指定的端口范围,对每个端口进行扫描。
4.对于TCP连接扫描,建立与目标主机的连接,并发送一个特定的请求,根据响应确定端口的开放状态。
5.对于UDP扫描,向目标主机发送一个UDP数据报文,并根据响应确定端口的开放状态。
6.将扫描的结果输出给用户,可以使用文本形式或可视化界面展示。
五、安全性考虑在设计端口扫描程序时,需要考虑安全性问题,避免对目标主机和网络造成损害。
可以采取以下一些措施:1.遵守法律和道德准则,仅用于授权目的进行扫描,避免滥用。
2.合理控制扫描的速度,避免给目标主机造成过大负荷。
端口扫描程序的设计与实现端口扫描程序的设计与实现1. 简介端口扫描程序是一种用来探测目标主机开放的网络端口的工具。
它通过向目标主机发送特定的网络消息,然后根据返回的消息判断该端口是否开放。
2. 设计思路2.1 输入端口扫描程序的输入通常包括目标主机的IP地质和要扫描的端口范围。
2.2 扫描过程扫描程序通过创建一个或多个线程来并发地扫描目标主机。
每个线程都会尝试连接目标主机的一个端口,并等待一段时间来判断端口是否开放。
如果端口开放,则将其记录下来。
2.3 输出扫描完成后,程序会将扫描结果输出到一个文件中。
每行记录一个开放的端口信息,包括目标主机的IP地质和开放的端口号。
3. 实现3.1 编程语言端口扫描程序可以用各种编程语言来实现,如、Java、C等。
选择合适的语言取决于开发者的个人喜好和实际需求。
3.2 网络连接程序需要使用Socket库来进行网络连接。
通过建立TCP连接或发送UDP消息来目标主机的端口状态。
3.3 多线程为了提高扫描速度,可以使用多线程来并发地扫描目标主机的端口。
每个线程独立地连接一个端口并等待返回消息。
3.4 错误处理在程序运行过程中可能会遇到各种错误,如网络连接失败、目标主机不可达等。
为了使程序具备鲁棒性,需要对这些错误进行适当的处理。
4. 特点与应用4.1 特点端口扫描程序可以用于检测目标主机的安全性,找出可能的漏洞和攻击面。
程序具备高效、快速、并发的特点,能够在短时间内扫描大量的端口。
4.2 应用网络管理员可以使用端口扫描程序来评估网络的安全性。
渗透人员可以利用端口扫描程序来发现目标主机的弱点。
系统管理员可以使用端口扫描程序来查找网络中的活跃主机和开放端口。
以上是端口扫描程序的设计与实现的简要介绍。
希望对您有所帮助!。
网络端口扫描技术原理分析与实现作者:李利均摘要随着计算机在现代社会的广泛应用,计算机网络在人们工作和生活的各个领域占有越来越重要的地位。
由于网络规模的迅速扩张和计算机系统的日益复杂,新的系统漏洞层出不穷。
如何保证网络的安全运行已经成为一个亟待解决的问题。
网络扫描技术是当前网络安全评估的重要组成部分,通过对网络的扫描,能够及时了解网络的运行状况及其存在的弱点,从而帮助网络管理员充分的了解网络的实际情况,并制定合适的安全策略,最终达到改善网络状况,增强网络安全系数的目的。
同时,网络扫描技术也常为入侵者所利用,通过扫描远程主机或网络,能够探测攻击目标的软硬件配置信息,为制订攻击策略做准备。
本文详细研究了计算机端口扫描技术的优缺点,并采用多线程技术结合TCP全连接扫描实现了基于C语言和Windows Socket编程的网络端口扫描程序。
程序模拟入侵者对目标主机的多线程入侵扫描,快速、及时、准确地检测出目标主机的端口状态,为网络系统管理员评测系统安全性提供数据支持。
关键词:多线程;TCP全连接;同步;Winsock;TCP/IPAbstractWith the wide range of applications of the computer in modern society, the computer network plays a more and more important role in people’s working and living. Due to the rapid expansion of the network size and the increasing complexity of the computer systems, an endless stream of new vulnerabilities will be found. How to ensure the safe operation of the network has become an issue. Network scanning technology is an important component of the current network security assessment. By scanning the network to keep abreast of the operation of the network and its weaknesses, thereby helping network administrators to fully understand the actual situation of the network and to develop appropriate security policy, and ultimately achieve the purpose of improving the network conditions, and enhancing the network security coefficient. At the same time, network scanning technology is also often used by intruders. By scanning the remote host or network, intruders can detect the hardware and software configuration information of the target. Thereby formulate the strategies to prepare attack.In this paper, I give a detailed study of the advantages and disadvantages of computer port scanning technology, and use the multi-threading technology and TCP connect scanning technology to achieve a network port scanner which is based on the C programming language and Windows Socket. The procedure simulate the invaders on the target host's invasion of multi-threaded scanning, rapidly, timely and accurately detect the computer port status of the target host in order to provide data to the network system administrator to evaluate the security coefficient of system.Key words: multi-threaded; TCP connect; synchronization; Winsock; TCP / IP第1章绪论 (1)1.1网络安全背景 (1)1.1.1网络安全问题来源 (1)1.1.2端口扫描技术对于网络攻击的作用 (2)1.1.3网络端口扫描对策 (3)1.2国内外相关领域的发展动态 (3)1.3论文的主要工作以及组织安排 (5)1.3.1论文的主要工作 (5)1.3.2论文的结构安排 (5)第2章论文涉及的相关技术的分析 (6)2.1TCP/IP协议 (6)2.1.1 TCP/IP协议分层 (6)2.1.2 TCP协议与TCP连接的建立 (8)2.2 WINDOWS SOCKET简介 (10)2.2.1 基本概念 (10)2.2.2 Winsock的编程特点 (11)2.2.3 Winsock 2.0常用的函数 (12)第3章当前端口扫描技术分析 (13)3.1端口扫描原理 (13)3.1.1端口简介 (13)3.1.2端口扫描原理 (14)3.2常见端口扫描技术 (15)3.2.1 TCP connect 扫描 (15)3.2.2 TCP SYN 扫描 (15)3.2.3 秘密扫描 (15)3.2.4其它扫描技术 (17)3.3端口扫描技术小结与多线程技术的引入 (18)3.3.1常用端口扫描技术优缺点的比较 (18)3.3.2多线程技术简介 (19)3.2.3 线程的同步 (19)第4章多线程TCP全连接扫描的实现 (22)4.1程序功能简介 (22)4.2端口扫描线程的同步 (24)4.3程序设计流程分析 (25)第5章设计总结 (28)参考文献 (29)翻译原文资料 (30)译文 (37)致谢 (43)第1章绪论1.1网络安全背景随着信息化进程的深入和网络的迅速发展,个人乃至社会对计算机网络的依赖达到了空前的程度。
半打开端口扫描技术的实现摘要随着互联网的飞速发展,网络入侵行为日益严重,网络安全日益成为人们关注的焦点。
端口扫描技术是网络安全扫描技术的重要技术之一。
对目标系统进行端口扫描,是网络系统入侵者进入目标系统的第一步。
本文对端口扫描技术的原理和应用进行了阐述,并设计了一个简单的基于windows平台上的端口扫描系统。
在论文中介绍了半打开扫描中的SYN探测技术,分析了这种扫描技术实现的原理和特点。
实际设计中采用了扫描安全性和可行性较好的SYN探测技术来实现端口扫描,并实现了端口列表自定义,扫描结果存储等几大模块化功能。
最后结合当前的实际情况对端口扫描的未来发展方向提出了一点个人的看法。
关键词:网络安全;端口扫描;SYN探测The Implementation of a Port-scanning ProgramBased on Semi-opened Port TechnologyAbstractWith the quick development of the internet, network intrusion behavior becomes more and more serious; Network security becomes the focus which people pay attention to. Port-Scanning Technology is one of the most important technologies of the safe scanning on internet. The first step that network system intruders enter the target system is the port scanning of the system. This essay explains the principle and application of the port scanning technology, and then designs a simple port-scan system which bases on the Windows platform. The paper introduces the SYN probe technology of the semi-open scan technologies, analyzes its implementing principle, approach and characters. In the real design it use the SYN probe technology which has a better scanning security and feasibility to achieve the Port Scanning, then realize user-defined port list function, recording of the scanning result, and some other functional modules. At last, combined with the nowadays actual situation, the paper brings a few personal minds for the future direction of the development of the Port-Scanning.Key words: Network security;Port scanning;SYN probe目录论文总页数:22页1 引言 (1)1.1端口扫描概述 (1)1.2端口扫描技术的国内外研究现状 (1)1.3端口扫描原理 (1)1.4端口扫描技术概要 (2)1.5SYN技术详解 (3)1.5.1TCP包探测原理 (3)1.5.2SYN包探测 (4)1.5.3分组时延 (4)1.6端口扫描实现方法 (4)2 需求分析 (4)2.1端口扫描器的总体要求 (4)2.1.1设计背景 (4)2.1.2用户特点 (4)2.1.3软件开发及运行环境 (5)2.2端口扫描器的需求分析 (5)3 端口扫描器的实现 (5)3.1功能模块简介 (5)3.2程序实现流程 (5)3.3SYN探测的实现 (5)3.4端口扫描功能模块 (8)3.4.1端口选择模块 (8)3.4.2目标IP选取模块 (9)3.4.3终止扫描 (10)3.4.4扫描结果存储模块 (10)4 测试环境及结果 (12)4.1硬件环境 (12)4.2软件环境 (12)4.3测试结果 (12)5 端口扫描技术的发展方向和趋势 (12)结论 (13)参考文献 (13)1引言1.1端口扫描概述网络安全探测在网络安全中起着主动防御的作用,占有非常重要的地位。
端口扫描程序的设计与实现摘要随着互联网的飞速发展,网络入侵行为日益严重,网络安全日益成为人们关注的焦点。
端口扫描技术是网络安全扫描技术的重要技术之一。
对目标系统进行端口扫描,是网络系统入侵者进入目标系统的第一步。
本文对端口扫描技术的原理和应用进行了阐述,并设计了一个简单的基于windows平台上的端口扫描系统。
此程序主要完成了TCP connect()扫描和UDP扫描功能。
TCP扫描支持多线程,能对单个指定的主机进行扫描或对指定网段内的主机进行逐个扫描。
能扫描特定的部分端口号或对指定的端口段内的端口进行逐个扫描。
此端口扫描程序能快速地进行TCP扫描,准确地检测出对TCP协议开放的端口。
而对于UDP 扫描只支持单线程,速度较慢。
扫描结果以列表的形式直观地展现出来。
关键词:网络安全端口扫描TCP扫描UDP扫描Design and Implementation of a Port ScannerABSTRACTWith the quick development of the internet, network intrusion behavior becomes more and more serious; Network security becomes the focus which people pay attention to. Port-Scanning Technology is one of the most important technologies of the safe scanning on internet. The first step that network system intruders enter the target system is the port scanning of the system.This essay explains the principle and application of the port scanningtechnology, and then designs a simple port-scan system which bases on the Windows platform.This program is essentially completed the TCP connect () scan and UDP scanning function.TCP scan support multi-threaded, single specified host scan-by-scan or network segment specified host. Can scan a specific part of the port number or port in the port specified in paragraph one by one scan. This port scanner can quickly scan TCP,accurately detect the open ports on the TCP protocol. For UDP scanning only supports single-threaded, but slower. Scan results visually demonstrate the form of a list.Key Words: Network Security Port Scanning TCP Scan UDP Scanning目录第一章绪论 (1)1.1引言 (1)1.2课题的背景及意义 (1)1.3端口扫描概述 (2)1.4端口扫描国内外研究现状 (2)1.5端口扫描技术概要 (2)1.6安全扫描技术的产生及其发展趋势 (3)1.7安全扫描的分类 (4)第二章端口扫描的相关知识 (5)2.1网络端口扫描原理 (5)2.2端口的基本概念及其分类 (6)2.2.1 端口的基本概念 (6)2.2.2 端口的分类 (7)2.3相关协议 (8)2.3.1 TCP头的组成 (8)2.3.2 TCP三次握手过程 (9)2.3.3 TCP/IP实现遵循的原则 (10)2.4常用端口和漏洞扫描技术 (10)2.5扫描的定义 (11)2.6多线程技术 (12)第三章系统设计 (12)3.1系统的主要目标 (12)3.2开发环境及工具 (13)3.3功能模块与系统结构 (13)第四章系统实现 (15)4.1 程序的主要数据结构 (15)4.1.1数据包首部结构 (15)4.1.2网卡信息数据结构 (17)4.1.3传递给线程的参数的数据结构 (17)4.2 核心算法的设计 (18)4.2.1 TCP校验和的计算 (18)4.2.2 Winpcap 过滤原则 (19)4.3端口扫描流程 (19)4.3.1 端口扫描的总流程 (19)4.3.2 TCP扫描流程 (20)4.3.3 UDP扫描流程 (21)4.4调试分析 (23)4.4.1 编译后选择网卡界面 (23)4.4.2 选择设备后的开始界面 (23)4.4.3 TCP扫描 (24)4.4.3.1 Connect 扫描 (24)4.4.3.2 XMAS 扫描 (24)4.4.3.3 SYN 扫描 (25)4.4.3.4 ACK扫描 (25)4.4.3.5 FIN扫描 (26)4.4.3.6 NULL扫描 (26)4.4.4 UDP扫描 (27)4.4.5 子系统功能测试 (27)第五章总结 (29)参考文献 (30)致谢 (31)第一章绪论1.1引言在计算机网络开放性和互连性不断增强的今天,网络安全问题日益引起社会的重视,网络安全评估工具逐渐被企事业单位所接受。
端口扫描器作为网络安全评估软件的一部分,在网络安全方面起着重要的作用。
通过向目的主机的TCP/IP端口发送TCP或UDP探针,记录目标的响应信息,得出目的主机服务端口的状态和提供的服务,从而分析出系统存在的漏洞。
网络管理人员可以借此分析网络和主机中的安全状况,先于黑客了解系统存在的漏洞,从而防患于未然[1]。
WinPcap库是一套基于Win32平台的开放源代码的网络数据包截获和分析系统。
它具有功能强大的包处理API接口,而且性能稳定、效率极高。
该扫描器利用WinPcap库处理原始数据包,能对目的主机相应端口进行扫描并能显示目的主机的操作系统相关信息。
该扫描器目前在局域网中工作良好,性能稳定。
1.2课题的背景及意义网络中每台计算机犹如一座城堡,这些城堡中,有些是对外完全开放的,有些却是大门紧闭的。
入侵者们是如何找到,并打开它们的城门呢?这些城门究竟通向何处?在网络中,把这些城堡的“城门”称之为计算机的“端口”。
端口扫描是入侵者搜索信息的几种常用方法之一,也正是这一种方法最容易暴露入侵者的身份和意图。
一般说来,扫描端口有以下目的和用途:1)能识别在线的一台计算机或多台计算机组成的网络。
2)能识别计算机上启用的服务、开放的端口。
3)能识别计算机上操作系统类型、系统信息。
4)能识别计算机上应用程序和特定服务的版本。
5)能识别计算机的系统漏洞、软件漏洞。
如果入侵者掌握了目标主机开放了哪些服务,运行何种操作系统,他们就能使用相应的手段实现入侵。
而如果管理员先掌握了这些端口服务的安全漏洞,就能采取有效的安全措施,防范相应的入侵[2]。
11.3端口扫描概述网络安全探测在网络安全中起着主动防御的作用,占有非常重要的地位。
网络安全探测的所有功能都是建立在端口扫描的基础上,所以对端口扫描技术的研究有着非常重要的现实意义。
每一个网络主机都相当于一个“房间”,黑客能否进入“房间”,取决于是否发现了打开的“门窗”。
也就是说,能否入侵网络主机,或者网络主机是否安全,关键在于能否查出网络主机的系统信息。
而端口是主机与外界通讯交流的数据出入口,即是“门窗”。
端口分为硬件端口和软件端口,所谓硬件端口又称为接口,包括:USB端口、串行端口、并行端口等。
软件端口一般指网络中面向连接服务(TCP)和无连接服务(UDP)的通讯协议的端口。
一个端口就是一个潜在的通信通道,也就是一个入侵通道。
对目标计算机进行端口扫描,能得到许多有用的信息。
通过端口扫描,发现系统的安全漏洞。
它使系统用户了解系统目前向外界提供了哪些服务,从而为系统用户管理网络提供了一种手段[3]。
1.4端口扫描国内外研究现状网络的安全状况取决于网络中最薄弱的环节,任何疏忽都可能引入不安全的因素,最有效的方法是定期对网络系统进行安全性分析,及时发现并修正存在的脆弱性,保证系统的安全。
国外安全扫描技术的历史可以追溯到20世纪90年代,当时因特网刚刚起步,但是在过去的十多年内,扫描技术飞速发展,迄今为止,其扫描技术己经非常完善,但是在全面性、隐蔽性和智能性上还有待提高。
而安全扫描器从最初专门为UNIX系统而编写的一些只有简单功能的小程序发展到现在,己经出现了可以运行在多个操作系统平台上的、具有复杂功能的系统程序[4]。
国内的扫描技术是在国外扫描器基础上发展起来的。
其中有些专门从事安全技术的公司包括绿盟科技、启明星辰等等。
这些公司的扫描器以硬件为主,其特点是执行速度快,不像软件一样受到安装主机系统性能的限制。
然而对于更多的基于主机的端口扫描器而言,简单、实用、可靠才是它们的长处。
1.5端口扫描技术概要端口扫描途径主要是扫描器。
扫描器是一种自动检测远程或本地主机安全性弱点的程序,通过使用扫描器可以不留痕迹的发现远程服务器的各种TCP端口的分配及提供的服务和它们2的软件版本。
这就能让我们间接的或直观的了解到远程主机所存在的安全问题。
扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法,可以搜集到很多关于目标主机的各种有用的信息。
扫描器有三项功能:发现一个主机或网络的能力;一旦发现一台主机,有发现什么服务正运行在这台主机上的能力;通过测试这些服务,发现漏洞的能力[5]。
为了理解扫描以及它的工作原理,首先应对TCP的三次握手机制有所了解。
TCP的报头包含一个序列号和一些起着特殊作用的标记位。
这里仅提到其中的四个标记位:SYN(同步),ACK(确认),RST(复位)和FIN(完成)。
它们四个的作用与这里讨论的主题密切相关。
当系统间建立连接和释放连接时,就会用到所谓的握手机制。
本文中所提到的连接均指的是发生在两个IP地址间,有一定的端口号的连接。
它的工作原理大致如下:握手的第一步,一台计算机首先请求和另外一台计算机建立连接,它通过发送一个SYN请求来完成,也即前面提到的SYN标记位置位。