Web应用渗透测试完全指南


作者丨Ariaa Reeds
翻译丨仇凯
策划丨孙淑娟

如果你是 Web 安全专家、Web 渗透测试工程师或 Web 应用开发者,那么本文就是为你量身定制的。本文将从三个方面提供指导:首先,帮助你学习 Web 应用渗透测试技术,并了解相关工具;其次,告诉你如何在 Web 应用中寻找和测试漏洞;最后,指导你如何通过 Web 应用渗透测试技术提升 Web 应用的安全性。

Web 应用渗透测试

Web 应用渗透测试是一种识别和预防 Web 应用安全问题的方法。Web 渗透测试工程师依据自身对漏洞和渗透测试技术的理解,遵循科学的渗透测试流程,使用渗透测试工具识别 Web 应用中的安全风险,这些安全风险很可能被黑客或其他未经授权人员恶意利用。

Web 应用是专门为 Web 服务器设计和开发的程序,例如 Internet 信息服务(IIS)、Apache Tomcat 等。Web 应用的使用场景非常广泛,既可以是基于文本的简单计算器,也可以是类似亚马逊(Amazon)一样复杂的电子商务系统。这些电子商务系统同时运行着身份验证系统、数据库、网站等许多不同的服务。

要完成有效的 Web 应用渗透测试任务,需要具备丰富的 Web 应用技术知识,例如 Web 服务器、Web 应用框架和 Web 编程语言。

Web 应用渗透测试的优势

Web 应用渗透测试是检测 Web 应用漏洞和安全问题最有效的方法。通过 Web 应用渗透测试,能够判断 Web 应用是否存在脆弱性,这通常代表 Web 应用存在可以被黑客或未授权人员恶意利用的漏洞。在安全的环境中对 Web 应用进行渗透测试,可以避免因渗透测试导致的生产系统宕机。这有助于在用户数据遭到破坏之前发现 Web 应用的安全问题,使得我们有足够的时间修复漏洞。Web 应用渗透测试可以帮助 Web 安全专家了解 Web 应用的工作原理、Web 应用的技术实现以及攻击者利用的 Web 应用漏洞类型。这些可以帮助你更好的理解 Web 应用的攻击面,以便制定并实施有效的安全措施。

如何开展 Web 应用渗透测试工作

Web 安全专家使用各种工具和技术在其负责的 Web 应用上执行渗透测试任务。他们同样会制作自定义的测试用例,用来模拟真实世界中对 Web 应用靶标的攻击。

Web 应用渗透测试流程

了解靶标应用的工作原理(例如:靶标应用使用了哪些技术等)。使用自动或手动工具扫描靶标应用,寻找客户端代码(例如 Javascript、Flash 对象、Cookie 等)的漏洞,当发现漏洞后,尝试攻击此漏洞,以便找到造成该漏洞的根本原因,然后尽可能的尝试修复它。

Web 渗透测试人员通常会做的事

遍历 Web 应用目录和 Web 服务器;

判断靶标应用及其使用的技术实现(服务器、技术框架)和编程语言;

使用 Burp Suite 或 Acunetix 等工具进行手动渗透测试,以发现客户端代码(例如 Javascript、Flash 对象等)的漏洞;

使用 Netsparker 或 HP Web Inspect 等自动化工具扫描并识别 Web 服务器和相关技术框架中的已知漏洞。渗透测试人员在手动测试阶段发现的 Web 应用漏洞,也可以使用自动化工具进行攻击利用;

如有必要,对 Web 应用进行源代码分析,以便在 Web 应用部署至 Web 服务器之前,通过添加传入数据过滤器来修复安全问题。

Web 应用渗透测试工具

有许多开源和商业的 Web 应用安全评估工具可以使用,例如:

Acunetix WVS/WVS11;

Netsparker Web Scanner;

IBM Rational Appscan Standard Edition;

HP Web Inspect Professional;

Paros Proxy etc.

相较于自动化技术,手动执行 Web 应用渗透测试任务依然是很好的选择,因为它可以在测试时提供更大的灵活性。手动执行 Web 应用安全评估包含多个步骤,根据你的测试目的(例如利用漏洞),这些步骤能够涵盖从信息收集到漏洞利用的全流程范围。

如何执行 Web 应用渗透测试任务

在明确 Web 应用的安全评估目标后,首先要做的事情就是信息收集。你需要尽可能多的收集靶标应用信息,这将有助于规划下一个阶段的渗透测试任务。例如识别所有提供公开服务的系统,靶标应用所使用的软件平台等。将 Web 应用名称或技术实现作为自定义关键字,在 Google、LinkedIn 或其他有效的在线社交网站进行信息收集,在此之后,你还应当搜寻并下载包含敏感信息(例如用户名和密码)的 Web 应用文件。

现在,通过 Web 应用的源代码或其他有效的在线资源,分析靶标应用所使用的技术实现。这是非常重要的步骤,因为这些信息有助于我们规划下一个阶段的渗透测试任务。

如果你使用自动化工具完成信息收集,那么分析靶标应用的技术实现将尤为重要,因为此类工具只能检测基于特定 Web 应用框架和编程语言的漏洞,无法有效识别所有漏洞信息。

