基于模糊测试的漏洞发现——跨站脚本模糊测试毕业设计论文(编辑修改稿)内容摘要:
全性测试的特点以及自动化的模糊测试的特点,会看到自动化的模糊测试技术在发掘 Web 应用程序上的方便性和有效性。 事实证明自动化的模糊测试技术能够发掘 Web 应用程序中隐藏的用其他方法难以发掘的漏洞。 研究现状 、存在问题 及应用 领域 研究现状 : 到目前为止, Web 应用程序的模糊测试技术取得了一定的进展,但是这项技术仍然在初级阶段,大部分工具仍然是相对较小的项目,由几个人组成的小组甚至一名程序员来维护,未来的模糊测试将会有许多革新和发展,模糊测试还会发展到新的阶段。 这些年,模糊测试已经开始从学术研究 向商业应用方向发展,有越来越多的开发人员开始接受模糊测试技术。 使用模糊测试技术,研究人员已经开发了不少的应用于 Web 应用程序漏洞的挖掘的模糊器,例如有 SPIKE 代理,WebScarab, SPI 模糊器, Codenomicon HTTP 测试工具, beSTORMOLU 等等,这李宗辉:基于模糊测试的漏洞发现 4 些都是优秀的基于模糊测试技术的具有发掘 Web 应用程序和服务器漏洞功能的模糊器。 存在的问题 : 但是这些工具大多是商业应用的测试工具,而本课文题在研究使用模糊测试技术发掘 Web 应用程序和服务器漏洞时,所涉及的模糊器 WebFuzz 是一款免费开源的专 门针对 Web 应用程序和服务器漏洞挖掘的工具。 这款工具具有良好的可扩展性,它提供了一个可以而且应当被进一步创建的架构。 其相关资料和源代码可以在网站 中获得。 应用领域 : Web 应用程序和服务器的模糊测试器 WebFuzz 可应用于网站开发的安全测试和 Web 应用程序和服务器开发的安全测试。 它用于发掘 Web 应用程序和服务器中的目录遍历漏洞,缓冲区溢出漏洞, SQL 注入漏洞, XSS 脚本漏洞等。 研究任务 本文的研究任务主要包括: Web 应用程序 跨站脚本 分析、 Web 应用程序漏洞挖掘模糊测试技 术研究、 跨站脚本 重现研究、 跨站脚本 探索挖掘研究四个部分。 研究任务表如下 表 11 所示: 表 11 研究任务表 脚本漏洞分析 WebFuzz 技术研究 脚本漏洞重现 脚本漏洞探索 脚本漏洞介绍 WebFuzz 介绍 熟悉 WebFuzz 探索未知漏洞 脚本漏洞触发原理 WebFuzz 原理 重现漏洞 对比不同的技术 研究的技术路线如下 图 12: 图 1 2 拟采用的研究技术路线 中原工学院计算机学院毕业(设计)论文 5 跨站脚本 分析 : 首先学习跨站脚本定义,明确跨站脚本分类,分析跨站脚本触发原理。 进而研究 跨站脚本 攻击向量的 构造方法,以及变换形式。 并在此基础上进一步理解和总结跨站脚本 成因。 Web 模糊测试技术分析 : 首先学习模糊测试技术的基本原理知识,在此基础上研究本文提出的 Web 应用程序模糊器 —— WebFuzzer。 分析本模糊器的工作原理,掌握本模糊器的使用方法。 跨站脚本 重现研究 : 不断总结发掘跨站脚本 的方法,更深理解其触发原理。 不断掌握模糊器 WebFuzzer 的使用,构建发掘 Web 应用程序 跨站脚本 的发掘环境,并会利用 WebFuzzer 重现已知的漏洞。 跨站脚本 探索研究 : 不断总结 Web 应用程序跨站脚本 的形成原 理,掌握 Web应用程序模糊器 WebFuzzer 发掘跨站脚 洞的工作原理,总结和其他发掘工具相比时的优势。 利用 WebFuzzer 探索发掘未知的跨站脚本。 总结探索发现跨站脚本的过程,用合理的方法收集已发现的跨站脚本。 论文结构 本次论文的文章架构如下:第 1 章,前言部分,总体上介绍研究 任务,说明项目 内容 ,介绍相关背景等;第 2 章 ,跨站脚本分析部分,本章深入分析 跨站脚本 成因及其他与跨站脚本 有关的知识;第 3 章 , Web 模糊测试技术,本章 深入探讨 Web模糊测试技术的原理,提出功能需求分析、和框架设计,深入分析模糊器设 计的核心函数算法 ;第 4 章,利用学到的知识对跨站脚本挖掘,这里用了源代码分析的方法和模糊测试的方法;第 5 章对全文进行总结。 李宗辉:基于模糊测试的漏洞发现 6 第 2 章 跨站脚本 分析 来自 OWASP 的 2020 年 Web 应用程序面临的十大安全风险 报告显示:跨站脚排名第二。 而在以往的报告中,跨站脚本则一直稳居第一。 由此可见跨站脚本 在Web 应用程序中是很常见而且是危害很大的一类漏洞,本章 重点介绍这一类 Web 应用程序漏洞。 从跨站脚本概述到成因,全面介绍跨站脚本。 跨站脚本 概述 XSS 的全称是 Cross Site Scripting,意思是 跨站脚本 .这第一个单词是 Cross, 但因为 CSS 是层叠样式表的缩写( Cascading Style Sheets)的缩写,同时 Cross 发音和X 相似, 所以 为了避免混淆用 X 来代替缩写成 XSS。 跨站点脚本( XSS)是一个典型的 Web 应用程序计算机安全漏洞。 允许攻击者绕过客户端的安全机制,可以使恶意攻击者将客户端脚本注入到其他用户浏览的网页里。 截止到 2020 年,赛门铁克公司所记录的安全记录中有 80%为 跨站脚本 ,它的影响范围可以从一个小小的滋扰到一个重大的安全风险。 OWASP 公布的 2020 年和 2020 年十大网络安 全漏洞中,跨站脚本 都高居首位,最新公布的 2020 年十大安全风险也为第二位 ,跨站脚本一直以来都是最常见的 安全漏洞。 跨站脚本 成因 超文本标记语言 a.超文本标记语言概述 要 了解 XSS 的触发 原理 就先得从 HTML(超文本标记语言)开始。 HTML(超文本标记语言) 是 描述网页的一种语言。 不是一种编程语言,而是一种标记语言,是由一套标记标签组成的, HTML使用标记标签来描述网页。 HTML文档包含 HTML标签和纯文本,是网页的文字形式。 HTML 文档 由 HTML 元素定义, HTML 元素是指从开始标签到结束 标签的所有代码。 HTML 元素以开始标签开始以结束标签终止,元素内容是开始标签和结束标签之间的内容。 b.超文本标记语言标签 HTML 标签标记 HTML 文档和 HTML 元素,浏览器通过这些标签来识别文档和元素的显示格式。 由开始标签和结束标签组成,开始标签是被尖括号包围的元素名,结束标签是被尖括号包围的斜杠和元素名。 某 写 HTML 元素没有结束标签。 下中原工学院计算机学院毕业(设计)论文 7 面简单介绍一下常用的 HTML 标签。 HTML 文档标签 : HTML 文档是从 html标签开始的,结束标签为 /html。 html 与 /html 之间的文本描述网 页。 HTML 文档头标签 : HTML 文档头标签 head用于定义文档的头部。 文档的头部描述了文档的各种属性和信息,包括文档的标题、在 Web 中的位置以及和其他文档的关系等。 绝大多数文档头部包含的数据都不会真正作为内容显示给读者。 HTML 标题标签 : HTML 标题标签 title 元素可定义文档的标题。 浏览器会以特殊的方式来使用标题,并且通常把它放置在浏览器窗口的标题栏或状态栏上。 同样,当把文档加入用户的链接列表或者收藏夹或书签列表时,标题将成为该文档链接的默认名称。 HTML 的主体标签 : HTML 文档的主体 是由 body标签进行定义的,和结束标签分别为 body/body。 body 与 /body 之间的文本是可见的页面内容。 网页中文章标题标签 : 网页中文章的标题是用标签 h1 h6定义的。 h1 定义最大的标题。 h6 定义最小的标题。 c.超文本标记语言属性 同时, HTML 标签可以拥有属性。 属性提供了有关 HTML 元素的更多的信息。 属性总是以名称 /值对的形式出现。 比如 name=value属性总是在 HTML 元素的开始标签中定义。 下面三个是标签属性举例。 链接标签的属性 href 指定链接地址 : a href= is a link/a 标题标签中的属性 align 指定标题的对齐方式。 主体标签中的属性 bgcolor 指定文档的背景颜色。 定义属性时要注意:始终为属性值加引号 , 属性值应该始终被包括在引号内。 双引号是最常用的,不过使用单引号也没有问题。 在某些 个别的情况下,比如属性值本身就含有双引号,那么您必须使用单引号。 d.超文本标记语言事件 HTML 事件 可以 触发浏览器中的行为,比方说当用户点击某个 HTML 元素时启动一段 JavaScript。 在现代浏览器中都内置有大量的事件处理器。 这些处理器会监视特定的条件或用户行为,例如鼠标单击或浏览器窗口中完成加载某个图像。 通过使用客户端的 JavaScript,可以将某些特定的事件处理器作为属性添加给特定的标签,并可以在事件发生时执行一个或多个 JavaScript 命令或函数。 事件处理器的值是一个或一系列以分号隔开的 Javascript 表达式、方法和函数调用,并用引号引李宗辉:基于模糊测试的漏洞发现 8 起来。 当事件发生时,浏览器会执行这些代码。 例如,当您把鼠标移动到一个超链接时,会启动一个 JavaScript 函数。 支持 JavaScript 的浏览器支持 a 标签中的一个特殊的 mouse over事件处理器 被称为 onmouseover 来完成这项工作: a href=/ onmouseover=alert(39。 Wele39。 )。 return false/a。 JavaScript a. JavaScript 概述 JavaScript 是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。 同时也是一种广泛用于客户端 Web 开发的脚本语言 ,常用来给 HTML 网页添加动态功能,比如响应用户的各种操作。 JavaScript 由数行可执行计算机代码组成。 JavaScript 通常被直接嵌入 HTML 页面。 JavaScript 是一种解释性语言 ,这 就是说,代码执行不进行预编译。 b. JavaScript 功能 JavaScript 为 HTML 设计师提供了一种编程工 具。 JavaScript 是一种只拥有极其简单的语法的脚本语言 ,可以 将短小的代码片断放入 HTML 页面当中。 JavaScript 可以将动态的文本放入 HTML 页面 , 可以将 JavaScript 设置为当某事件发生时才会被执行,例如页面载入完成或者当用户点击某个 HTML 元素时。 JavaScript 可以读写 HTML 元素。 JavaScript 可以读取及改变 HTML 元素的内容。 JavaScript 可被用来验证数据 , 在数据被提交到服务器之前, JavaScript 可被用来验证这些数据。 JavaScript 可被用来检测访问者的浏览器 , JavaScript 可被用来检测访问者的浏览器,并根据所检测到的浏览器,为这个浏览器载入相应的页面。 JavaScript 可被用来创建 cookies, JavaScript 可被用来存储和取回位于访问者的计算机中的信息。 c. JavaScript 标签 HTML 的 script标签用于把 Javascript 插入到 HTML 页面当中。 如果需要把一段 JavaScript 插入 HTML 页面,需要使用 script 标签(同时使用 type 属性来定义脚本语言)。 这样, 就可以告诉浏览器 JavaScript 从何处开始,到何处结束。 d. JavaScript 放置 位置 JavaScript 放置 的位置。 你可以在文档中放置任何数量的脚本,因此你既可以把脚本放置到 body,又可以放置到 head 部分。 当页面载入时, 会执行位于 body 部分的 JavaScript; 当被调用时,位于 head 部分的 JavaScript 才会被执行 , 也就是将脚本内容或者成为函数写到 head 部分,在载入页面的时候会先将脚本内容载入,然后中原工学院计算机学院毕业(设计)论文 9 再在后面的执行过程中调用脚本内容 , Body 部分的脚本内容会在载入页面的时候就执行 ; 还有一种是访问外部脚本 , 可以把 .js 文件放到网站目录中通常存放脚本的子目录中,这 样更容易管理和维护。 e. JavaScript 语句 JavaScript 语句。 JavaScript 语句是发给浏览器的命令。 这些命令的作用是告诉浏览器要做的事情。 下面主要列举几种常用语句: 声明(创建) JavaScript 变量 : 在 JavaScript 中创建变量经常被称为“声明”变量。 可以通过 var 语句来声明 JavaScript 变量。 JavaScript 消息框 : 可以在 JavaScript 中创建三种消息框:警告框、确认框、提示框。 警告框:警告框经常用于确保用户可以得到某些信息。 当警告框出现 后,用户需要点击确定按钮才能继续进行操作。 语法格式为: alert(文本 )。 确认框:确认框用于使用户可以验证或者接受某些信息。 当确认框出现后,用户需要点击确定或者取消按钮才能继续进行操作。 如果用户点击确认,那么返回值为 true。 如果用。基于模糊测试的漏洞发现——跨站脚本模糊测试毕业设计论文(编辑修改稿)
相关推荐
镜遮掩,主要用来测试当前光照和表情变化时,识别算法的性能。 图 Yale 人脸库中的光照变化 图 给出了 Yale 人脸库最大的特点,光照变化的示例,这是 Yale 人脸数据库中一位志愿者的部分人脸图像,这三张图像分别是在正面光照、左侧光照和右侧光照三种约束条件下拍摄的,代表了数据库中人脸图像的光照变化情况。 ORL 人脸库 ORL 人脸库又被称为 ATamp。 T 人脸库
局部避障,全局避障根据己知地理数据进行避障;局部避障是部分未知或整体未知环境数据,利用传感器对环境进行实时检测,得知障碍物位置、大小和形状等数据再进行避障。 全局避障方法 自由空间法:采用预先定义的基本形状,如广义锥形、凸多边形等来构造自由空间,再将其表示成连通图,再经过搜索连通图进行路径规划 [13]。 这种方法比较灵活,算法根据障碍物的增多而增多,成正比关系
C 的输入 /输出点数,选择合适的点数。 由于本设计中只涉及到开关量,因此在选择 PLC 型号时,只需考虑 I/O 点数,并有一定的余量( 10%~15%)选择小型 PLC。 ( 4)控制系统的硬件设计 ① 主电路的设计; ② 确定出输入、输出信号 ,画出 PLC 的 I/O 接线图; ( 5)控制系统的软件设计 ① 首先分别设计出 一个站点 的控制软件梯形图; ② 整体控制软件梯形图设计; (
水处理控制系统对我国经济的发展具有重大的现实意义。 本 论文的主要工作 本课题应用先进的工业控制计算机、可编程控制器、工业自动化组态技术、电力电子控制技术以及网络通信技术等,结合污水处理厂的特点,设计出运行状态和参数能够自动检测和自动控制、具有自动故障应急处理能力并且具有网络通信能力的高性能、高可靠性的污水处理厂自动监控系统。 本文的研究内容包括如下几个部分: l)了解污水处理工艺,分析
络控制和自适应控制等算法。 电子技术 四旋翼飞行器的控制算法,数据通信,姿态测量等过程都需要由电子元器件实现。 传感器的测量精度,微处理器的处理速度,对飞行器的控制效果有非常大的影响,因此对电子元器件也有很高的要求。 希望微处理器的功能更强大,处理信号的速度更快;传感器的可靠性,测量精度做出了一定的要求。 由于电子技术的限制,使许多理论上可行的控制算法,不能在实际中落实
4. 省煤器 : 是利用烟气余热加热锅炉给水 , 以降低排出烟气温度的换热器。 5. 空气预热器 : 是继续利用离开省煤器后的烟气余热 , 加热燃料燃烧所需要的空气的换热器。 通常 , 大、中型锅炉中均设有空气预热器。 为保证正常工作 , 锅炉还必须有一些辅助设备 , 包括以下几个部分 : 1. 引风设备 : 包括引风机、烟囱、烟道口几部分 2. 送风设备 : 由送风机和风道所组成 5 3.