这是用户在 2025-8-3 18:09 为 https://medium.com/@shaikhminhaz1975/live-bug-bounty-penetration-testing-on-real-websites-step-by-st... 保存的双语快照页面,由 沉浸式翻译 提供双语支持。了解如何保存?
Sitemap

真实网站实时漏洞赏金与渗透测试:分步指南(第一部分)

7 min readSep 15, 2024

好了,好了,文章来了——哦!抱歉,我指的是那一系列文章——我们将在其中进行渗透测试或漏洞赏金狩猎。现在的小孩子都这么说。我们会一步一步地进行实际操作,而且我们不在任何漏洞实验室或故意设置漏洞的网站上进行操作。我们在一个真实的网站上进行操作,这个网站也有一个漏洞报告程序。

如果您无法阅读本文,请加入 Discord 频道: https://discord.gg/rJexj8W7yd

因此,从发现每个漏洞到单独报告每个漏洞,以及像专业渗透测试人员一样制作最终报告,我们将涵盖所有内容。

以上就是漏洞赏金狩猎的分步指南。我们方法的第一步是识别阶段。不确定我指的是哪个步骤或阶段?您可以查看并阅读我之前的文章,我在其中讨论了漏洞赏金狩猎的最佳方法。您可以在这里找到它: 方法论

现在你已经了解了方法论,让我们开始识别步骤。确保你的攻击机器已设置好,并且拥有必要的工具。让我们开始狩猎吧!

那么,问题是:从哪里开始以及如何开始?首先,你需要一些工具。我希望你安装以下工具:

Wappalyzer 扩展,

Retire.js,

FoxyProxy,

Shodan 扩展

安装完所有内容后,您将需要您的域名 - 您的目标。

现在,您可能想知道:如何选择测试目标域名?我写了一篇详细的文章,您可以在这里查看: 这里 。但由于我们才刚刚起步,您应该专注于选择具有负责任披露计划 (RDP) 的目标域名。我的意思是,暂时不要选择 Bugcrowd 或 HackerOne。从拥有自己负责任披露计划的网站开始。

您可以尝试在 Google Dorks 中搜索 intitle: "Responsible Disclosure"

在本系列文章中,我们将测试一个真实活跃的政府网站,该网站也设有负责任的信息披露计划。好了,闲话少叙——让我们做好准备,正式开始吧!

识别阶段

在识别步骤中,我们需要找到 Web 应用程序中使用的所有服务及其版本,例如 CMS、API 和技术。因此,我们的首要任务是识别 Web 应用程序正在使用的服务器。有很多方法可以做到这一点,但我们将从最基础的方法开始。

使用 Nmap

nmap domain -p 443,80 -sVC
Zoom image will be displayed

所以,我们发现服务器是 nginx 。我们没有得到确切的版本,但没关系——我们很高兴从这个开始。

现在,很多时候,你不会看到服务器名称;相反,你可能会看到类似 HTTPHTTP 代理Cloudflare 之类的信息。这些都表明 Web 服务器正在使用代理服务器或防火墙。遇到这种情况时,我建议使用 IP 地址更改工具 ,因为防火墙通常会阻止你的大部分请求。最好使用 IP 地址更改工具来绕过这个问题,网上有很多教程可以参考。

回到正题——如果您发现服务器名称隐藏在代理服务器或防火墙后面,请前往 Censys ,输入您的域名,然后转到 “历史记录” 选项卡。然后,您可以对所有列出的 IP 执行 nmap 操作 ,因为 Censys 有可能在部署代理服务器之前就记录了 Web 服务器的实际 IP。这种方法通常可以很好地绕过代理服务器来查找实际的服务器名称。

噢太多了!!

这次破解至关重要。现在,在 Censys 的帮助下,我们也找到了服务器版本。

接下来,让我们访问该网站。由于法律许可,我不会显示我正在测试的网站的域名或 IP。

在浏览该网站的 3-4 分钟内,我检查了我的 Wappalyzer 扩展程序,发现了非常有趣的东西:

未发现任何 CMS。我使用 CMSeeK 等工具进行了手动测试,并手动检查了源代码,但未发现任何表明 CMS 的线索。因此,可以确认该网站完全由 React 构建,并由开发人员手工编写。这让我非常高兴,因为手工编写的网站通常更容易出现配置错误和常见漏洞。

