首页> 中文学位 >Applying Web Server to Analyze the Limitations of Web Application Vulnerability Scanners
【6h】

Applying Web Server to Analyze the Limitations of Web Application Vulnerability Scanners

代理获取

目录

声明

ABSTRACT

摘要

TABLE OF CONTENTS

LIST OF FIGURES

LIST OF TABLES

CHAPTER 1:INTRODUCTION

1.1 Background

1.2 Motivation

1.3 Problem Statement

1.4 Definition of frequently used terminologies in this Thesis

1.5 Organization

1.6 Contributions

1.7 Summary

CHAPTER 2:LITERATURE REVIEW

2.1 Web Application Attacks demystification

2.1.1 Structure Query Language(SQL)Injection

2.1.2 SQL Injection Attacks Vector

2.2.3 Incorrectly filtered escape characters

2.1.4 Incorrect type handling

2.1.5 Blind SQL injection

2.1.6 Conditional responses

2.1.7 Second order SQL injection

2.1.8 Query Parameterization statements

2.1.9 Escaping Parameters by using special function

2.1.10 SQL Injection Vulnerability Technical Hitches

2.1.11 Recommended Preventive Measures for SQL Injection Attacks

2.1.12 Prevention of Sql Injection Attack in PHP

2.2 Cross Site Request Forgery(CSRF/XSRF)

2.2.1 Cross Site Request Forgery Attack’s Analysis and Prevention Techniques

2.2.2 The Most-Neglected Fact about Cross Site Request Forgery(CSRF)vulnerabilities

2.2.3 Finding and Remediating XSRF Vulnerabilities

2.2.4 Cross Site Request Forgery Protection Mechanisms

2.3 Cross Site Scripting attack(XSS)

2.3.1 The behavioral approach to Cross-site Scripting(XSS)attack mechanism

2.3.2 The use of JavaScript by an attacker in Cross Site Scripting(XSS)attack

2.3.3 Actors in a Cross Site Scripting(XSS)attack

2.3.4 The anatomy of a Cross-site Scripting(XSS)attack

2.3.5 The Types of Cross Site Scripting(XSS)Attack

2.5.6 Enabling Factors for Exploitation

2.5.7 Some essential examples of Cross-site Scripting attack vectors

2.3.8 The prevention mechanism

CHAPTER 3:RESEARCH METHODOLOGY

3.1 Related studies

3.2 Research Design and Data requirements

3.2.1 Research Design

3.2.2 Data Requirements

3.3 The Amalgamated Techniques Organized For Web Vulnerability Scanner Evaluation

3.4 The Web Application Vulnerability Scanners

3.4.1.The Web Application Scanners in Academia

3.4.2 The Free/Open-Source Web Application Scanners Used

3.4.3 Commercial Web Application Scanner

3.5.The Design of the Web Applications for testing

3.6 Overview and Features of the vulnerable web application

3.7 Vulnerabilities Implemented in the web applications developed

3.8 Input vector

3.9 Qualitative Comparison of The Detection Capabilities By the Scanners

3.10 Strategy of the scanners in identifying vulnerabilities

CHAPTER 4:PERFORMANCE RESULTS AND ANALYSIS

4.1 Evaluation Method Used

4.1.1 Web Application Technologies executed

4.1.2 The Controlled Environment

4.1.3 Black Box and White Box Analysis

4.1.4 Vulnerability Scanner Testing Approach

4.1.5 Implementation

4.1.6 The Classification of the implemented vulnerabilities

4.1.7 Analysis of the scanner results

4.1.8 Limitations of Performance

4.2 The Finalization Of The Results

4.2.1 Test Techniques

4.2.2 Technical Observations

4.2.3 The Personalized Web Application Test Bed Prototype

4.2.4 SQL Injection

4.2.5 XSS Injection

4.2.6 The Test results pictographic repositories

4.2.6 Other Findings

CHAPTER 5: CONCLUSION AND FUTURE WORK

5.1 CONCLUSION

5.2 Future Work

REFERENCES

ACKNOWLEDGEMENTS

ABBREVIATIONS

APPENDIX

展开▼

摘要

