收藏 分享(赏)

本科毕业设计(论文):在线安全检测系统设计1.doc

上传人:文档投稿赚钱 文档编号:1463615 上传时间:2018-07-20 格式:DOC 页数:17 大小:219KB
下载 相关 举报
本科毕业设计(论文):在线安全检测系统设计1.doc_第1页
第1页 / 共17页
本科毕业设计(论文):在线安全检测系统设计1.doc_第2页
第2页 / 共17页
本科毕业设计(论文):在线安全检测系统设计1.doc_第3页
第3页 / 共17页
本科毕业设计(论文):在线安全检测系统设计1.doc_第4页
第4页 / 共17页
本科毕业设计(论文):在线安全检测系统设计1.doc_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、中央广播电视大学人才培养模式改革和开放教育计算机科学与技术专业毕业论文在线安全检测系统设计姓名:何可畏学号:1041001266438学校:工商电大指导老师:郭岚峰- 2 -目 录摘要 3关键词3一、 在线安全研究的目的和现状3(一) 研究目的3(二) 研究内容概述4(三) 系统需求分析4二、 漏洞扫描技术概述5(一) 什么是漏洞扫描5(二)漏洞扫描器的分类5(三)漏洞扫描气的工作原理6(四)漏洞扫描的整体结构7( 五)CGI 的应用8三、 详细设计9(一)在线升级工作原理9(二)多线程原理及实现10(三) MFC 部分类的使用11四、 关键技术实现13(一)在线升级系统的实现13(二)多线程

2、实现的方法15五、 系统调试16参考文献 17- 3 -在线安全检测系统设计摘 要:21 世纪是信息时代,信息已成为社会发展的重要战略资源,社会的信息化已成为当今世界发展的潮流和核心,而信息安全在信息社会中将扮演极为重要的角色。随着计算机网络的不断发展,全球信息化已成为人类发展的大趋势。但由于计算机网络具有联结形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,致使网络容易受到黑客、恶意软件和其他不轨的攻击,前者会对用户造成不可预料的影响,而后者往往使系统崩溃。无论是在局域网还是在广域网中,都存在着自然和人为等诸多因素的脆弱性和潜在威胁。故此,网络的安全措施应是能全方位地针对各种不同的威

3、胁和脆弱性,这样才能确保网络信息的保密性、完整性和可用性.。本文开始的部分本文的开始部分,通过对黑客行为和典型攻击的分析,总结了网络安全漏洞存在必然原因,并综述了计算机网络安全的现状,以及漏洞扫描技术的具体概念,分类和局限性。本文的重点在于改进原有系统的主题模块,并对原有系统增加了一些功能,使之功能更加完善。最后提出了该系统还存在的不足以及一些进一步完善和扩展的建议。关 键 词 : 网 络 安 全 扫 描 漏 洞一、在线安全研究的目的和现状(一) 研究目的现代计算机系统功能日渐复杂,网络体系日渐强大,正在对社会产生巨大深远的影响,但同时由于计算机网络具有联结形式多样性、终端分布不均匀性和网络的

4、开放性、互连性等特征,致使网络易受黑客、恶意软件和其他不轨的攻击,所以使得安全问题越来越突出。- 4 -(二)研究内容概述本课题的研究内容包括:分析黑客的攻击行为、收集整理网络安全漏洞、漏洞扫描系统的设计并实现,漏洞扫描系统的测试与改进。笔者着重参与了漏洞扫描系统的设计并实现、漏洞扫描系统的测试与改进。在系统结构方面我们拟采用两种方案,实现两种结构:一种是基于主机的网络安全评估系统,一种是基于网络的安全评估系统。基于主机的,是用户控制界面和扫描引擎都在一个应用程序中,安装灵活,但不便于移植,且受到系统本身所在应用平台的限制。另一种是基于网络的是 Browser/Server 模式,扫描引擎等主

5、要部分都放在安全的扫描服务器上。管理者在独立的其它工作站上进行监控,通过浏览器进行扫描控制和查看结果。在访问工作站和扫描引擎之间的数据通讯采用加密通道方式。(三)系统需求分析1、系统功能的要求(1)系统首先应该可以对相应 IP 进行扫描,并给出相应的报告(2)能够实现对已加漏洞的扫描,并给出一份简略的报告和一份详尽的报告(3)系统在扫描和更新的时候应该有明显的标识2 、系统性能要求(1)系统应该在扫描过程中使用多线程扫描,以节省使用时间(2)系统应该考虑到用户在适用本程序时,要不断的更新漏洞库,因此,系统需要有在线升级的功能。3、用户界面要求(1)用户界面应该简洁,通俗易懂,(2)用户界面应该

