保护网页中社会安全号码的正确方法是什么?
What is the right way to protect the social security number in a web page?
我们正在构建的应用程序需要存储人们的 SSN。我们已经使用 DynamoDB 的内置加密在传输和存储中使用 HTTPS 来保护它们。问题是,一旦到达用户的浏览器,如何在网页中保护它?
示例:
有两种类型的用户可以访问一个人的 SSN。 SSN 的所有者和管理员,因此具有 SSN 的页面已经使用应用程序范围的身份验证受到保护。我的问题是,我们还应该做什么?要求用户在那个特定页面再次输入密码?还有什么我们可以做的吗?
- 使用右headers:
阻止浏览器将值存储在缓存中
Cache-Control: no-store, no-cache, must-revalidate, max-age=0
Cache-Control: post-check=0, pre-check=0
Pragma: no-cache
不要像不使用本地存储那样自行缓存值。
防止对您的应用程序进行 XSS 攻击。以及可能揭示服务器过度注入数据的任何其他类型的攻击……我知道,这很深入。但是典型应用程序的攻击面是巨大的。 Client-side 注入,server-side 注入,远程代码执行,愚蠢的业务逻辑问题,日志记录。所有这些都可能会向第三方泄露您的 SSN。您需要遵守的不仅仅是客户端,以确保您的 SSN 不会泄露。请随时查看 OWASP ASVS 以了解列表的大小。
我们正在构建的应用程序需要存储人们的 SSN。我们已经使用 DynamoDB 的内置加密在传输和存储中使用 HTTPS 来保护它们。问题是,一旦到达用户的浏览器,如何在网页中保护它?
示例: 有两种类型的用户可以访问一个人的 SSN。 SSN 的所有者和管理员,因此具有 SSN 的页面已经使用应用程序范围的身份验证受到保护。我的问题是,我们还应该做什么?要求用户在那个特定页面再次输入密码?还有什么我们可以做的吗?
- 使用右headers: 阻止浏览器将值存储在缓存中
Cache-Control: no-store, no-cache, must-revalidate, max-age=0
Cache-Control: post-check=0, pre-check=0
Pragma: no-cache
不要像不使用本地存储那样自行缓存值。
防止对您的应用程序进行 XSS 攻击。以及可能揭示服务器过度注入数据的任何其他类型的攻击……我知道,这很深入。但是典型应用程序的攻击面是巨大的。 Client-side 注入,server-side 注入,远程代码执行,愚蠢的业务逻辑问题,日志记录。所有这些都可能会向第三方泄露您的 SSN。您需要遵守的不仅仅是客户端,以确保您的 SSN 不会泄露。请随时查看 OWASP ASVS 以了解列表的大小。