端口扫描器的设计与实现
TCP端口的高级扫描方法及实现

表 1 目标主机不同设置情况下的扫描结果1.引言由于每一个端口都对应了相应的服务, 支持 IP_HDRINCL 选项的设置。
扫描程序界面如图 1 所示。
TCP Connect()扫描由于不需 要 使 用 原 始 套 接 字 实 现 , 需单 独构造一个扫描线程实现, 其扫描数据包的发送过程为: 声明一 个套接字, 设置套接字选项, 设置套接字为非阻塞, 调用 connect 所以某一端口开放 也就意味着其对应的服务也在运行。
利用端口扫描的结果, 我们 可以掌握主机的运行状况, 帮助我们判断有没有后门程序在运 行, 关闭不需要的服务等提供条件。
当然, 黑客通过端口扫描也 可以发现系统的弱点, 为进一步进行攻击提供条件。
本文使用 V C6.0 作为编程工具, 在 Windows2000 平台下, 使 用 Windows 原始套接字实现带有特殊标志字段数据包的产生、 发送, 并实现对目标主机响应数据包的嗅探。
利用数据包嗅探过 程分析俘获到的响应数据包, 得到 TCP 数据单元头部的六个 1 位标志字段的内容。
通过对已知目标主机的端口状态及其响应 的分析, 进而得到一些规律, 应用这些规律可以进一步帮助我们判断目标主机端口是否开放。
2. TCP 端口扫描原理 2.1 TCP 实现原理 函数。
该扫描过程主要应用了 TCP Connect () 函数实现, connect 函数返回值判断目标端口是否开放。
根据 原始套接字扫描是一种比较复杂的扫描过程, 需要手动设 置 TCP 和 IP 的 头 部 字 段 。
Windows 系统 下 Windows2000 或 WindowsXP/S erver 2003 支持原始套接字。
构造并发送原始套接 字扫描过程如下: 声明一个原始套接字, 设置 IP_HDRINCL 选项 以构造 TCP 和 IP 的头部字段, 填充套接字 IP 首部( 在这里将目 标主机 IP 填入) , 填充 TCP 首部( 在这里将目标主机端口填入) , 计算校验和, 发送数据包。
全自动漏洞扫描系统的设计与实现

全自动漏洞扫描系统的设计与实现随着互联网的不断发展,网络安全问题日渐突出。
网络攻击者通过漏洞攻击来侵犯他人的计算机系统,从而进行数据窃取和破坏,对个人和企业造成了严重的影响。
为了确保网络安全,开发全自动漏洞扫描系统成为了一个重要的任务。
本文将讨论全自动漏洞扫描系统的设计与实现。
一、漏洞扫描系统的必要性随着网络技术的不断发展,网络攻击手段也在不断更新。
为了应对这种情况,企业需要使用一种无需过多人力投入,即可自动化进行漏洞扫描的系统。
通过实时监测和检查企业内部计算机系统和网络的安全性,及时识别存在的安全漏洞,并给出相应的解决方案,能够更好地保障企业的网络安全。
二、漏洞扫描系统的设计原理在全自动漏洞扫描系统中,需要包含以下几个部分:资产识别、漏洞检测和漏洞解决方案等。
资产识别主要是通过扫描网络上的所有IP地址来识别出企业内部所有的主机和设备;漏洞检测则是识别出这些主机和设备上存在的安全漏洞;漏洞解决方案则是提供相应的安全解决方案,帮助企业及时消除安全漏洞。
在漏洞扫描系统的设计中,需要采用一定的漏洞扫描技术,例如:端口扫描、服务识别、漏洞检测、爆破等。
其中,漏洞检测技术是最为核心的部分,需要采用一定的漏洞检测工具,例如:Nmap、OpenVAS等。
三、漏洞扫描系统的实现在漏洞扫描系统的实现过程中,需要分别实现资产识别、漏洞检测和漏洞解决方案等三个部分。
(一)资产识别的实现资产识别主要通过扫描网络上的所有IP地址来识别出企业内部所有的主机和设备。
这个过程可以使用Nmap来实现。
例如,可以通过以下命令识别网络中所有的主机IP地址:nmap -sP 192.168.0.1/24通过该命令,系统将扫描192.168.0.1/24网络中的所有IP地址,并识别出其中所有的主机IP地址。
(二)漏洞检测的实现在资产识别后,需要进行漏洞检测,来识别出这些主机和设备上存在的安全漏洞。
在这一过程中,可以使用OpenVAS等漏洞检测工具。
基于Windows2000的端口扫描系统设计和实现