我们始终建议通过由外向内(即,以提供公开服务的系统作为测试起点)的方式执行渗透测试任务,这将有助于我们从攻击者的角度了解其使用的攻击方式、攻击技术和攻击路径,更全面的分析 Web 应用暴露的攻击面。

如何提升 Web 应用渗透测试的效果

在开始 Web 应用渗透测试任务之前,需要完成大量的计划和准备工作。你需要清楚的意识到 Web 应用是非常复杂的系统,它是由许多技术实现组合而成,例如 Web 服务器 /Web 应用服务器、Web 应用框架或编程语言等,因此确定靶标应用使用了哪些技术实现是非常重要的。

某些工具只支持对特定类型的 Web 应用技术进行检测,例如:

Paros 支持检测由 PHP 技术开发的应用,不支持基于 ASP 技术开发的应用;

Acunetix WVS 可以自动识别运行在 Windows 服务器上的应用服务类别(即 Apache 或者 IIS),而在 Linux 环境中,需要在初始化阶段对应用服务类别进行手动配置,这是因为 Acunetix WVS 可以在 Windows 环境中进行自动检测,但是在 Linux 环境中却无法进行自动检测。

译者介绍

仇凯,51CTO 社区编辑,目前就职于北京宅急送快运股份有限公司,职位为信息安全工程师。主要负责公司信息安全规划和建设(等保,ISO27001),日常主要工作内容为安全方案制定和落地、内部安全审计和风险评估以及管理。

原文链接:

https://readwrite.com/2022/01/02/the-complete-guide-to-web-application-penetration-testing/

优质内容推荐

年终奖领完想跳槽?先看看这份程序员薪资调查报告!

开源项目“删库跑路”!作者不讲武德,还是另有隐情

应用程序接口(API)安全的入门指南

2021 年,IT 圈还有这些事是你不知道的!

商汤港股上市,走出至暗时刻

直播预告

AI技术多场景数字化如何应用?如何提供AI技术的解决方案?AI算法如何应对车况检测挑战?1月18日(周二)晚8点特邀大搜车集团 AI大佬张扬老师一起聊聊AI算法的赋能实践,更有精彩的盲盒抽奖互动环节等着你!

点击上方【预约】,精彩直播不错过!直播间还有抽奖活动等着你哦!

长按二维码识别

回复关键字「书」

免费领取技术书籍!

大家好,关于视力检查单子s.e什么意思很多朋友都还不太明白,今天小编就来为大家分享关于视力测试单子se的知识,希望对各位有所帮助!视力报告单上的S.E—1.75是什么意思?S.E=spherical equivalent ,意即:等效球镜度,其值=球镜+½散光,就是说你这只眼的等效球镜度为近视175度假设某眼光..

图片来源:unsplash俄乌冲突不断,欧美国家针对俄罗斯的经济制裁仍在继续。3月10日,谷歌发布公告称,将暂停俄罗斯地区Google Play用户支付。几乎同一时间,有俄媒发..

周末可能和财经相关的十大事件1、上海:3月28日起分区分批实施封控,开展核酸筛查3月27日晚间,上海市新冠肺炎疫情防控工作领导小组办公室发布消息:一、3月28日5时起,我..

周末可能和财经相关的十大事件1、上海:3月28日起分区分批实施封控,开展核酸筛查3月27日晚间,上海市新冠肺炎疫情防控工作领导小组办公室发布消息:一、3月28日5时起,我..

近几年美国在华为身上可谓是费劲了心思,不仅唆使谷歌断供GMS服务,而且还构陷华为5G通信设备存在安全后门,呼吁盟友们联合抵制,甚至还修改规则,切断华为的芯片代工渠道..

点击关注,每天精彩不断!导读:俄市场传来新消息,华为赢了!外媒:不出所料!众所周知,华为公司作为我国第一大的民营科技企业,无论是在自主创新能力方面,还是在综合实..

【新浪新闻·图数室】炎炎夏日,消夏避暑等相关话题热度持续走高。夏天最适合去哪玩成为人们最关注的话题。其中最火的出行目的地TOP3分别是深圳、广州、成都。周边避暑近年..

4月3日,清明小长假即将开启。祭扫、踏青、旅游……需要注意啥?新京报为大家准备了一份出行攻略,快来看看!交通出行预测:假期第一天9至11时或出现拥堵高峰2022年清明假期..

今天是什么日子?!要是回答出今天是小年就比较无趣要是回答出今天是第一届冬奥会开幕纪念日恭喜你!你对冬奥会的关注程度可能比俺的老板还强这篇文章配不上你可以不用看了..

2022年春运已开启哪些人出行需要做核酸检测?如何实时了解全国中高风险地区名单?行程卡有星号怎么办?31个省区市疫情防控咨询电话是多少?今年春运出行的最新要求你需要知..

12月21日至22日,张家口冬奥村(冬残奥村)进行了为期两天的全要素测试演练。测试严格执行“全流程、全要素、场景化、实战化”标准,贯彻“应测尽测,测高峰测交叉”要求,..

一只学霸(ID:bajie203)|来源寒冬 |编辑我打赌没有人能活着走出这套题!!!附录大周末的,为了你们开心我就再出几道脑筋急转弯吧1.下雨要带多少钱才能出门?A.三千..

本文由 51CTO技术栈 来源发布

Web应用渗透测试完全指南

评论问答