6、能够准确的显示出程序的进程(3)用户界面应该给出帮助文件,是用户能够独立使用该程序。4、系统的可扩展性(1)应该留出足够的空间,以方便以后添加控键。- 5 -(2)将来系统成熟时,应该可以基于任何操作平台进行扫描5、采用方法关于在线安全评估系统的扫描过程大致可以分为两类:一类是基于主机的;一类是基于网络的。在此次研究中,我们拟同时采用两种方法6、系统设计工具的选择Microsoft 公司开发的 VisualC+一直是一种具有高度综合性的软件开发工具,用它开发的程序有着运行速度快,可移植性强等优点。因此,我们采用VC+来完成我们系统的设计任务二、漏洞扫描技术概述(一) 什么是漏洞扫描漏洞扫描器是

7、一种自动检测远程或本地主机安全性弱点的程序。通过使用漏洞扫描器,系统管理员能够发现所维护的 Web 服务器的各种 TCP 端口的分配、提供的服务、Web 服务软件版本和这些服务及软件呈现在 Internet 上的安全漏洞。从而在计算机网络系统安全保卫战中做到“有的放矢” ,及时修补漏洞,构筑坚固的安全长城。(二) 漏洞扫描器的分类按常规标准,可以将漏洞扫描器分为三类:1、 主机漏洞扫描器(Host Scanner)在系统本地运行检测系统漏洞的程序。如著名的 COPS、tripewire 、tiger 等自由软件。2、 网络漏洞扫描器(Network Scanner)基于 Internet,远程

8、检测目标网络和主机系统漏洞的程序。如 Satan、ISS 软件。3、入侵扫描器(Intrusion Scanners )是能够远程实时检测目标主机漏洞,在某些情况下可允许实时尝试和探测这- 6 -些漏洞的程序(三)漏洞扫描气的工作原理网络漏洞扫描器通过远程检测目标主机 TCP/IP 不同端口的服务,记录目标给予的回答。通过这种方法,可以搜集到很多目标主机的各种信息(例如:是否能用匿名登陆,是否有可写的 FTP 目录,是否能用 Telnet,httpd 是否是用root 在运行) 。在获得目标主机 TCP/IP 端口和其对应的网络访问服务的相关信息后,与网络漏洞扫描系统提供的漏洞库进行匹配,如果

9、满足匹配条件,则视为漏洞存在。此外,通过模拟黑客的进攻手法,对目标主机系统进行攻击性的安全漏洞扫描,如测试弱势口令等,也是扫描模块的实现方法之一。如果模拟攻击成功,则视为漏洞存在。在匹配原理上,该网络漏洞扫描器采用的是基于规则的匹配技术,即根据安全专家对网络系统安全漏洞、黑客攻击案例的分析和系统管理员关于网络系统安全配置的实际经验,形成一套标准的系统漏洞库,然后再在此基础之上构成相应的匹配规则,由程序自动进行系统漏洞扫描的分析工作。所谓基于规则是基于一套由专家经验事先定义的规则的匹配系统。例如,在对 TCP 80 端口的扫描中,如果发现/cgi-bin/phf 或/cgi-bin/Count.

10、cgi,根据专家经验以及 CGI 程序的共享性和标准化,可以推知该 WWW 服务存在两个CGI 漏洞。同时应当说明的是,基于规则的匹配系统也有其局限性,因为作为这类系统的基础的推理规则一般都是根据已知的安全漏洞进行安排和策划的,而对网络系统的很多危险的威胁是来自未知的安全漏洞,这一点和 PC 杀毒很相似。实现一个基于规则的匹配系统本质上是一个知识工程问题,而且其功能应当能够随着经验的积累而利用,其自学习能力能够进行规则的扩充和修正,即是系统漏洞库的扩充和修正。当然这样的能力目前还需要在专家的指导和参与下才能实现。但是,也应该看到,受漏洞库覆盖范围的限制,部分系统漏洞也可能不会触发任何一个规则,

11、从而不被检测到。整个网络扫描器的工作原理是:当用户通过控制平台发出了扫描命令之后,控制平台即向扫描模块发出相应的扫描请求,扫描模块在接到请求之后立即启- 7 -动相应的子功能模块,对被扫描主机进行扫描。通过对从被扫描主机返回的信息进行分析判断,扫描模块将扫描结果返回给控制平台,再由控制平台最终呈现给用户。(四) 漏洞扫描的整体结构外部扫描模块直接从安装了外部扫描模块的运行平台(简称扫描主机)上以其他机器为对象(简称被扫描主机)进行扫描;内部扫描模块则以被扫描主机作为运行平台,由另一台机器从远程进行控制;而控制平台则提供一个人机交互的界面。- 8 -内 部 扫 描 模 块 外 部 扫 描 模 块

