【.com快译】众所周知,一个简单的应用设计缺陷、一个配置错误、一次钓鱼攻击都会对Web服务器造成巨大的破坏。损失。统计数据显示,全球75%的IT领导对其Web应用程序的安全性缺乏信心。因此,近年来,Web应用的安全逐渐成为各种规模企业日常关注和防范的重点。就目的而言,Web应用程序安全旨在保护网站、应用程序和服务免受各种针对应用程序级源代码弱点的新的或现有的安全威胁。下面,我将与大家一起探讨总结Web应用渗透测试过程中常用的步骤、方法和工具。什么是Web应用程序渗透测试?组织内、本地或云端的各种Web服务器经常不断面临来自各种恶意来源的攻击。为了降低此类风险,网络安全专家需要模拟一系列针对网络应用、网站或服务的攻击,以发现各种容易被网络攻击者利用的漏洞,识别潜在威胁,掌握组织的整体应用。安全情况。此过程称为Web应用程序渗透测试。了解渗透测试的核心步骤Web应用程序安全测试的关键步骤包括:初步行动确定被测组织的业务范围、目标和安全态势至关重要。测试人员需要在此阶段确定目标组织正在使用的虚拟和物理资产。因此,测试人员需要确定是对目标系统进行黑盒测试、白盒测试还是灰盒测试。情报收集此步骤对于分析Web应用程序的设置至关重要。我们通常分为被动和主动两个采集阶段。其中:在被动阶段,测试人员主要收集可以在互联网上轻松获取的信息,而无需直接与应用程序交互。例如,使用谷歌语法('site:*.domain.com'),来识别应用程序的子域,或者使用WaybackMachine(译者注:自1996年以来,这个站点已经连续备份了整个互联网1500亿个页面),检查站点的存档版本。在活动阶段,测试人员探测目标系统以提取有用信息以供进一步分析。例如,“指纹识别”Web应用程序以发现所使用的技术版本、执行DNS查找、时区转换、触发错误页面和检查源代码。漏洞扫描和分析在了解系统内的关键控制点后,测试人员可以开始仔细检查那些可用的攻击向量,以确定组织的重要信息是否存在潜在风险。在此阶段,他们通常使用ZedAttackProxy(ZAP)、BurpSuitePro和Acunetix等工具扫描目标应用程序的漏洞,以识别安全漏洞并了解应用程序如何响应各种入侵企图。在利用阶段,测试人员根据前期收集到的各种详细数据,以及对扫描阶段发现的漏洞进行深入分析,选择各种可利用的技术和方法进行渗透“攻击”。例如:使用SQL注入获取对数据库的未授权访问;使用暴力破解工具直接跳过授权机制;上传恶意脚本到应用服务器,获取命令行Shell访问权限等组织威胁,制定补救措施根据渗透效果,测试人员对所进行的测试进行总结和评估,对发现的威胁和风险进行严重程度排序,形成针对性补救建议,最终生成完整的深度报告。组织的IT团队修复漏洞并消除漏洞后,测试人员立即开始新一轮的渗透测试。如果想深入了解以上过程,请参考文章:《5种Web应用安全威胁与7种防范措施》。通过渗透测试识别威胁的四种常用方法通常,合格的网络安全渗透专家会使用以下四种安全测试方法:1.OWASP(OpenWebApplicationSecurityProject)Top10威胁,来增强软件系统安全性的实体。它汇集了来自世界各地的技术专家,分享对威胁和攻击的见解。OWASPTop10(十大漏洞)是一组定期更新的知名文档。它重点介绍了Web应用程序可能面临的10大最严重的威胁。其中包括:注入、无效身份验证、敏感信息泄漏、XML外部实体(XXE)、访问控制漏洞、安全配置错误、跨站点脚本(XSS)、不安全的反序列化、使用已知漏洞组件以及不良的日志记录和监控.2.PCIDSS(支付卡行业数据安全标准)作为一套合同义务,PCIDSS旨在确保所有处理、存储或传输信用卡信息的组织都能维持一个安全的环境。它在全球范围内被视为确保组织内各种支付相关信息安全的黄金标准。该标准不仅提高了客户的信任度,还有助于防止因轻微违规而导致的敏感信息丢失。毕竟,这些对于支付场景来说至关重要。3.OSSTMM(OpenSourceSecurityTestingMethodology)作为开源安全测试手册,OSSTMM每六个月定期更新一次,以反映最新的网络威胁。旨在通过系统、科学的流程,协助用户获取可靠的渗透测试报告,分析各类漏洞、红队行为等安全活动。OSSTMM包含的测试范围包括人员安全、物理安全、无线安全、电信安全、数据网络安全等测试。它与您今天使用的各种安全测试协议无缝连接。4.ISSAF(InformationSystemSecurityAssessmentFramework)ISSAF旨在评估系统、应用程序控制和网络的安全性。它由结构化的九步走组成。其中包括:收集信息、映射网络、识别漏洞、渗漏、获得基本访问权限、提升权限、维护访问权限、危害远程用户和站点以及隐藏测试人员的数字“足迹”。客观地说,与其他常用方法相比,这种渗透测试有些复杂。如果想深入探讨以上方法,请参考文章:《流行的渗透测试工具》。可用于有效分析的七种渗透测试工具如今,大多数渗透测试工具都属于自动化类别。当然,有些工具需要测试人员手动触发和执行。在实际应用场景中,我们往往需要结合手动和自动化测试技术。让我们看看一些最常用的工具。1.ZedAttackProxy(ZAP)ZAP是OWASP维护的最流行和最常用的开源Web应用程序扫描程序之一。它本质上是通过一个“中间人代理”来实现漏洞检测的。也就是说,ZAP在逻辑上位于渗透测试者的浏览器和目标Web应用程序之间,拦截、检查和修改浏览器和Web应用程序之间交换的消息。2.BurpSuitePro作为最流行的渗透测试工具包之一,BurpSuite通常用于识别Web应用程序中的各种安全漏洞。作为一个基于代理的工具,它能够拦截浏览器和任何目标应用程序之间的通信。目前,该工具具有多种有用且强大的功能,包括:针对特定请求生成的概念验证CSRF攻击、具有大量漏洞签名库的扫描器、功能内容和潜在威胁自动发现等功能。3.Veracode作为一个强大的静态分析工具,Veracode可以让您快速识别并修复应用程序中的安全漏洞。同时,该工具无需源代码即可分析应用的主要安全框架和编程语言。在实际应用中,它可以集成到您的软件开发生命周期中,以方便开发团队编写安全代码并评估Web、移动和后端应用程序的安全性。4.SQLMap是广泛使用的开源工具之一。SQLMap可用于识别和利用与数据库相关的漏洞(例如SQL注入)并接管数据库服务器。目前该工具主要支持MySQL、MSSQL、MongoDB、Oracle、PostgreSQL等DBMS(数据库管理系统)。5.VegaVega是另一个开源的web应用程序漏洞扫描工具。它可以帮助您快速发现和验证关键漏洞,例如XSS(跨站点脚本)、SQL注入和其他可能使Web应用程序面临风险的漏洞。Vega是一个用Java编写的基于GUI的工具,支持Linux、Windows、OSX等主流操作系统。6.ArachniArachni能够通过对Web应用程序进行安全测试来识别、分类、分析和记录各种安全问题。与其他扫描工具不同,Arachni考虑到了Web应用程序的动态特性。它检测复杂路径中由漂移引起的变化并相应地进行调整。因此,它是渗透测试人员和管理员的理想选择。7.Dirb是一款实用的网页内容扫描工具。Dirb通过对Web服务器发起基于字典的攻击或暴力攻击来识别应用程序中现有或隐藏的Web目录。同时,Dirb属于命令行类型的实用程序。可提供专业的Web应用审计,从而保障组织机构在Web应用中敏感数据的安全。原标题:WebApplicationPenTestingSteps,Methods,andTools,作者:CyrilJames
