登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 计算机类 > 软件工程 > 正文

Web应用渗透测试技术研究毕业论文

 2021-03-27 06:03  

摘 要

随着Internet的发展,WEB应用程序在给人们带来便利的同时,也带来了前所未有的巨大安全风险。如今各种隐私,机密信息的泄露给政府,公司和个人带来了巨大的烦恼。由于网络安全法目前还不太完善,黑客肆无忌惮的入侵他人的服务器和个人电脑。渗透测试可以解决这些忧虑,本文将简单介绍渗透测试的概念和内容,并通过介绍常见的渗透测试方法和流程,黑客工具的使用,以一个真实的web应用程序案例来说明如何通过渗透测试帮助用户找到并堵住安全漏洞。

论文主要研究了web应用程序渗透测试的流程和内容,并且通过一个真实案例给出了详细的渗透测试报告。

研究结果表明:很多web应用程序缺乏安全性,需要借助渗透测试来完善网站的安全性,降低安全风险。

本文的特色:模拟黑客攻击的方式,通过流行的安全工具来寻找和突破网站的各种漏洞,给出安全修复建议。

关键词:渗透测试;漏洞分析;黑客攻击

Abstract

With the development of the Internet, WEB applications to bring convenience to people at the same time, but also brought unprecedented security risks. Today, a variety of privacy, confidential information leak to the government, companies and individuals have brought great trouble. As the network security law is not yet perfect, hackers unscrupulous invasion of other people's servers and personal computers. Penetration test can solve these concerns, this article will briefly introduce the probability and content of the penetration test, and by introducing the common penetration testing methods and processes, the use of hacker tools to a real web application case to illustrate how to help users through the penetration test Find and block security vulnerabilities.

The paper mainly studies the process and content of the web application penetration test, and gives a detailed penetration test report through a real case.

The results show that many web applications lack security, need to use penetration testing to improve the site's security, reduce security risks.

The characteristics of this article: simulation of hacker attacks, through the popular security tools to find and break through the various vulnerabilities of the site, given security recommendations.

Key Words:penetration test; vulnerablity analysis; hacker attack

目录

第一章 绪论

1.1 研究的背景 9

1.2 研究的目的及意义 9

1.3 渗透测试技术现状 9

第二章 常见渗透测试工具与平台简介

2.1 Kali Linux操作系统 10

2.2 Nessus 10

2.3 Sqlmap 10

2.4 Nmap 11

2.5 Awvs 11

2.6 Burpsuite 11

2.7 Metasploit 11

第三章 渗透测试方法及流程

3.1 信息收集 13

3.1.1 域名信息 13

3.1.1.1 whois信息收集 13

3.1.1.2 ip旁站信息收集 13

3.1.1.3 端口及对应服务信息收集 14

3.1.2 系统,服务器组件(指纹)信息 15

3.1.2.1 操作系统信息收集 15

3.1.2.2 程序语言信息收集 15

3.1.2.3 服务器组件信息收集 15

3.1.3网站目录,敏感信息泄露信息 16

3.1.3.1 网站物理路径信息收集 16

3.1.3.2 网站敏感文件,url信息收集 16

3.1.3.3 网站目录信息收集 17

3.2 漏洞挖掘 18

3.2.1 web应用程序漏洞挖掘 18

3.2.1.1 sql注入漏洞挖掘 19

3.2.1.2 跨站脚本漏洞(xss)挖掘 19

3.2.1.3跨站请求伪造漏洞(csrf)挖掘 20

3.2.1.4目录遍历,任意文件读取下载漏洞挖掘 21

3.2.1.5 上传漏洞挖掘 22

3.2.1.6 远程命令执行漏洞挖掘 23

3.2.1.7 业务逻辑漏洞挖掘 24

3.2.1.8 暴力破解弱口令漏洞挖掘 27

3.2.2 操作系统漏洞挖掘 27

3.3 风险评估 33

3.3.1远程不安全系统(符合任何一个条件) 33

3.3.2远程一般安全系统(符合任何一个条件) 34

3.3.3远程安全系统(符合全部条件) 34

第四章 渗透测试总结

4.1 常规测试服务流程 35

4.2 风险管理及规避 35

4.3 参考依据 36

4.4 预期收益 37

第1章 绪论

1.1 研究的背景

全球信息技术的快速发展,网络信息安全环境的日趋复杂,网络安全问题已经成为全球普遍关注的话题。网络安全问题涉及到国家,政府,公司和个人,必须将网络安全提升到一个战略高度给予足够的重视。针对目前严峻的形势,中央领导人成立网络安全和信息化领导小组,研究制定网络安全和信息化发展战略,颁布《网络安全法》来应对网络攻击。国家主席习近平指出:“没有网络安全就没有国家安全”

1.2 研究的目的及意义

渗透测试采用模拟黑客攻击的方法,对目标计算机网络系统安全进行测试评估。渗透测试过程是通过安全工具或者手工来寻找和利用系统可能存在的任何漏洞,然后针对系统存在的安全漏洞或者薄弱环节给出渗透测试报告,帮助企业公司修复存在的安全隐患,降低企业可能面临的安全风险。

1.3 渗透测试技术现状

