端口扫描的漏洞检查研究与设计【字数:9824】
摘 要随着计算机网络的普及,以及人们对其理解的深入和依赖程度的增加,网络已经成为人们生活中不可或缺的部分了。人们常常使用网络来进行平时的社交、学习、工作、娱乐等活动。但是个人的信息会在网络和私人计算机上存留许多,别有用心的非法人员往往会通过漏洞对个人计算机攻击,来获取或者破坏个人信息。这让个人信息、网络安全变得十分危险。因此设计一种基于端口扫描的漏洞检查系统以保护用户安全具有非常重要的意义。本系统为检测网络安全中端口安全而进行设计的,用C#进行编写,包括端口扫描模块、注册登录模块、信息介绍界面、历史记录界面、用户反馈和管理者的管理信息等模块。用户下载软件后,无需登录即可进行端口扫描,同时用户也可以在简单的注册登录后,保存下载扫描记录,整体操作过程非常简单方便。
Key Words: C#; Multithreaded; Port scanning; Network security目 录
1. 引言 1
1.1 研究背景 1
1.2 研究目的和意义 1
2. 相关开发技术介绍 2
2.1 端口扫描技术 2
2.1.1 端口扫描简介 2
2.1.2 端口扫描技术 2
2.1.3 TCP connect()扫描 2
2.1.4 TCP SYN扫描 2
2.1.5 TCP FIN扫描 2
2.1.6 IP段扫描 3
2.1.7 DUMP扫描 3
2.2 数据库 3
2.2.1 XAMPP 3
2.2.2MySQL 3
2.3 C#以及软件介绍 3
2.4 多线程介绍 4
2.4.1 多线程 4
2.4.2 优点 4
2.5 Socket通信机制 4
3. 系统分析和需求 5
3.1 可行性分析 5
3.2 功能需求分析 5
4. 系统运行流程以及设计 6
4.1 系统总体设计 6
4.2 各个界面模块设计 6
4.2.1 首页界面和信息模块 6
4.2.2 注册登录模 *好棒文|www.hbsrm.com +Q: &351916072&
块 6
4.2.3 端口扫描模块 8
4.2.4 用户记录模块 9
4.2.5 管理模块 9
4.2.6 信息展示模块和数据库设计 10
5. 系统实现 12
5.1 实现 12
5.1.1 登录注册设计 12
5.1.2 信息展示 17
5.1.3 管理信息 17
5.1.4 数据库 18
5.2 测试与效果展示 19
5.2.1 登录注册模块 19
5.2.2 端口扫描模块 21
5.2.3 信息查看和历史记录模块 22
5.2.4 管理信息模块 23
6. 系统开发对社会的影响 24
结语 25
参考文献 26
致谢 27
引言
研究背景
当今,随着计算机的急速发展,计算机网络已经覆盖了我们的各行各业,许多软件、插件或网站鳞次栉比,令人目不暇接。而人们在选择自己想要的软件或文件时,都可以非常方便的从网上下载获取,甚至有多种选择方式。但是也是通过这一途径,许多非法人员会上传一些病毒软件,用户在不小心操作下,将病毒软件下载至电脑。它会占据计算机某些端口来入侵电脑获取私人信息,或者破坏个人电脑等。每个计算机都有相当数量的、固定端口进行重要的服务,因此要格外注意这些端口的安全状态。同时要观测好不常用端口异常的开闭状态[1]。
本课题是针对那些对端口漏洞方面不了解的人群,从端口漏洞方面进行的研究与设计。如此可以让他们对端口有些基本的了解,以及可以简单快捷的进行端口扫描,来查看端口的状态,同时可以对比软件内自带的信息,看看端口是否有隐患。这样,可以让用户在面对各种形形色色的入侵攻击,做一些基本的端口方面的防御措施[2]。
研究目的和意义
随着时代的发展,计算机网络已经非常普遍了。随着网络的发展,网络安全已经成为一个很大的问题,但是许多人不了解基础计算机安全知识。为此,本课题设计一个简便小巧的安全检查—端口扫描器。基于多线程的网络端口扫描器,其效率大大加快[3],更加人性化的设计也可以降低对技术知识的要求,并极大的降低扫描时间,从而高效的发现系统的端口安全漏洞,并及时进行补救。
本课题以C#语言为基础,利用Socket通信机制实现多线程网络端口扫描器,并将有关端口与服务或恶意程序的映射关系保存到MYSQL中,从而实现简便快捷的端口扫描[4]。目的是为了让用户快捷方便的查询自己电脑端口情况,随时都可以简单的检查和监督自己的电脑,让个人信息和电脑处于安全状态。
相关开发技术介绍
端口扫描技术
端口扫描简介
计算机每个端口都是一个进行互联交流的通道。它是信息交流服务通道,同时也是入侵的通道。扫描端口可以手动扫描,或者要哪个软件进行简单扫描。当然在进行手动扫描时,要知道各种指令,或者复杂的操作得知端口状态[5]。当用扫描器进行扫描时就简单方便多了。
端口扫描技术
端口扫描就是对计算机的端口段或者指定的某个端口进行扫描,可以得到许多个人电脑的信息以及知道端口涉及的服务(非法人员就会从这些服务的一直漏洞进行攻击)。它的简单的原理是在操作者向一个目的主机的端口建立连接时,如果主机有服务、端口开放就会进行相关应答[6]。但是如果主机没有这个服务,就是此端口上没有占用服务,那么主机就不会进行连接的应答。而对端口进行连接,通过返回的消息就可以知道目标主机的端口开放以及服务[7]。
TCP connect()扫描
TCP connect()扫描是通信编程中最简单的、初学者经常会学习的、基本的TCP扫描。经过扫描与每个TCP端口进行“握手”通信。如果成功连接,那就意味着端口开放。否则,这个端口是尚未启用的,也就是没有提供任何服务。此种方法准确度较高,实现简单,而且对操作者没有严格要求。但是容易被检测到,还会在连接的主机中记录许多的请求和信息[8]。
TCP SYN扫描
Key Words: C#; Multithreaded; Port scanning; Network security目 录
1. 引言 1
1.1 研究背景 1
1.2 研究目的和意义 1
2. 相关开发技术介绍 2
2.1 端口扫描技术 2
2.1.1 端口扫描简介 2
2.1.2 端口扫描技术 2
2.1.3 TCP connect()扫描 2
2.1.4 TCP SYN扫描 2
2.1.5 TCP FIN扫描 2
2.1.6 IP段扫描 3
2.1.7 DUMP扫描 3
2.2 数据库 3
2.2.1 XAMPP 3
2.2.2MySQL 3
2.3 C#以及软件介绍 3
2.4 多线程介绍 4
2.4.1 多线程 4
2.4.2 优点 4
2.5 Socket通信机制 4
3. 系统分析和需求 5
3.1 可行性分析 5
3.2 功能需求分析 5
4. 系统运行流程以及设计 6
4.1 系统总体设计 6
4.2 各个界面模块设计 6
4.2.1 首页界面和信息模块 6
4.2.2 注册登录模 *好棒文|www.hbsrm.com +Q: &351916072&
块 6
4.2.3 端口扫描模块 8
4.2.4 用户记录模块 9
4.2.5 管理模块 9
4.2.6 信息展示模块和数据库设计 10
5. 系统实现 12
5.1 实现 12
5.1.1 登录注册设计 12
5.1.2 信息展示 17
5.1.3 管理信息 17
5.1.4 数据库 18
5.2 测试与效果展示 19
5.2.1 登录注册模块 19
5.2.2 端口扫描模块 21
5.2.3 信息查看和历史记录模块 22
5.2.4 管理信息模块 23
6. 系统开发对社会的影响 24
结语 25
参考文献 26
致谢 27
引言
研究背景
当今,随着计算机的急速发展,计算机网络已经覆盖了我们的各行各业,许多软件、插件或网站鳞次栉比,令人目不暇接。而人们在选择自己想要的软件或文件时,都可以非常方便的从网上下载获取,甚至有多种选择方式。但是也是通过这一途径,许多非法人员会上传一些病毒软件,用户在不小心操作下,将病毒软件下载至电脑。它会占据计算机某些端口来入侵电脑获取私人信息,或者破坏个人电脑等。每个计算机都有相当数量的、固定端口进行重要的服务,因此要格外注意这些端口的安全状态。同时要观测好不常用端口异常的开闭状态[1]。
本课题是针对那些对端口漏洞方面不了解的人群,从端口漏洞方面进行的研究与设计。如此可以让他们对端口有些基本的了解,以及可以简单快捷的进行端口扫描,来查看端口的状态,同时可以对比软件内自带的信息,看看端口是否有隐患。这样,可以让用户在面对各种形形色色的入侵攻击,做一些基本的端口方面的防御措施[2]。
研究目的和意义
随着时代的发展,计算机网络已经非常普遍了。随着网络的发展,网络安全已经成为一个很大的问题,但是许多人不了解基础计算机安全知识。为此,本课题设计一个简便小巧的安全检查—端口扫描器。基于多线程的网络端口扫描器,其效率大大加快[3],更加人性化的设计也可以降低对技术知识的要求,并极大的降低扫描时间,从而高效的发现系统的端口安全漏洞,并及时进行补救。
本课题以C#语言为基础,利用Socket通信机制实现多线程网络端口扫描器,并将有关端口与服务或恶意程序的映射关系保存到MYSQL中,从而实现简便快捷的端口扫描[4]。目的是为了让用户快捷方便的查询自己电脑端口情况,随时都可以简单的检查和监督自己的电脑,让个人信息和电脑处于安全状态。
相关开发技术介绍
端口扫描技术
端口扫描简介
计算机每个端口都是一个进行互联交流的通道。它是信息交流服务通道,同时也是入侵的通道。扫描端口可以手动扫描,或者要哪个软件进行简单扫描。当然在进行手动扫描时,要知道各种指令,或者复杂的操作得知端口状态[5]。当用扫描器进行扫描时就简单方便多了。
端口扫描技术
端口扫描就是对计算机的端口段或者指定的某个端口进行扫描,可以得到许多个人电脑的信息以及知道端口涉及的服务(非法人员就会从这些服务的一直漏洞进行攻击)。它的简单的原理是在操作者向一个目的主机的端口建立连接时,如果主机有服务、端口开放就会进行相关应答[6]。但是如果主机没有这个服务,就是此端口上没有占用服务,那么主机就不会进行连接的应答。而对端口进行连接,通过返回的消息就可以知道目标主机的端口开放以及服务[7]。
TCP connect()扫描
TCP connect()扫描是通信编程中最简单的、初学者经常会学习的、基本的TCP扫描。经过扫描与每个TCP端口进行“握手”通信。如果成功连接,那就意味着端口开放。否则,这个端口是尚未启用的,也就是没有提供任何服务。此种方法准确度较高,实现简单,而且对操作者没有严格要求。但是容易被检测到,还会在连接的主机中记录许多的请求和信息[8]。
TCP SYN扫描
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/wljs/230.html