在 Apache Web 服务器中设置内容安全策略

问题描述 投票:0回答:3

我们进行了渗透测试,其中一项发现是:

“缺少内容安全策略 HTTP 响应标头”

我们做了一些研究,发现了如何在 Web 服务器 httpd.conf 文件中设置它。问题是我们不知道到底要包括什么。我们的网络应用程序实际上不依赖外部站点,如 googleapis 或任何 CDN 或网络上的外部图像。所以,我们真的不确定该放什么。

下面是一个示例,但这依赖于某些谷歌链接。

<Location "/CompanyXYZ/">
Header always append X-Frame-Options deny
Header always set Content-Security-Policy "default-src 'self' data: blob: *.google.com *.gstatic.com; style-src 'self' 'unsafe-inline' *.google.com *.googleapis.com; script-src 'self' 'unsafe-inline' *.googleapis.com *.google.com;"
</Location>

如果我们没有这些依赖怎么办?我们应该如何设置我们的?

apache xss content-security-policy penetration-testing
3个回答
7
投票

这里要澄清的一件事是政策对谷歌链接没有“依赖性”。这是一项允许用户的 Web 浏览器在加载您的应用程序时从这些域加载内容的策略。 CSP 策略是拒绝 用户的浏览器加载任何其他内容的权限。

缺乏 CSP 政策不应被视为漏洞。我希望这被评为“注意”或风险非常低的问题。实施 CSP 是您确实需要测试的事情,因为您可以轻松破坏网站/应用程序的功能。我只是确定您不会为了满足供应商而急于求成。

CSP 是比这更应该做的事情,你需要仔细评估你的应用程序加载/包含的所有内容。 然后 以仅报告模式实施政策是明智的,在这种模式下您可以看到违反政策的违规行为。这样您就可以找到问题,而不会破坏用户的功能。

这是它自己的蠕虫罐头,因为您需要一个报告侦听器(为此可以在线使用平台)。

如果你选择即兴发挥并执行政策

如果您不依赖这些域中的资源,您可以安全地忽略它们。它们留在那里作为示例,因为很多站点都包含来自这些 CDN 的内容。

最后一个选择是只包含一个基本什么都不做的非常小的策略。大多数渗透测试供应商只是检查一个框以查看是否存在。

您可以尝试以下操作来选中该框(警告这没有任何作用):

Content-Security-Policy: "default-src *"

1
投票

缺乏 CSP 政策不应被视为漏洞。我希望这被评为“注意”或风险非常低的问题。实施 CSP 是您确实需要测试的事情,因为您可以轻松破坏网站/应用程序的功能。我只是确定您不会为了满足供应商而急于求成。

正确配置的内容安全策略 (CSP) 可以通过限制 JavaScript、CSS 和其他潜在危险资源的来源来帮助防止跨站点脚本 (XSS) 攻击。 @ebuntu 是什么让您相信这不是漏洞?


0
投票
<Location "/app-services">
                Header set x-xss-protection "1; mode=block"
                Header set X-Content-Type-Options nosniff
                Header set Referrer-Policy "strict-origin"
                Header add Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval'; img-src * 'self' data: https:;"
                Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure;SameSite=strict
</Location>

<IfModule mod_headers.c>
 Header set x-xss-protection "1; mode=block"
</IfModule>

所以在 apcahe 配置中添加了上面的配置,用于将 samesite 设置为 strict,x-xss-protection "1; mode=block",设置安全标志和 Content-Security-Policy

© www.soinside.com 2019 - 2024. All rights reserved.