目前对渗透测试技术这方面的投入非常缺乏,国内绝大部分公司对于安全人才的聘用和培养极度匮乏,全国各大高校也极少开展网络攻防方面的课堂,导致目前国内安全意识浅薄,安全人才极其缺乏。但是同样存在那么一群网络安全爱好者在渗透测试的道路上不断前行,用他们前沿的技术帮助各个公司企业寻找安全漏洞以及提供安全修复建议

第2章 常见渗透测试工具与平台简介

2.1 Kali Linux操作系统

Kali Linux 是 Debian系列的一种面向安全的linux版本。其中包含了许多安全和取证方面的相关工具。比如有:wireshark(数据包分析器),nmap(端口扫描器),aircrack-ng(无线破解工具)等,这个系统由Offensive Security 团队开发和维护

在信息安全领域包括一个含金量较高的认证叫做“Kali 渗透测试(Pentesting with Kali)”认证。申请该证书的安全人员必须在有限的24小时内完成多台计算机的入侵,并在另外24小时内要完成渗透测试报告的编写并发送给 Offensive Security 的安全人员进行评审。成功通过考试的人将会获得 OSCP 认证证书。

2.2 Nessus

Nessus 号称是世界上最流行的系统漏洞扫描与分析软件。

Nessus是由一个执行扫描工作的服务器和一个配置控制服务器的客户端组成的,所以开始扫描任务后可以把客户端关了,因为该扫描工作是运行在服务端。该软件接受用户命令后与服务器进行通信,然后把用户的扫描请求递交给服务器端,服务器扫描完成后会将扫描结果显示给用户;扫描代码与漏洞数据相互独立,Nessus 漏洞库中的漏洞都对应有相应的插件,漏洞插件是用NASL(NESSUS Attack Scripting Language)编写的模拟攻击漏洞的利用代码,这种利用漏洞插件的扫描技术对漏洞数据的维护、更新提供了极大的便利。

2.3 Sqlmap

sqlmap是一个完全自动化的SQL注入漏洞利用工具,它的主要功能是扫描,网站存在的SQL注入漏洞它可以进行自动化探测,可以判断当前网站的数据库名,数据库中的所有表以及表中的数据,并且还支持直接运行cmd shell等命令。该工具支持的数据库包含几乎所有流行的数据库。

该sql注入工具包含以下几种注入方式:

1)布尔盲注,通过页面返回条件的真假判断是否存在注入点。

2)时间盲注,通过注入时间延迟语句查看页面响应的时间延迟来判断是否存在注入点。

3)报错注入,通过执行sql查询语句让页面会返回错误信息,把注入的语句的结果直接返回在页面中。

4)联合查询注入,使用union语句情况下的注入。

5)堆查询注入,通过同时执行多条语句的执行时的注入。

2.4 Nmap

Nmap是一款针对大型网络的进行网络探测和安全审核的扫描工具,当然用于单个主机的扫描也没任何问题。它可以发现网络上存活的主机数量,并且存活主机上有哪些服务运行在什么操作系统版本下也可以识别出来。扫描结果状态分为如下几种:open,filtered,closed,unfiltered。Namp对性能和可靠性统计同样支持,它是网络安全研究人员常用的软件之一。

2.5 Awvs

Acunetix Web Vulnerability Scanner(简称AWVS)是安全人员分析网站脆弱问题的必备工具,它可以自动检测出常见的安全漏洞并提供漏洞点以及漏洞危害性分析和修复建议,它的检测原理是以网络爬虫的方式来探测你的网站目录结构并测试你的网站安全,检测流行安全漏洞。

2.6 Burpsuite

Burp Suite 是渗透测试人员用于检测web 应用程序安全性的一个集成平台,该软件采用java语言编写,其中包含了许多安全工具模块,常用的功能模块有:代理抓包,爆破,重放攻击,爬行等,同时为这些功能模块提供了许多接口,来促进加快攻击应用程序的过程。Burp 工具套件允许一个攻击者将人工的和自动的技术进行组合攻击,以列举、分析、攻击Web 应用程序,或利用这些程序的漏洞。各种各样的burp 工具相互协同工作,共享信息,并允许将一种工具发现的漏洞形成另外一种工具的基础。

2.7 Metasploit

Metasploit是一款广泛使用的开源安全漏洞检测工具,帮助渗透测试工程师进行渗透测试(penetration testing)及入侵检测系统签名开发。Metasploit采用模块化的设计理念, 这种可以扩展的模型整合了编码器、负载控制、无操作生成器,使 Metasploit Framework框架成为一种研究高危漏洞的平台。它集成了各平台上常见的溢出漏洞和流行的shellcode ,并且会不断进行更新。目前的版本收集了数百个实用的溢出攻击程序及一些辅助工具,让人们使用简单的方法完成安全漏洞检测,即使一个不懂安全的人也可以轻松的使用它。

第3章 渗透测试方法及流程

3.1 信息收集

3.1.1 域名信息

3.1.1.1 whois信息收集

1)简介:whois(读作“Who is”,非缩写)是用来查询域名的IP以及所有者等信息的传输协议。简单说,whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商,联系人,电话,邮箱等)。

2)研究体会:通过whois信息收集到的一些信息,比如域名注册人的邮箱,qq等。可以通过社工库查询,有机会获得注册人的泄露邮箱账号密码等,进而对网站后台等敏感登陆界面进行口令猜解。

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图