{$cfg_webname}
主页 > 计算机 > ASP.NET >

基于C#语言端口扫描器的设计与实现(VS2005)

来源:56doc.com  资料编号:5D3877 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9A5D3877
资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用. 帮助
资料介绍

摘  要
由于网络技术的飞速发展,网络规模迅猛增长和计算机系统日益复杂,导致新的系统漏洞层出不穷。黑客或者计算机病毒要想顺利渗透入目标计算机中,不管使用何种技术手段,必然要寻找目标计算机的漏洞为自己打开入侵的大门。为了保证网络中计算机的安全性,必须采取主动策略,快速、及时、准确、安全的检测出网络中计算机及防火墙开放的和未开放的端口。计算机端口扫描技术就是这种主动防御策略实现的重要技术手段。
本课题通过端口扫描器的研究来提高对计算机安全的认识。该端口扫描器采用C#语言开发,在VC 2005.net编译环境下通过测试。利用TCP connect扫描原理,扫描主机通过TCP/IP协议的三次握手与目标主机的指定端口建立一次完整的连接,如果目标主机该端口有回复,则说明该端口开放。利用多线程技术实现了对一目标IP进行设定数目的端口扫描,对多IP段的特定端口进行扫描。此外,还利用委托技术实现对界面元素的刷新。

关键字:端口扫描器;IP段扫描;C#的多线程编程
 
The Implement of Port Scanner Based on C#
Abstract
Along 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 2005.net 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
 
端口扫描通常指用同一个信息对目标主机的所有需要扫描的端口进行发送探测数据包即扫描,然后,根据返回端口的状态来分析目标主机端口是否打开,是否可用。端口扫描通过与目标主机的TCP/IP端口建立连接并请求某些服务,记录目标主机的应答,收集目标主机相关信息,从而发现目标主机某些内在的安全弱点,并且确定该端口什么服务正在进行并获取该服务的信息。
端口扫描也可以通过捕获本地主机或服务器的流入流出IP数据包来监视本地主机的运行情况,它仅能对接收到的数据进行分析,帮助我们发现目标主机的某些内在的弱点,而不会提供进入一个系统的详细步骤。

基于C#端口扫描器的系统分析与设计
端口是主机与外界通讯交流的数据出入口。端口分为硬件端口和软件端口,所谓硬件端口又称为接口,包括:USB端口、串行端口、并行端口等。软件端口一般指网络中面向连接服务(TCP)和无连接服务(UDP)的通讯协议的端口。一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。通过端口扫描,发现系统的安全漏洞。它使系统用户了解系统目前向外界提供了哪些服务,从而为系统用户管理网络提供了一种手段。

本课题利用TCP connect()扫描:也称全连接扫描。扫描主机通过TCP/IP协议的三次握手与目标主机的指定端口建立一次完整的连接。连接由系统调用TCPclient类的connect()方法。如果端口开放,则连接将建立成功;否则,若返回-1则表示端口关闭。建立连接成功:响应扫描主机的SYN/ACK连接请求,这一响应表明目标端口处于监听(打开)的状态。如果目标端口处于关闭状态,则目标主机会向扫描主机发送RST的响应。
 

基于C#语言端口扫描器的设计与实现(VS2005)
基于C#语言端口扫描器的设计与实现(VS2005)


目  录   12000字
1引言    1
1.1 网络安全    1
1.2 安全扫描技术的产生及其发展趋势    1
1.3安全扫描技术分类    2
1.3.1  端口扫描技术    3
1.3.2  漏洞检测技术    3
2 端口扫描    4
2.1 端口的基本概念    4
2.1.1  端口的简介    4
2.1.2  端口的分类    4
2.2 端口扫描技术    5
2.2.1  开放扫描技术    5
2.2.2  半开放扫描技术    6
2.3隐蔽扫描技术    7
2.4 其扫描他技术    8
3 系统分析与设计    8
3.1 说明    8
3.2 基于C#端口扫描器的系统分析与设计    9
3.3 基于C#端口扫描器的期望    9
3.4 端口扫描器的实现与分析    9
3.5 关键技术介绍    10
4 端口扫描器的实现    10
4.1 端口扫描器的代码及说明    10
4.1.1  多线程核心代码及说明    10
4.1.2  委托技术的代码及说明    10
4.1.3  扫描功能实现的代码及说明    11
4.2    端口扫描界面及功能介绍    14
5 扫描技术的市场和前景展望    17
结    论    17
参考文献    18
致    谢    19
声    明    20

推荐资料