渗透测试网站是否需要用户名和密码?

信息安全 渗透测试 开发 证书
2021-09-07 15:53:49

我们是一家拥有许多使用 ASP.NET 开发的 Web 应用程序的公司。我们的 Internet 服务提供商 (Telefonica) 想要测试我们的网站以寻找漏洞。为此,他们要求我们向他们提供每个网站的凭据(只读访问权限)。

这是我第一次听说要测试网站中的漏洞,您需要向 ISP 提供此类信息。我一直认为,为了测试漏洞,您应该在不知道这些宝贵信息的情况下尝试破坏或入侵网站?也许我错了。

编辑 :

最后,我知道他们将执行什么样的漏洞测试。他们将使用 Qualys Guard Scan 并执行“经过身份验证的扫描”。我第一次听说这件事。根据 Qualys 公司的说法,它们非常有助于发现安全漏洞:

https://community.quallys.com/thread/11562

有这种扫描的经验吗?

2个回答

是的,渗透测试人员要求提供凭据是正常的(但不是 ISP)。

如果不访问凭据,就无法真正测试整个应用程序。没有凭据的人应该只能与一个界面交互 - 登录屏幕。然而,给定测试凭证,可以测试应用程序中的每个表单、每次上传、每个数据入口点。您确实想知道您的用户是否可以执行 SQL 插入或命令 shell 调用,对吗?

事实上,渗透测试人员通常会要求提供多个帐户,如果站点支持不同的权限级别(“管理员”与“用户”),他们会要求每个帐户中的一个。这使他们能够测试不同级别的应用程序访问,并测试一个帐户执行会影响另一个帐户的能力。

现在,如果您的 ISP 正在这样做,我希望进行没有凭据的漏洞扫描;我怀疑他们实际上是否在花费进行适当的渗透测试所需的钱。如果这是常规的自动化测试,我可能会拒绝 - 这不是笔测试。但是可能还有更多关于您的情况需要了解,这可能会以一种或另一种方式澄清它。

虽然正如@gowenfawr 所回答的那样,专业的渗透测试人员询问用户密码是正常的,您应该问他们以下问题:

  1. 您将对这些用户进行哪些测试?(所以你确切地知道他们在做什么)。
  2. 你将如何管理我给你的凭据?(这样您就可以知道他们是否会正确保护凭据。
  3. 这些凭据需要什么样的权限?(这样你就可以给他们尽可能少的特权)。

然后你应该知道你给了他们什么:

  1. 您应该为渗透测试者创建新用户,并且应该正确监控这些用户(这样您就可以知道发生了什么)。
  2. 您应该在测试开始时立即让用户可用,您需要与他们协调。
  3. 一旦您被报告测试结束,您应该立即删除这些帐户。
  4. 其他的?

另外,让我澄清一下渗透测试,这些测试以及其他测试,如您所说,试图找到漏洞,以便他们可以在没有他们的情况下获得一些用户或访问您的服务。但他们也应该尝试执行对不同类型的用户应该禁止的操作,即:普通用户不应该能够获得管理权限。所以你真的需要在你的 web 应用程序中测试每个不同的用户配置文件。