哇哇哇!别跑题了!以下是我们目前发现的内容:

  • 服务器 :nginx,版本 1.14
  • 没有 CMS
  • React 用于开发

那么,接下来是什么呢?小伙子,我们继续深入吧!

现在让我们对主域名进行目录暴力破解和子域名暴力破解

Zoom image will be displayed

哇哦,哇哦!看看我们找到了什么!我简直兴奋得手舞足蹈——我们找到了一些非常有趣的目录!不过,我的兴奋只持续了几分钟,就像她屏蔽我一样,因为大多数目录最终都变成了 301 重定向400 重定向。

简单来说就是: 禁止

你可能难以置信——我自己也难以置信——我没有找到任何子域名!不过不用担心,我不会为子域名而烦恼。我会专注于测试主域名。

由于该网站是使用 React 构建的,现在最好的办法是创建站点地图。我将使用 Burp Suite (我使用的是专业版)来执行内容发现。此工具会自动绘制站点地图。需要注意的是, 不建议在任何网站上都运行主动爬虫。就我而言,我只爬取域名下的一个目录。

我知道你还没完全理解我刚才提到的 Burp Suite 部分,所以让我解释一下。我做的是,暴力破解了一些目录,并在暴力破解过程中发现了一个 files 目录 。我使用 Burp Suite 对该 URL 运行了内容发现扫描,它抓取了该 files 目录下的所有目录和页面。

请关注一下:Discord: https://discord.gg/rJexj8W7yd Linkedin: https://www.linkedin.com/in/minhazshaikh/

从中我发现目录列表可以暴露一些敏感文件

Zoom image will be displayed

发现错误配置:1

现在我们已经发现目录列表已启用,如果您还记得的话,根据我们的方法论,这属于配置错误阶段 。我先不讨论这个问题,继续分析该网站使用了哪些 API 进行数据传输。

查找 API

要找出该网站使用了哪些 API ,最好的切入点是登录注册页面,因为这些页面的数据显然是通过 API 进行推送和拉取的。所以我就这么做了。通过拦截注册和登录过程中的一些请求,我能够识别出正在使用的 API。

看看这个:

Zoom image will be displayed

我发现 GraphQL 用于数据传输。

到目前为止我们发现

服务器:nginx 1.14

CMS:无(使用 React 制作)

API:graphQL

Zoom image will be displayed
Zoom image will be displayed

发现了一些像 pakage.json 这样的文件,还有一个执行服务器命令的测试 API,这是非常糟糕的发现,现在将深入研究第 3 阶段,请阅读以下内容

我们已经发现了很多问题,你可能会想,我们只是发现了 GraphQLnginx 而已。但事实并非如此,我们发现的远不止这些。启用目录列表功能,暴露敏感数据,这本身就表明该网站极易受到攻击。我们还发现了 adminsadministrator 等目录。

我们还没有深入探讨这个问题,但我们会在错误配置阶段进行更多探索。在这个阶段,我们只收集了目标的信息,现在我们已经知道它很脆弱,因为 json 文件和测试 api 暴露出来,有很多测试空间。

现在,漏洞搜寻真正有趣的部分开始了—— 错误配置阶段 。在这里,我们不仅会识别漏洞,还会开始报告我们发现的每一个漏洞。我们会逐一测试它们。下一篇文章很快就会发布,就在几天内——好事多磨!

与此同时,请尝试在您自己的目标上执行所有这些步骤。我还没有向您展示初学者级别的操作,例如如何使用 Burp Suite 或安装扩展程序——如果您处于这个级别,您应该能够掌握这些操作。

所以,继续学习,继续奋斗,

Discord: https://discord.gg/rJexj8W7yd

领英: https://www.linkedin.com/in/minhazshaikh/

到那时,

继续狩猎

Shaikh Minhaz
Shaikh Minhaz

回复 (6)

Lyu wulong
Lyu wulong

What are your thoughts?

兄弟,非常期待这个系列🤗

6

哥们你太火了,继续加油🔥继续这个系列

15

写得很棒,继续努力!

6