项目实习(四)多线程端口扫描器

本文介绍了大学项目实习中设计的一款C#端口扫描器,利用多线程技术实现对目标主机或网段的端口扫描。扫描器通过TCP connect方法检测端口开放状态,并显示服务信息,支持单主机、单端口或IP段扫描,可选显示开放端口。此外,文中讨论了端口扫描原理、常见端口及其服务、扫描技术的优缺点,以及扫描器的工作流程和设计细节。
摘要由CSDN通过智能技术生成

这次是大学期间第四次项目实习,主要是利用C#技术设计一个简单的多线程端口扫描器,能够扫描网段内的各端口信息。

设计任务及目标

本次项目实习的任务是设计并实现一个简单的端口扫描器,它通过与目标主机 TCP/IP端口建立连接并请求某些服务,记录目标主机的应答,分析目标主机相关信息,从而发现目标主机某些内在的安全弱点。即实现一个端口扫描程序,判断指定的主机有哪些端口可以提供服务, 并把扫描得知的结果记录下来并显示出来。

需求分析

二十一世纪是信息化、网络化的世纪,信息是社会发展的重要资源。信息安全保障能力是一个国家综合国力、经济竞争实力和生存能力的重要组成部分,是世界各国在奋力攀登的制高点。国际标准化组织(ISO)对计算机系统安全的定义是:为数据处理系统建立和采用的技术和管理的安全保护,保护计算机硬件,软件和数据不因偶然和恶意的原因遭到破坏,更改和泄露。由此可以将计算机网络的安全理解为:通过采用各种技术和管理措施,使网络系统正常运行,从而确保网络数据的可用性、完整性和保密性。所以,建立网络安全保护措施的目的是确保经过网络传输和交换的数据不会发生增加、修改、丢失和泄露等。网络安全包括技术领域和非技术领域两大部分:非技术领域包括一些制度,政策,管理,安全意识,实体安全等方面的内容;技术领域包括隐患扫描,防火墙,入侵检测,访问控制,虚拟专用网,CA认证,操作系统等方面的内容。这些技术的目标是保证信息的可控性,可用性,保密性,完整性,和不可抵赖性。其中端口扫描属于安全探测技术范畴,对应于网络攻击技术中的网络信息收集技术。

基本介绍

  1. 端口定义
    首先先明确端口的定义。端口是由计算通信协议TCP/IP协议定义的。其中规定,用IP地址和端口作为套接字,它代表TCP链接的一个连接端,一般称为socket,具体来说,就是用[ip:端口]来定位一台主机中的进程。可以做这样的比喻,端口相当于两台计算机进程间的大门,可随便定义,其目的只是为了让两台计算机能找到对方的进程。计算机就想一座大楼,这个大楼有好多入口(端口),进到不同的入口中就可以找到不同的公司(进程)。我们这里所说的端口,不是计算机硬件的 i/o端口,而是软件形式上的概念。服务器可以向外提供多种服务,比如,一台服务器可以同时是 web服务器,也可以是 ftp服务器,同时,它也可以是邮件服务器。为什么一台服务器可以同时提供那么多的服务呢?其中一个很主要的方面,就是各种服务采用不同的端口分别提供不同的服务。根据提供服务类型的不同,端口分为两种,一种是 tcp端口,一种是 udp端口。计算机之间相互通信的时候,分为两种方式:一种是发送信息以后, 可以确认信息是否到达,也就是有应答的方式,这种方式大多采用tcp 协议;一种是发送以后就不管了,不去确认信息是否到达,这种方式大多采用 udp协议。对应这两种协议的服务提供的端口,也就分为 tcp端口和 udp端口。这样,入侵者可以通过扫描器对目标主机的端口进行扫描,即可确定哪些端口是开放的,包括网络协议和各种应用监听的窗口。从开放的端口,入侵者可以知道目标主机大致提供了哪些服务,进而猜测可能存在的漏洞,进而进行攻击。
  2. 常见端口介绍
    端口:21。服务:FTP
    说明:FTP服务器所开放的端口,用于上传,下载。最常见的攻击者用于寻找打开 anonymous的FTP 服务器的方法。这些服务器带有可读写的目录。
    端口:23。服务:Telnet
    说明:远程登录,入侵者在搜索远程登录 UNIX 的服务。大多数情况下扫描这一端口是为了找到机器运行的操作系统。还有使用其他技术,入侵者也会找到密码。
    端口:25。服务:SMTP
    说明:SMTP服务器所开放的端口,用于发送邮件。入侵者寻找 SMTP 服务器是为了传递他们的 SPAM。入侵者的帐户被关闭,他们需要连接到高带宽的 E-MAIL 服务器上,将简单的信息传递到不同的地址。
    端口:53。服务:DNS
    说明:DNS服务器所开放的端口,入侵者可能是试图进行区域传递(TCP),欺骗DNS(UDP)或隐藏其他的通信。因此防火墙常常过滤或记录此端口。
    端口:80。服务:HTTP
    说明:用
  • 5
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值