
毕业设计(论文)-基于C语言的端口扫描的实现.doc
18页基于C语言的端口扫描的实现摘要由于网络技术的飞速发展,网络规模迅猛增长和计算机系统日益复杂,导致 新的系统漏洞层出不穷黑客或者计算机病毒要想顺利渗透入H标计算机中,不 管使用何种技术手段,必然要寻找H标计算机的漏洞为自己打开入侵的大门为 了保证网络中计算机的安全性,必须采取主动策略,快速、及吋、准确、安全的检 测出网络中计算机及防火墙开放的和未开放的端口计算机端口扫描技术就是这 种主动防御策略实现的重要技术手段本课题通过端口扫描器的研究来提高对计算机安全的认识该端口扫描器采 用C#语言开发,在VC 编译环境下通过测试利用TCP connect扫描原 理,扫描主机通过TCP/IP协议的三次握手与H标主机的指定端口建立一次完整 的连接,如果H标主机该端口有冋复,则说明该端口开放利用多线程技术实现 了对一 H标IP进行设定数H的端口扫描,对多IP段的特定端口进行扫描此外, 还利用委托技术实现对界面元素的刷新关键字:端口扫描器;IP段扫描;C#的多线程编程The Implement of Port Scanner Based on C#AbstractAlong with the rapid development of network technology, the more complication of computer and the more enlarged size of Internet, the more leaks may existed in new system. When computer virus or hacker wants to invade to a system or host, no matter what means their take, it is obvious that they have to scan the system leaks at first. So as far as system security is concerned, no matter in Internet or Intranet, you should actively adopt a strategy to detect the state of the ports on your host computer or firewall. Computer port-scanning technology is one of important means to realize positive defense・This topic focuses on the study of port scanner to improve understanding of computer security. The port scanner is developed and tested by C# in VC environment. By using TCP connect scaning technique, the scanning host use TCP / IP three-shook hands protocol to establish a complete link with the target through the specified host ports. If the port of the specified host replies, it shows that the port is opened. The scanner utilizes multi-thread to implement port scanning for multiple target IP addresses at a given time or scanning a specified port in multiple different IP segments.Keywords: Port Scanner; IP Scanner; C # Multithreaded Programming论文总页数:20页1引言 11. 1网络安全 11・2安全扫描技术的产生及其发展趋势 11・3安全扫描技术分类 21.3. 1端口扫描技术 31.3.2 漏洞检测技术 32端口扫描 42. 1端口的基本概念 42. 1. 1 端口的简介 42. 1.2端口的分类 42.2端口扫描技术 52. 2. 1 开放扫描技术 52. 2.2 半开放扫描技术 62・3 隐蔽扫描技术 72・4其扫描他技术 83系统分析与设计 83. 1说明 83. 2基于C#端口扫描器的系统分析与设计 93.3基于C#端口扫描器的期望 93.4端口扫描器的实现与分析 93. 5关键技术介绍 104端口扫描器的实现 104.1端口扫描器的代码及说明 104. 1.1多线程核心代码及说明 104.1.2委托技术的代码及说明 104. 1. 3扫描功能实现的代码及说明 124. 2 端口扫描界而及功能介绍 125扫描技术的市场和前景展望 14结 论 14参考文献 15致 谢 错误!未定义书签。
声 明 错误!未定义书签1引言1.1网络安全二十一世纪是信息化、网络化的卅纪,信息是社会发展的重要资源信息安 全保障能力是一个国家综合国力、经济竞争实力和生存能力的重要组成部分,是 世界各国在奋力攀登的制高点网络安全是指网络系统的硬件、软件及其系统中 的数据受到保护,不因偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连 续可靠正常地运行网络安全包插技术领域和非技术领域两大部分:非技术领域 包括一些制度、政策、管理、安全意识、实体安全等方面的内容;技术领域包括 隐患扫描、防火墙、入侵检测、访问控制、虚拟专用网、CA认证、操作系统等 方面的内容这些技术的H标是保证信息的可控性、可用性、保密性、完整性、 和不可抵赖性1. 2安全扫描技术的产生及其发展趋势随着Internet的不断发展,信息技术已成为促进经济发展、社会进步的巨 大推动力端口扫描技术是网络安全扫描技术一个重要的网络安全技术与防火 墙、入侵检测系统互相配合,能够有效提高网络的安全性安全扫描是安全技术 领域中重要的一类通过扫描能自动检测远端或木地主机系统信息,包括主机的 基木信息(如计算机名、域名、组名、操作系统型等)、服务信息、用户信息以及 漏洞信息,它的重要性在于能够对网络进行安全评估,及吋发现安全隐患,防患 于未然。
任何技术的诞生都有深刻的思想基础人们在对“安全”认识逐步深化的过 程中,不断提出新的安全理论并付诸实践在这个认识的过程中有两次重大的飞 跃:第一次飞跃就是早在二十世纪八十年代,人们认为信息安全就是信息保密相 应地,采取的保障措施就是利用加密机加密和基于计算机规则的访问控制这个 吋期防火墙和入侵检测系统(Intrusion Detection System, IDS )进一步发展起 来,并在保护内部网络中起到了积极的作用然而,九十年代中后期,黑客问题 在一定程度上已成为网络世界的公害对于防卫者,他必须防备入侵网络的全部 手段这使得保障网络安全愈加困难传统的网络站点的安全保护模式是一种被 动防御模式,难以实现对网络远程攻击的有效遏制防火墙可以保护一个子网的 边界,但是无法彻底防止黑客和抵制外部攻击对于内部人员的攻击,防火墙就 更加朿手无策一-般情况下,入侵检测系统只能对己知的入侵进行报警,对于针 对新漏洞发起的攻击也无能为力人们逐渐认识到问题的关键在于如何查找网络安全漏洞,堵住了系统安全漏 洞,也就堵住了黑客和病毒的入侵Dan Farme:和Weitse Venema提出了划时代 的隐患扫描思想一既然黑客可以査找系统的漏洞,并针对这些漏洞对系统进行攻 击,那么隐患扫描程序就可以采取与黑客相同的方法找到系统的漏洞,并将它们 加以修复,起到防御黑客的作用。
第二次飞跃就是在被动防护的基础上,提出了 主动防御的思想这就促进了安全扫描技术的诞生安全扫描的主动防御思想很 快渗透到许多其他的安全技术中例如传统的IDS的响应方式都是被动的,血 2001年2月,美国国防部将主动网络防御技术列入了 2001财年14项先进概念 技术演示项 H (Advanced Concept Technology Demonstrations, ACTD),预计将 在2005年完成,它们希望籍此取得网络防御的制高点,充分掌握信息战的主动 权安全扫描软件从最初的专门为UNIX系统编写的一些只具有简单功能的小程 序,发展到现在,己经出现了多个运行在各种操作系统平台上的、具有复杂功能 的商业程序今后的发展趋势,我认为有以下几点:•使用插件(plugin)或者叫做功能模块技术每个插件都封装一个或者多 个漏洞的测试手段,主扫描程序通过调用插件的方法来执行扫描仅仅是添加新 的插件就可以使软件增加新功能,扫描更多漏洞在插件编写规范公布的情况下, 用户或者第三方公司甚至可以自己编写插件来扩充软件的功能同时这种技术使 软件的升级维护都变得相对简单,并具有非常强的扩展性•使用专用脚本语言。
这其实就是一种更高级的插件技术,用户可以使用 专用脚本语言来扩充软件功能这些脚本语言语法通常比较简单易学,往往用十 几行代码就可以定制一个简单的测试,为软件添加新的测试项脚本语言的使用, 简化了编写新插件的编程工作,使扩充软件功能的工作变得更加容易,也更加有 趣•由安全扫描程序到安全评估专家系统最早的安全扫描程序只是简单的 把各个扫描测试项的执行结果罗列出来,直接提供给测试者血不对信息进行任何 分析处理而当前较成熟的扫描系统都能够将对单个主机的扫描结果整理,形成 报表,能够并对具体漏洞提出一些解决方法,但对网络的状况缺乏一个整体的评 估,对网络安全没有系统的解决方案未来的安全扫描系统,应该不但能够扫描 安全漏洞,还能够智能化的协助网络信息系统管理人员评估本网络的安全状况, 给出安全建议,成为一个安全评估专家系统以丄简要介绍了安全扫描的产生、发展和技术种类、以及发展趋势尤其重 点介绍了两种端口扫描技术及其优缺点这些端口扫描技术理论都是通过计算机 网络的基本理论知识和网络编程技术相结合来具体实现的1. 3安全扫描技术分类安全扫描工具是一把双刃剑,既可以被网络管理员利用,乂可以被黑客利用端口扫描技术和漏洞检测技术是安全扫描中的关键技术,下而分别介绍。
1.3.1端口扫描技术端口扫描展于安全探测技术范畴,对应于网络攻击技术中的网络信息收集技 术黑客能否进“房问”,关键在于他是否发现了打开的“门窗”也就是说,关 键是能否准确地收集系统信息黑客要做的是构造H标网络中所有系统的地图, 包括操作系统类型、版本号以及可以在其丄运行的服务等黑客手工收集信息一般遵循以下步骤:(1) 获取主机名与IP地址:可以通过使用whois与nslookup等工具2) 获得操作系统类型信息:标识的最快方法就是试图telnet至该系统,从 标识来判断3) FTP信息:黑客将测试是否开放FIP服务,匿名FIP是否可用,若可用, 则试图发掘更多的潜在问题4) TCP/订DP扫描:对于TCP, telnet可以用来试图与某一特定端口连接, 这也是手工扫描的基本方法从返回的标识可以得到更多的信息从中再分析系 统是否开放RPC服务、FINGER, RUSERS和RWHO等比较危险的服务这样,到这里为止,黑客完成了对远程系统信息的手工扫描端口扫描软件 就是要尽可能的自动地模拟黑客的。