Web应用程序漏洞扫描器是一个由网管人员和安全专家用于预防和检测漏洞的工具,常见漏洞如SQL注入、跨站点脚本,和跨站点请求伪造。现在的大量网络攻击都可以部分的归因于这一事实,即网站管理员没有使用web应用程序漏洞扫描器去扫描网站中的漏洞。由于缺少正确的安全防范,网络攻击威胁已成为一个真正的并且不断发展的危害。因为web应用程序的漏洞,每年有成千上万的企业和个人数据被破坏和丢失。本文提出了一种方法,该方法可以分析网站的漏洞,并对那些极受欢迎的商业和自由/开放源码的web应用程序漏洞扫描器的局限性进行研究,通过使用定制的安全与不安全两个版本的web应用程序作为实验对象。本文实现了一项重大的改进,即使用上述方法让web应用程序扫描技术减少误判(假阳率)和遗漏(假阴率)的漏洞结果的数目。
  这些扫描工具已经被发现具有缺陷和局限性。研究表明,web应用程序漏洞扫描器并不能始终检测到漏洞和攻击媒介,也无法给予有效措施来保障web应用程序的安全。这些工具将漏洞,诸如SQL注入、跨站点脚本(XSS)和跨站点请求伪造(CSRF),插入到准备好的web应用程序中。本文得到的实验结果表明,使用我们提出的原型可以保证许多流行的开源web应用程序的安全,并且不会影响这些程序的行为。第一个web应用程序是由作者自己开发和设计的,因此,该工具可以生成一个web应用程序的有漏洞版本。该工具将跨站点脚本(XSS)和跨站点请求伪造(CSRF)漏洞注入到该web应用程序中。这个工具的目的是生成一些能够生成用以训练渗透测试人员报告的web应用程序。此外,该工具可以用来注入一些漏洞,这些漏洞无法被目前的免费web应用程序漏洞扫描器检测到,但可以被渗透测试人员检测到。本文得出的实验结果证明,使用本文提出的原型可以保障大量的流行的开源web应用程序的安全,同时不会对这些程序的行为造成消极影响。
  Web应用程序漏洞,例如跨站点脚本、跨站点请求伪造和SQL注入,这些是当今互联网最为紧迫的安全问题。事实上,web应用程序漏洞是广泛存在的,占了常见的漏洞和隐患数据库[1]漏洞报告中的很大一部分;它们经常成为自动攻击的目标;而且,如果成功利用此漏洞,会进行受到严重的攻击,如数据外泄和隐蔽强迫下载的攻击。在这项研究中,这种情况下的web应用程序的安全测试显得至关重要。
  本文讨论的三类攻击是特别常见且极具破坏力的安全漏洞。在SQL注入(SQLI)中,攻击者通过利用从用户到数据库的验证不充分的数据流执行恶意数据库语句。在跨站点脚本(XSS)中,攻击者利用验证不充分的输出到HTML的数据流,在受害者的计算机上执行恶意代码;同时,跨站点请求伪造(CSRF)允许攻击者在用户不知情的情况下,执行未经授权的语句。一个攻击请求利用浏览器为每个请求附加有效会话信息的事实。因此,首先在浏览器寻找攻击的迹象,并采取适当的行动。这些漏洞的目标虽然各不相同,一个漏洞运行不受信任的代码,而另一个漏洞可能用于劫持身份验证,但当这些漏洞攻击结合,其联合起来的危害是非常巨大的。
  事实上,我已经创造了一个用于识别SQLI,XSRF和XSS漏洞的新的技术,通过在虚拟仿真环境下实现了一些web安全漏洞工具,用以发现web应用程序中攻击者精心设计的代码,其中这些web应用程序是我为真实生活场景开发的。该技术可应用于未修改的现有代码中,并能创建有暴露漏洞的具体输入,该技术运行于软件被部署之前,对发布的软件而言没有额外开销,它通过分析应用程序内部的代码来发现易受攻击的代码。作为我的技术实现,我在PHP/MySQL应用程序上部署几个安全工具,这些自动化工具可用于发现SQLI、XSRF和XSS攻击。Web应用程序扫描器事实上在本文中用于漏洞的发现(在实际情况中,web应用程序扫描器通常被定位为“点击”渗透测试的工具)。在过去的几年中,他们已成为了一些标准中一项要求,最明显的就是在支付卡行业数据安全标准中。然而,web应用程序扫描器有局限性。
  本论文很专业的应用web服务器测试平台来分析web应用程序漏洞扫描器在虚拟的仿真环境中的局限性。此外,本论文的每一章使用可靠的等效目标的子标题来包含具体描述主题的结构性启发。按时间顺序,这篇高度专业的安全相关的论文提供如下所需的结构,以确保在其内容的完整性。本文第一章的概述更加广泛,包括了背景介绍、研究动机、问题陈述、文中常用术语的定义、全文组织、主要贡献和总结。第二章包含3个重要的文献综述小节(2.1,2.2,2.3),强调了用在这个研究中的web漏洞攻击基本上都是生动具体的,并且在工程实例中有经常被提到的迹象。因此,通过揭示在正常的工作环境中开发的具体因素,2.1节的SQL注入(SQLI)攻击方案会在不同的部分被阐述。在仿真环境中,我专门开发了一个独立网站,故意在源代码中生成了一些漏洞,用于找出SQL注入式攻击。导致了另一个web相关应用程序产生预防方法,均以书面形式和编程方式实现。两个web相关的系统出于安全和非安全的目的被建创建。2.2节对跨站点请求伪造(XSRF)攻击的分析和预防技术进行了解释,跨站请求伪造漏洞和保护机制是最容易被忽视的事实,保护机制是关于对任何web应用程序保护的最高行动指南。2.3节阐明跨站点脚本(XSS)攻击及在开发中的促成因素。该节用许多例子来展示,用单个的解释来描述在不同的维度中跨站点脚本(CSS)攻击的类型。同时还提出了预防机制,以减少攻击的复发。第三章(3)包含了研究方法、相关研究、研究设计和数据需求。这一节还特别阐述web应用程序漏洞扫描器的商业版和试用版以及应用于学术界的专有web应用程序漏洞扫描器。在这一部分中,利用本文研究中使用的图形量化的扫描器,可以定性的比较扫描器检测功能。第四章描述了性能结果和分析,特别是达了web漏洞扫描器的结果量化分析统计数据的细节。对于突出的漏洞(SQL注入、跨站脚本和跨站请求伪造),扫描器性能的局限性被严格地表达,以求得到最有意义的结果,并且还进行了全面的分析。第五章最后包括了结论和未来的工作,以及引用、致谢、缩写表和附录。
  此外,为了让实验能够获得具有实际意义的结果,自变量、因变量和控制变量都需要进行适当的选择。在这个测试方法中,web服务器相关技术保持不变(控制变量),修改故意构造的漏洞的数量(自变量)。通过确定web服务器不改变和改变故意构造的漏洞数量,最终那些被web应用程序漏洞扫描器发现和忽略的漏洞(因变量)都将被观察到和分析到。这个方法提供了一组假阳率(误判)和假阴率(遗漏)的结果,通过分析这些数据,可以发现是什么原因造成了错误结果。
  使用单一试验平台的web服务器是有利的,因为它提供的一个受控制的web应用程序环境将保持不变,并且在测试过程中保持一致性。如果使用不一致的方法,web漏洞扫描器测试的那些web应用程序将有着明显不同数量的页面、服务器端技术和其他层面的复杂性,其后的分析将难以完成。保证实验中其他因素不变,只需关注web漏洞扫描技术的缺陷,而无需担心问题是由于其他因素造成的。服务器技术Wampserver(windows、Apache、MySQL和PHP)保持不变,但故意构造的漏洞的数量将被修改。由于所使用的源代码是我自己开发的,因此预期的结果是已知的,不会存在大量未知数量的漏洞。在分析web漏洞扫描器方面,该方法是一种非常有效的方法,因为可以对漏洞扫描器误判或遗漏的漏洞进行定位。通过存在于扫描器之中的假阳率和假阴率的确切数字,每一个扫描器的结果都将可以确定。
  这种测试方法可以从使用黑盒分析和白盒分析中受益。黑盒分析是一种渗透测试,通过对应用程序操作的分析来寻找漏洞。白盒分析是另一个漏洞检测技术,只有在源代码可见情况下,才能用来发现程序的安全漏洞。
  本研究提出了一种可行的方法来发现web应用程序漏洞扫描器的局限性,利用一个web服务器测试平台进行漏洞检测和分析。对本研究中使用的web应用程序漏洞扫描器的选择,是基于它们能探查到的漏洞数量和种类、检测的漏洞的重要性和使用的扫描技术这三个方面来决定的。出于这项研究的需要,我在虚拟仿真环境中搭建了于Wampserver、Apache、MySQL和PHP框架的web服务器测试平台,所有用于测试的web应用程序都被部署在该平台上。之所以选择该技术框架是因为它的流行性和广泛的使用度。每个web应用程序漏洞扫描器都按照规定方法对web应用程序进行测试,其中包括一组初始化、执行、分类和分析程序。
  通过使用安全的和不安全的两个定制web应用程序版本,假阳率和假阴率结果可以与用来发现漏洞的扫描器使用的技术联系起来。所使用的技术和假阳率或假阴率报告的联系可以用来为web应用程序扫描技术提出改进建议。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号