C 3 15 / P 4 - 2 8 T
计 算机 工 程与科 学
C  ̄ 'E NG N E l OM L R E l E R NG & S I NC T CE E
20 0 2年第 2 4卷第 2期
V0 4. o 2 2 0 l2 N . .0 2
c ni sann ,U Ppr s n i ,s  ̄enBokat ka 3cp r gI a akt psi ytel a hs. g D tc nn o a g i e vr tc n a t i dt p ce as gb cl ot n a un P a s n h o 关键 词 :端 口扫描 ; 『 攻击 ;捕 获 【 玛络 P数据 包;原始套 接 卒
文献标识 码 :A
运行状 况 。国外在这 方 面的实 际产 品研 究 主要 集
1 引 言
漏洞 扫 描是 自动检 测远 端或 本地 主机 安垒 漏
中 在 N I公 司 ( e ok Asc t A Nt r soie w as
h10 |l 0 ,
Ic )和 IS公 司 (n rcScr yt 。下面 n. S It t eut Ssm) e i a y e 介绍 基于 Wi o 00操 作 系统 的端 口扫描 的设 n  ̄20 d 计和 实现 方法 。
洞的技术 ,其 中端 口扫描是 漏洞扫描 的基 础部 分 ,通 过 查 询 T PI C /P端 口,记 录 目标 的 响应 ,
探 测远 端或 本 地主机 服务 端 口的打 开状 态和所 提 供 的服务 ,收集 关 于某 些 特定 项 目的有 用信 息 。
2 端 口扫描的原理
端 口扫 描的方 法 分 为 被 动 扫描 和 主 动扫 描 。 被 动扫 描 的 方 法 主要 有 :T PeD ̄t)端 口扫 C o/e( l
分布式端口扫描检测系统的设计与实现

MP构建的分布式环境 I 包。 缺点是不能侦测分布式扫描、 慢速扫描. 不 息传 递建立一个实际的、 可移植的、 有效的和灵 3
能处理分片。
14 E e ad 。 m r l
活的标准。它的目标如下:
在L nx iu 环境下安装MP . I 首先解压源程
生成目录 /mpc 。 iu 环境下c— ih 在L nx h () 1设计一个应用编程接口( 不必为编译器或 序包 .
一
E e l系统使用异常检测技术. mrd a 使用行为
规则匹配和流量监控来发现扫描。 缺点是不能侦 测慢速扫描、分布式扫描和新的 地址。
个系统实现库) 。
p 设备被设为缺省 . 4 通常c— 设备在网 hp 4 络的
s r t l e h ) s 的使 ( 允许有效的 2 ) 通信: 避免存储器到存储器 启动进程是rh( moese1。但是 rh 而这种权限 的拷贝 而允许计算和通信的重叠 尽可能给通 用要求在相应的主机上设置权限.
( 接E应 7 l 设计成允许线程 一 ) 安全 (ra— ted h
aey。 向 超过 P 个端口进行T P C 连接尝试. 或者在时 消息传递接口的目的是为编写消息传递程序而开 sft)
间T( 之内向超过 P个端口发送 U P数据 发的广泛使用的 秒) D 标准。象这个接口 一样, 应为消
W o d a dD. le,ewoksc rt ntrPo . o , n Wob r t r ui mo i ,r c, n e y e
个较长的时间窗内.对发起连接的I 难以解决的问题 ( P 如分片扫描包检测)检测规 。
.
如发现其连接的风险端 口数目达到 则使用了基于时间窗, 口策略等方法较好地 端
实验五 端口扫描器实验报告(付代码)

实验5:端口扫描器的设计与实现姓名:学号:专业年级:(一)实验目的和内容:目的:加深对TCP的理解,学习端口扫描技术和原理,熟悉socket编程。
内容:实现一个扫描器,使用TCP connect进行端口扫描,并对扫描结果进行记录。
(二)课程设计要求:Windows或Linux环境下,程序在单机上运行;使用端口扫描器对一台主机进行扫描,并显示出结果;编程语言不限;提供友好的用户界面。
(三)端口扫描技术:“端口”是专门为计算机通信而设计的,它不是硬件,不同于计算机中的“插槽”,可以说是个“软插槽”。
“端口”是由计算机的通信协议TCP/IP协议定义的。
其中规定,用IP地址和端口作为套接字,它代表TCP连接的一个连接端,一般称为Socket。
具体来说,就是用[IP:端口]来定位一台主机中的进程。
计算机就像一座大楼,这个大楼有好多入口(端口),进到不同的入口中就可以找到不同的公司(进程)。
端口与进程是一一对应的,入侵者通过扫描端口,便可以判断出目标计算机有哪些通信进程正在等待连接。
(四)扫描端口的目的:端口扫描是入侵者搜集信息的几种常用手法之一,也正是这一过程最容易使入侵者暴露自己的身份和意图。
•判断目标主机上开放了哪些服务;•判断目标主机的操作系统。
如果入侵者掌握了目标主机开放了哪些服务,运行何种操作系统,他们就能够使用相应的手段实现入侵。
(五)端口的分类:端口是一个16 bit的地址,用端口号进行标识不同的作用。
端口一般分为两类。
•熟知端口号(公认端口号):由因特网指派名字和号码公司ICANN负责分配给一些常用的应用层程序固定使用的熟知端口,其数值一般为0~1023。
•一般端口号:用来随时分配给请求通信的客户进程。
(六)扫描原理的基础知识:TCP/IP模型四层结构TCP与UDP协议TCP报文结构TCP连接和释放过程(七)TCP/IP模型四层结构:(八)TCP与UDP协议:Internet的网络通信大多是建立在这两个协议之上的,各个主机遵循着TCP/IP协议封装数据包进行通信。
网络端口扫描实验报告

一、实验目的1. 理解网络端口扫描的基本原理和作用。
2. 掌握常用的网络端口扫描工具,如Xscan、Nmap和流光等。
3. 学习如何进行网络端口扫描,并对扫描结果进行分析。
4. 了解网络端口扫描在网络安全中的应用。
二、实验环境1. 操作系统:Windows 102. 网络端口扫描工具:Xscan、Nmap、流光3. 实验网络:实验室内部局域网三、实验步骤1. 安装网络端口扫描工具(1)下载并安装Xscan、Nmap和流光等网络端口扫描工具。
(2)确保实验网络连接正常,打开扫描工具。
2. 使用Xscan进行端口扫描(1)在Xscan中输入目标IP地址或域名。
(2)选择扫描方式,如全端口扫描、快速扫描等。
(3)点击“开始扫描”按钮,等待扫描完成。
(4)查看扫描结果,了解目标主机开放的端口和服务。
3. 使用Nmap进行端口扫描(1)在Nmap中输入目标IP地址或域名。
(2)选择扫描选项,如-sT(全端口扫描)、-sS(半开放扫描)等。
(3)运行命令:nmap -sT 目标IP地址或域名。
(4)查看扫描结果,了解目标主机开放的端口和服务。
4. 使用流光进行端口扫描(1)在流光中输入目标IP地址或域名。
(2)选择扫描模式,如快速扫描、全端口扫描等。
(3)点击“开始扫描”按钮,等待扫描完成。
(4)查看扫描结果,了解目标主机开放的端口和服务。
5. 分析扫描结果(1)对比三种扫描工具的扫描结果,了解不同扫描工具的特点。
(2)分析目标主机开放的端口和服务,了解其可能存在的安全风险。
四、实验结果与分析1. Xscan扫描结果通过Xscan扫描,发现目标主机开放了80(HTTP)、21(FTP)、22(SSH)等端口。
2. Nmap扫描结果通过Nmap扫描,发现目标主机开放了80(HTTP)、21(FTP)、22(SSH)等端口,并获取了更详细的信息,如操作系统类型、服务版本等。
3. 流光扫描结果通过流光扫描,发现目标主机开放了80(HTTP)、21(FTP)、22(SSH)等端口,并提供了端口对应的程序信息。
端口实验报告

一、实验目的1. 了解端口扫描的基本概念和原理。
2. 掌握常用端口扫描工具的使用方法。
3. 学会分析端口扫描结果,识别潜在的安全风险。
二、实验环境1. 实验主机:Windows 10操作系统2. 实验工具:Nmap、Xscan、Nessus等端口扫描工具3. 实验对象:互联网上的目标主机三、实验内容1. 端口扫描概述2. 使用Nmap进行端口扫描3. 使用Xscan进行端口扫描4. 使用Nessus进行端口扫描5. 分析端口扫描结果四、实验步骤1. 端口扫描概述端口扫描是指通过网络发送特定数据包,检测目标主机上开放的服务端口的过程。
通过端口扫描,我们可以了解目标主机上运行的服务,从而评估其安全风险。
2. 使用Nmap进行端口扫描(1)安装Nmap:从官方网站下载Nmap安装包,按照提示进行安装。
(2)运行Nmap:在命令行中输入“nmap 目标IP”进行扫描。
(3)查看扫描结果:Nmap会生成一个文本文件,其中包含了扫描结果。
3. 使用Xscan进行端口扫描(1)安装Xscan:从官方网站下载Xscan安装包,按照提示进行安装。
(2)运行Xscan:在Xscan界面输入目标IP,点击“开始扫描”按钮。
(3)查看扫描结果:Xscan会生成一个HTML文件,其中包含了扫描结果。
4. 使用Nessus进行端口扫描(1)安装Nessus:从Tenable官方网站下载Nessus安装包,按照提示进行安装。
(2)运行Nessus:在Nessus界面输入目标IP,选择扫描模板,点击“开始扫描”按钮。
(3)查看扫描结果:Nessus会生成一个报告,其中包含了扫描结果。
5. 分析端口扫描结果(1)识别开放端口:根据扫描结果,找出目标主机上开放的端口。
(2)分析服务类型:根据开放端口,确定目标主机上运行的服务类型。
(3)评估安全风险:根据服务类型,评估目标主机的安全风险。
五、实验结果与分析1. 使用Nmap扫描目标主机,发现其开放了80、443、22、21等端口。
C语言实现端口扫描

C语言实现端口扫描一、简介端口扫描是一种用于查找网络安全漏洞的技术,它能够检查服务器上打开的端口,并找出潜在的安全风险。
它可以帮助用户保护网络,防止黑客入侵和木马病毒的攻击。
本文将介绍如何使用C语言实现端口扫描。
二、实现端口扫描的原理实现端口扫描的原理是对目标主机进行TCP和UDP数据包扫描,通过观察目标主机响应来确定开放的端口。
当一个端口已经打开,对应的服务将回复一个带有TCP包头信息的数据包。
三、实现端口扫描的C语言代码下面是实现端口扫描的C语言代码:#include <stdio.h>#include <sys/socket.h>#include <arpa/inet.h>#include <unistd.h>#include <string.h>int main(int argc, char** argv)int sock = 0;struct sockaddr_in serv_addr;char* ip = argv[1];int start_port = atoi(argv[2]);int end_port = atoi(argv[3]);char buffer[1024] = {0};//循环扫描端口for(int port = start_port; port <= end_port; port++)// 创建Socketif ((sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)printf("Socket creation error \n");continue;}memset(&serv_addr, '0', sizeof(serv_addr));serv_addr.sin_family = AF_INET;serv_addr.sin_port = htons(port);// Convert IPv4 and IPv6 addresses from text to binary form if (inet_pton(AF_INET, ip, &serv_addr.sin_addr)<=0)printf("Invalid address/ Address not supported \n"); continue;}//连接到目标主机if (connect(sock, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0)//连接失败表示端口关闭printf("Port %d is closed \n", port);continue;}//连接成功表示端口开放printf("Port %d is open \n", port);close(sock);}return 0;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
河南理工大学计算机科学与技术学院课程设计报告2015— 2016学年第一学期课程名称网络与信息安全设计题目端口扫描器的设计与实现姓名范腾飞学号************专业班级网络1301指导教师叶青2016 年 1 月16 日目录一.课程设计的目的........................................................ 二.课程设计的要求........................................................ 三.端口扫描器相关知识.................................................3.1:端口的基本概念...............................................3.2:常见的端口介绍...............................................3.3:端口扫描器基本原理.......................................3.4:端口扫描常用技术........................................... 四.实验流程....................................................................4.1:基本步骤.............................................................4.2:主要函数...............................................................4.3流程图..................................................................... 五.实验结果..................................................................... 六.总结........................................................................一:课程设计的目的模拟常用的端口扫描软件原理,利用Socket实现基本的端口扫描功能。
扫描器是网络信息收集的一种方法,从功能上可分为漏洞扫描器和端口扫描器。
通过此次课程设计,能够掌握漏洞、端口的基础知识,掌握扫描器的基本原理并设计实现端口扫描和漏洞扫描程序。
二:课程设计要求本课程设计的目标是设计并实现一个网络扫描器,它通过与目标主机TCP/IP 端口建立连接并请求某些服务,记录目标主机的应答,分析目标主机相关信息,从而发现目标主机某些内在的安全弱点。
扫描器通常分两类:漏洞扫描器和端口扫描器。
端口扫描器用来扫描目标机开放的服务端口以及端口相关信息。
漏洞扫描器检查目标中可能包含的大量已知的漏洞,如果发现潜在的漏洞可能性,就报告给扫描者。
网络漏洞端口扫描器对目标系统进行检测时,首先探测目标系统的存活主机,对存活主机进行端口扫描,确定系统开放的端口,同时根据协议指纹技术识别出主机的操作系统类型。
然后扫描器对开放的端口进行网络服务类型的识别,确定其提供的网络服务。
漏洞扫描器根据目标系统的操作系统平台和提供的网络服务,调用漏洞资料库中已知的各种漏洞进行逐一检测,通过对探测响应数据包的分析判断是否存在漏洞。
在分析总结目前现有的扫描软件,在掌握扫描器的原理基础上,首先设计、实现一种端口扫描程序,存储扫描结果。
在此基础上,有余力的同学对已经开放的重要端口有具体漏洞分析检测。
程序具体要求实现以下任一程序:高效端口扫描器设计与实现:参照常见端口扫描器,在局域网内,能对所有计算机进行常用端口的高速扫描,给出扫描结果。
另外根据配置不同的网段,实现正对校园网络的基于网段的高速扫描。
高效的漏洞扫描器的设计与实现:设计网络漏洞扫描仪的结构,建立常见的漏洞库,并基于该漏洞库,实现高效的基于网段的漏洞扫描器。
主机脆弱性分析系统:将漏洞和端口扫描结合起来,实现针对主机的脆弱性分析系统。
三:相关知识1.端口的基本概念:我们这里所说的端口,不是计算机硬件的i/o端口,而是软件形式上的概念。
服务器可以向外提供多种服务,比如,一台服务器可以同时是web服务器,也可以是ftp服务器,同时,它也可以是邮件服务器。
为什么一台服务器可以同时提供那么多的服务呢?其中一个很主要的方面,就是各种服务采用不同的端口分别提供不同的服务。
根据提供服务类型的不同,端口分为两种,一种是tcp端口,一种是udp端口。
计算机之间相互通信的时候,分为两种方式:一种是发送信息以后,可以确认信息是否到达,也就是有应答的方式,这种方式大多采用tcp协议;一种是发送以后就不管了,不去确认信息是否到达,这种方式大多采用udp 协议。
对应这两种协议的服务提供的端口,也就分为tcp端口和udp端口。
那么,如果攻击者使用软件扫描目标计算机,得到目标计算机打开的端口,也就了解了目标计算机提供了那些服务。
2.常见端口介绍端口:21 服务:FTP说明:FTP服务器所开放的端口,用于上传、下载。
最常见的攻击者用于寻找打开anonymous的FTP服务器的方法。
这些服务器带有可读写的目录。
木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。
端口:23 服务:Telnet说明:远程登录,入侵者在搜索远程登录UNIX的服务。
大多数情况下扫描这一端口是为了找到机器运行的*作系统。
还有使用其他技术,入侵者也会找到密码。
木马Tiny Telnet Server就开放这个端口端口:25 服务:SMTP说明:SMTP服务器所开放的端口,用于发送邮件。
入侵者寻找SMTP服务器是为了传递他们的SPAM。
入侵者的帐户被关闭,他们需要连接到高带宽的E-MAIL 服务器上,将简单的信息传递到不同的地址。
木马Antigen、Email PasswordSender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口端口:80 服务:HTTP说明:用于网页浏览。
木马Executor开放此端口。
3.端口扫描器功能简介:服务器上所开放的端口就是潜在的通信通道,也就是一个入侵通道。
对目标计算机进行端口扫描,能得到许多有用的信息,进行端口扫描的方法很多,可以是手工进行扫描、也可以用端口扫描软件进行。
扫描器通过选用远程TCP/IP不同的端口的服务,并记录目标给予的回答,通过这种方法可以搜集到很多关于目标主机的各种有用的信息,例如远程系统是否支持匿名登陆、是否存在可写的FTP目录、是否开放TELNET服务和HTTPD服务等。
4.常用端口扫描技术:1、TCP connect()扫描:这是最基本的TCP扫描,操作系统提供的connect()系统调用可以用来与每一个感兴趣的目标计算机的端口进行连接。
如果端口处于侦听状态,那么connect()就能成功。
否则,这个端口是不能用的,即没有提供服务。
这个技术的一个最大的优点是,你不需要任何权限。
系统中的任何用户都有权利使用这个调用。
另一个好处就是速度,如果对每个目标端口以线性的方式,使用单独的connect()调用,那么将会花费相当长的时间,使用者可以通过同时打开多个套接字来加速扫描。
使用非阻塞I/O允许你设置一个低的时间用尽周期,同时观察多个套接字。
但这种方法的缺点是很容易被察觉,并且被防火墙将扫描信息包过滤掉。
目标计算机的logs文件会显示一连串的连接和连接出错消息,并且能很快使它关闭。
2、TCP SYN扫描:这种技术通常认为是“半开放”扫描,这是因为扫描程序不必要打开一个完全的TCP连接。
扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等待反应一样(参考TCP的三次握手建立一个TCP连接的过程)。
一个SYN|ACK 的返回信息表示端口处于侦听状态:返回RST表示端口没有处于侦听态。
如果收到一个SYN|ACK,则扫描程序必须再发送一个RST信号,来关闭这个连接过程。
这种扫描技术的优点在于一般不会在目标计算机上留下记录,但这种方法的缺点是必须要有root权限才能建立自己的SYN数据包。
3、TCP FIN 扫描:SYN扫描虽然是“半开放”方式扫描,但在某些时候也不能完全隐藏扫描者的动作,防火墙和包过滤器会对管理员指定的端口进行监视,有的程序能检测到这些扫描。
相反,FIN数据包在扫描过程中却不会遇到过多问题,这种扫描方法的思想是关闭的端口会用适当的RST来回复FIN数据包。
另一方面,打开的端口会忽略对FIN数据包的回复。
这种方法和系统的实现有一定的关系,有的系统不管端口是否打开都会回复RST,在这种情况下此种扫描就不适用了。
另外这种扫描方法可以非常容易的区分服务器是运行Unix系统还是NT系统。
4、IP段扫描:这种扫描方式并不是新技术,它并不是直接发送TCP探测数据包,而是将数据包分成两个较小的IP段。
这样就将一个TCP头分成好几个数据包,从而过滤器就很难探测到。
但必须小心:一些程序在处理这些小数据包时会有些麻烦。
5、TCP 反向 ident扫描:ident 协议允许(rfc1413)看到通过TCP连接的任何进程的拥有者的用户名,即使这个连接不是由这个进程开始的。
例如扫描者可以连接到http端口,然后用identd来发现服务器是否正在以root权限运行。
这种方法只能在和目标端口建立了一个完整的TCP连接后才能看到。
6、FTP 返回攻击:FTP协议的一个有趣的特点是它支持代理(proxy)FTP连接,即入侵者可以从自己的计算机和目标主机的FTP server-PI(协议解释器)连接,建立一个控制通信连接。
然后请求这个server-PI激活一个有效的server-DTP(数据传输进程)来给Internet上任何地方发送文件。
对于一个User-DTP,尽管RFC明确地定义请求一个服务器发送文件到另一个服务器是可以的,但现在这个方法并不是非常有效。
这个协议的缺点是“能用来发送不能跟踪的邮件和新闻,给许多服务器造成打击,用尽磁盘,企图越过防火墙”。
四:实验流程步骤:1.先输入想要扫描的网段;2.然后将输入的网段转化为可排序的ip数组3.建立多个线程,每个线程扫描一个ip。
每个线程内先建立数据流套接字,然后绑定ip端口进行扫描。
将扫描端口保存到g_map_ScanResult。
4.清理结束后进程,输出结果。