Web渗透测试实战(Metasploit5.0) 一
什么是渗透测试
渗透测试(penetration testing)是对计算机系统的一种授权攻击,旨在评估系统/网络的安全性,执行测试以识别漏洞及其带来的风险。
渗透测试的类型
根据客户需求,渗透测试可以分为三类:
白盒(white box)
黑盒(black box)
灰盒(gray box)
白盒渗透测试
白盒渗透测试又称作玻璃盒渗透测试或透明盒渗透测试。通常在这种类型的渗透测试中,客户会分享关于目标系统、网络或应用的全部信息和细节,列如系统的登录账户和密码、网络设备的 SSH/Telnet 登录信息以及需要测试的应用的源代码。这些信息关系到客户的系统、网络,应用、因此非常敏感,所以建议对这些信息进行加密处理。
黑盒渗透测试
黑盒渗透测试是模拟攻击者的测试,测试人员将充当真实的攻击者,没有目标系统、网络或应用程序的内部信息。这种类型的测试实际上专注于渗透测试的第一阶段——侦察。测试人员可以获得有关目标组织的信息越多,测试效果就越好。在这种类型的测试中,不会向渗透测试人员提供任何架构图、网络结构或者任何源代码文件。
灰盒渗透测试
灰盒渗透测试介于白盒渗透测试和黑盒渗透测试之间。在典型的灰盒测试中,渗透测试人员会获得一些有关应用程序、系统或网络的信息。正是基于这个原因,这种测试往往非常有效,并且更关注有时限要求的组织。
渗透测试的阶段
侦察
枚举
漏洞评估和分析
漏洞利用(包括后渗透阶段)
报告
侦察和信息收集
侦察是执行渗透测试的第一个阶段。
以下是可用于对 Web 应用进行侦察的工具列表:
识别在非标准端口(用户自定义端口)上运行的应用:Amap、Nmap等。
识别 DNS 和子域名:dnsenum、dnsmap、dnswalk、dnsrecon、dnstracer、Fierce、dnscan、Sublist3r 等。
识别技术平台:BlindElephant、Wappalyzer、WhatWeb 等。
识别内容管理系统:WPScan、Joomscan、CMScan、Drupscan 等。
枚举
在枚举阶段,测试人员将扫描在上一阶段(侦察)中识别的每个应用、系统或网络,以查找不同的攻击面。
以下是可用于对 Web 应用进行枚举的工具列表:
文件和目录枚举:Dirsearch、dirb、dirbuster、Metasploit框架、BurpSuite、gobuster 等。
HTTP 协议支持的方法枚举:Nmap、BurpSuite、Metasploit框架(MSF)、wfuzz 等。
速率限制测试:BurpSuite、ffuf、wfuzz 等。
漏洞评估与分析
一旦确定了工具媒介,就需要进行漏洞扫描,这就发生在渗透测试阶段。对 Web 应用进行漏洞评估,以识别网页、目录、HTTP协议方法、HTTP标头等是否存在漏洞。
以下是可用于对 Web 应用进行漏洞评估和扫描的工具列表:
系统和网络:Nexpose、Nessus、OpenVAS 等。
Web 应用漏洞评估:AppSpider、Nikto、Acunetix、BurpSuite、Nessus 等。
漏洞利用
漏洞利用阶段是侦察之后的第二个关键阶段。此阶段用于证明在先前阶段发现的某个漏洞是否可以利用。
报告
报告阶段是渗透测试过程的最后阶段,将汇总在目标(测试范围内)中发现的每个漏洞。报告的漏洞将根据通用漏洞评分系统(CVSS)定义的严重性级别列出,CVSS是一个用于漏洞评估的免费、开放标准。
有一些公开的工具,例如 Serpico、Magic Tree、BurpSuite 和 Acunetix,可以帮助简化报告过程。
重要术语
漏洞(Vulnerability):系统中的弱点,可能导致攻击者能够进行未经授权的访问。
欺骗(spoofing):为了获得非法利益,个人或程序成功地将数据伪装成其他内容的情况。
漏洞利用(exploit):一段代码,一个程序,一个方法或一系列命令,他们利用漏洞来获得对系统/应用程序的未授权访问。
载荷(payload):在利用漏洞期间/之后,在目标系统上执行任务所需的实际代码。
风险(risk):任何可能影响数据的机密性、完整性、和可用性的因素。未打补丁的软件、配置错误的服务器、不安全的 Internet 使用习惯等都会造成风险。
威胁(threat):任何可能对计算机系统、网络或应用程序造成严重伤害的因素。
黑盒(black box):一种测试方法,在测试之前不向测试人员提供有关系统内部架构或功能的信息。
白盒(white box):一种测试方法,在测试之前,会向测试人员提供系统的内部架构和功能的全部信息。
Bug 悬赏(bug bounty):Bug 悬赏计划是许多网站和开发人员提供的一项协议,允许个人因报告 Bug(特别是与漏洞利用和漏洞相关的 Bug)而受到奖励。
SAST(Static Application Security Testing,静态应用程序安全性测试):一种安全性测试形式,主要是对应用程序源代码进行检查。
DAST(Dynamic Application Security Testing,动态应用程序安全测试):一种用于检测处于允许状态的应用程序中是否存在安全漏洞的技术。
模糊测试(fuzzing):一种自动测试技术,将无效、非预期的或随机数据作为输入提供给应用程序。
渗透测试方法学
OSSTMM
ISSAF
PTES
PTES是使用最广泛的标准,几乎涵盖了所有与渗透测试相关的内容。
PTES分为七个阶段:
测试前交互。
情报收集。
威胁建模。
漏洞分析。
漏洞利用。
后渗透利用。
报告。
通用缺陷列表
OWASP Top 10
SANS Top 25
![图片[1]-Web渗透测试实战-基于Metasploit5.0-飞码库源码网-开源资源网-站长源码资源网-全网资源分享网](https://cdn.feimaku.com/wp-content/uploads/2024/04/20240417223726877.png)
如果不太懂部署搭建,可以咨询客服协助搭建!