计算机网络系统端口扫描及危险端口关闭方法研究
扫描二维码
随时随地手机看文章
引言
随着全球信息化步伐的加快,网络规模的迅速扩张和计算机系统的日益复杂,新的系统漏洞层出不穷,网络安全形势日益严峻。目前对计算机网络系统的入侵主要是通过病毒和木马进行的,而病毒和木马的传播途径需要通过特定端口,所以关闭信息设备的特定端口能够有效减少病毒和木马的传播。现代电网运行高度依赖信息系统和电力监控系统,做好电力系统网络安全维护对于电网的安全稳定运行和电力可靠供应具有重大意义。根据南方电网公司《关于加强电力监控系统网络安全及病毒感染风险防控工作要求》以及《关于CiscosmartInstall远程命令执行漏洞的情况通报》,要求对电力系统PC平台的445、135、137、138、139、3389和CIsCo路由器4786等端口服务进行关闭。但这些网络端口关闭操作过程比较复杂,且维护人员多为非计算机专业人员,往往通过网络查询方式获取关闭方法,操作容易出现关闭失败或未完全关闭等问题。
本文针对计算机端口扫描技术的优缺点,采用多线程技术,结合TCP全连接扫描,实现了基于C语言编程的网络端口扫描和关闭程序,将端口关闭工作简单化、彻底化。
1端口扫描技术及多线程技术
1.1端口的概念
本文所提到的端口,是指网络连接中使用的逻辑端口,按端口号分布可以分为知名端口、动态端口或私有端口,例如21端口分配给FTP服务、25端口分配给sMTP(简单邮件传输协议)服务、80端口分配给HTTP服务,这些众所周知的端口即称为"知名端口":动态端口未特定分配给某个服务,只要运行的程序向系统提出访问网络的申请,那么系统就可以从动态端口范围内分配一个端口号供该程序使用。按协议类型可以划分为TCP、UDP、IP和ICMP(Internet控制消息协议)等端口,常见的TCP端口如FTP服务的21端口、Telnet服务的23端口、sMTP服务的25端口以及HTTP服务的80端口等等,常见的UDP端口如常DNs服务的53端口、sNMP(简单网络管理协议)服务的161端口、oo使用的8000和4000端口等等。
1.2端口扫描技术简介
所谓"端口扫描",即向目标主机发送探测数据包,并通过探测数据包反馈回来的数据判断其提供的计算机网络服务类型(这些网络服务均与端口号相关)。通过端口扫描可以帮助发现目标机的某些内在的弱点,帮助查找目标主机的漏洞。根据采用探测方法的不同,端口扫描技术分为开放扫描、半开放扫描、隐蔽扫描以及其他扫描等。
1.3多线程技术简介
一个进程是应用程序的一个执行实例,是由私有的虚拟地址空间、代码、数据和其他系统资源组成的。线程是比进程更小的单位,可以认为进程是由一个或多个线程组成的。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。多线程是多任务的一种特别的形式,但多线程使用了更小的资源开销,多线程能满足程序员编写高效率的程序来达到充分利用CPU的目的。
2多线程TCP全连接扫描的实现
本文采用多线程TCP全连接扫描技术实现端口扫描,通过调用windowssocket提供的connect()函数与每一个目标计算机端口进行连接,向目标主机的TCP/IP服务端口发送数据包,并记录目标主机的响应。通过分析响应来判断服务端口是打开还是关闭,从而得知端口提供的服务或信息。
利用此技术的有两个优点:(1)系统中的任何用户均可调用此函数:(2)响应速度快。
本文采用多线程技术进行编程,可同时打开多个socket,加快扫描速度,缩短端口扫描时间。
3计算机网络系统端口扫描及危险端口关闭软件设计及应用
本文利用TCP全连接扫描及多线程技术设计了一款具有网络系统端口扫描及危险端口关闭功能的软件系统。软件主要实现以下功能:(1)能够扫描和记录本地及网络设备终端上端口的开放和关闭情况:(2)对本地终端上扫描和记录的端口可以实现选择性关闭或开放:(3)软件可安装在不同的操作系统平台上使用,且不影响其功能发挥:(4)对扫描出未关闭的危险端口,不得自行完成关闭,需要人工对所需关闭的端口进行决策性选择:(5)除人工选择端口封闭操作以外,其他操作尽量简单,基本达到一键操作完成关闭工作的效果。工具各窗口界面采用按钮、文本框等常见操作方法,可以达到良好的人机交互效果。
3.1端口扫描
首先自动检索并显示本机IP地址,在端口范围栏输入需要扫描端口号,端口号输入方式可以以区间或者单个端口号的形式输入,例如"0-100"表示输入端口号为0~100之间所有端口号,若输入"135,137,138"则表示输入端口号为135、137、138,然后点击"开始扫描"即可,如图1所示。
3.2端口关闭
端口扫描后,可以查看全部端口状态,也可根据需要查看被禁用的端口或者开启的端口,在进行端口关闭时,选中开启的指定端口号,点击"禁用"按钮,即可实现端口一键关闭,如图2所示。
3.3端口启用
扫描出已禁用的端口号结果,选中指定要启用的端口号,点击"开启"按钮即可打开相应端口,如图3所示。
3.4辅助指令
在文本输入框中,输入想要查询的正确指令,点击"执行"按钮,将结果信息返回到输出框中进行信息显示,如图4所示。
4结语
目前,在运行的电力监控系统设备中,仍然存在较多高危端口开启的情况。
在未来的电力网络安全维护工作中,一定还会存在其他类型的木马和病毒利用其他类型的端口侵入电力监控网络系统影响电力系统设备正常运行。通过使用本端口管理平台软件对高危端口进行管理,可以有效提高电力系统网络安全维护人员工作效率和工作质量,将各种端口关闭工作简单化、彻底化,为电力系统安全运行提供有力保障。