12、 被 扫 描 主 机 扫 描 主 机 外 部扫 描请 求 各 种 网 络 服 务 请 求 内 部 扫 描 请 求 内 部 扫 描 结 果 外 部 扫 描 返 回 信 息 用 户 控 制 台 图 2扫扫扫扫扫扫扫扫扫扫扫 内部扫描原理:当用户通过控制平台发出了内部扫描的命令之后,控制平台即向内部扫描模块发出相应的内部部扫描请求,由于内部扫描模块就装在被扫描主机上,所以内部扫描模块接到请求后启动各子功能模块对本机进行相应的内部扫描,并将结果实时的返回给控制平台,再由控制平台将扫描结果最终呈现给用户。(五) CGI 的应用整个漏洞扫描系统利用了浏览器/服务器(B/S)架构,目的是为了消除由于操作系统

13、平台的不同而给程序的运行带来的差异,还为了能利用 HTML 提供的一系列功能,如超文本功能、灵活的版面编辑功能来构建一个美观灵活的人机接口。在该网络漏洞扫描器的实现中,我们通过 CGI 技术来连接前台的浏览器和后台的扫描程序。CGI 是通用网关接口,作为一种规范,它允许 Web 服务器执行其他程序并将它们的输出以相应的方式储存在发给浏览器的文本、图形和音频中。CGI 程序能够提供从简单的表单处理到复杂的数据库查询等各种功能,这大大增强了- 9 -Web 的动态处理能力和交互能力。服务器和 CGI 程序相结合能够扩充和自定义World Wide Web 的能力。CGI 过程的主要步骤如下:1 浏

14、览器将 URL 的第一部分解码并联系服务器; 2 浏览器将 URL 的其余部分提供给服务器; 3 服务器将 URL 转换成路径和文件名; 4 服务器意识到 URL 指向一个程序,而非一个静态的文件; 5 服务器准备环境变量,执行 CGI 程序; 6 程序执行,读取环境变量和 STDIN; 7 程序为将来的内容向 STDOUT 发送正确的 MIME 头信息; 8 程序向 STDOUT 发送其输出的其余部分,然后终止; 9 服务器发现程序终止,关闭与浏览器的连接; 10 浏览器从程序中显示输出。三、 详细设计(一)在线升级工作原理一个 Internet 客户端程序的目的是通过 Internet 协

15、议如:HTTP、FTP 等来存取网络数据源(服务器)的信息。客户端程序可以访问服务器获得象天气预报,股票价格、重要新闻数据,甚至是与服务器交换信息。Internet 客户端程序可以通过外部网络(Internet)或内部网络(一般为 Intranet)访问服务器。为了开发 Internet 客户端程序。MFC 类库提供了专门的 Win32 Internet 扩展接口,也就是 WinInet。MFC 将 WinInet 封装在一个标准的、易于使用的类- 10 -集合中。在编写 WinInet 客户端程序时,你既可以直接调用 Win32 函数,也可以使用 WinInet 类库。Win32 Inter

16、net 扩展提供了对普通 Internet 协议的访问,这些协议包括:HTTP、FTP 和 Gopher。Gopher 已经渐渐淡出。借助于 WinInet 编程接口,开发人员不必去了解 Winsock、TCP/IP 和特定 Internet 协议的细节就可以编写出高水平的 Internet 客户端程序。WinInet 为所有几种协议(HTTP、FTP 和Gopher)提供了统一的函数集,也就是 Win32 API 接口。利用这些统一的函数集,大大简化了针对 HTTP、FTP 等协议的编程,从而轻松地将 Internet 集成到自己的应用程序中。底层协议的转换(如从 FTP 到 HTTP)只要

17、对源代码稍作修改就可以完成。在 Visual C+工程中提供有两种方式来使用 WinInet。一种是直接调用Win32 Internet 函数,另一种是使用 WinInet 类库。MFC 对 WinInet 的封装是通过提供三个由 CStdioFile 派生类实现的。这三个派生类是:CInternetFile、 CHttpFile 和 CGopherFile。由于 Gopher 协议已经很少使用,所以本文将不再对 CGopherFile 进行讨论。对开发人员来说,不管你以前是否用过 CStdioFile,WinInet 都是很好理解并且易于使用的。它使得存取 Internet 数据易如反掌,使得 Internet 数据和本地数据的处理一致透明,数据的存储位置已经不再重要。MFC WinInet 类有如下优点: 缓冲器输入输出 数据的类型安全处理 许多函数的参数都是缺省值 对普通的 Internet 错误进行异常处理 自动清除打开的句柄和连接 使用 WinInet 提供的 API 函数,你可以: 通过 HTTP 协议下载 HTML 页,HTTP 协议是专门用于在服务器和客户浏览器之间传输 HTML 页。 发送 FTP 请求上传或下载文件以及获取服务器的目录信息。通过匿名登陆下载文件便是 FTP 的典型应用。 其它基于 HTTP、FTP 协议的应用。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报