1

我想将我出色的新 ASP.Net 应用程序部署到面向 Internet 的 Web 服务器。我想在互联网上使用 Windows 身份验证,以便 IE 自动提示输入 Windows 登录凭据。我想确保它足够安全。

围绕此的一些参数是:

  • 我不想在这个阶段实施 SSL。
  • 我们只有一台服务器可以进行身份​​验证。我已经阅读了很多关于中间人攻击将身份验证信息重定向到第三方服务器的信息,但在我的情况下,只有一台服务器 - 他们正在登录的那台服务器。
  • 我一直在阅读有关 IIS Windows 身份验证扩展保护的信息,但我仍然不确定它的好处

所以基本上如果我启用 IIS Windows 身份验证扩展保护,并且我可以确定没有人被钓鱼,我可以确定这将是安全的吗?

我们的服务器经常遭受攻击——我认为早期的一些错误已经将它列入了“容易攻击的目标”列表。

4

1 回答 1

1

基本上,没有。WindowsAuthentication(blargh)仅适用于身份验证阶段。也就是说,它取代了您网站的 HTTP-Basic-Auth,并负责检查用户所谓的登录密码是否有效且可接受。当然,这与密码无关。这只是简单的例子。

这么久了,这部分可能会被认为是安全的。但是,用户完成登录部分后,他被弹回到目标网页,网页现在知道他的身份,并且由于Windows-blargh,网站知道它没有被欺骗,但现在用户只是使用该页面

他是怎么做到的?由于您“在这个阶段没有实施 SSL”,他使用纯 HTTP来浏览该站点。这意味着现在所有内容都以明文形式发送,并且很容易窥视或注入/修改某些内容。只要您只使用 HTTP,您就会对某些形式的攻击“开放”,因为 HTTP 不提供任何形式的通信保护。这就是为什么大多数需要一些安全性的站点都可以通过HTTPS(即 SSL )访问的原因。

SSL 实现起来并不难。对于最基本的用途,您只需在 IIS 配置中勾选几个复选框,有时您还需要生成自己的证书。免费。最多需要大约 5 分钟,您就可以启动并运行 SSL,并且没有人偷看也没有人注入。[当然,除非他们打破钥匙,但这需要时间和决心..]

注意:我说的是WindowsAuthentication-blargh,因为ExtendedProtection这件事只与实际使用页面之前的WindowsAuthentication过程有关。“旧”WindowsAuthentication 相对不安全,因此已通过额外的安全手段对其进行修复,以阻止某些形式的攻击。您可能会假设使用 WA+EP 现在其他人不太可能以您的身份登录。但是,它不会保护您的页面内容。WA 从来没有这样做过,所以 WA+EP 也没有。

这就是主题的基础。但是请注意,我不是 Windows-Authentication-blargh 方面的专家。如果启用该功能实际上会打开一些秘密 IIS 模块,该模块会在网站标头中发送一些 PGP 哈希,从而导致 InternetExplorer 打开读取这些哈希并开始验证网页内容的其他秘密模块 - 好吧,太棒了,我们在纯 HTTP 中有一些保护。无论如何,它只能在 IE 上工作。但我很怀疑。我几乎可以肯定 Win-Auth 只是关于身份验证阶段,而不是关于连接安全性。

于 2012-10-05T07:04:51.037 回答