【问题标题】:What is the right way to protect the social security number in a web page?保护网页中的社会安全号码的正确方法是什么?
【发布时间】:2021-11-17 16:32:21
【问题描述】:

我们正在构建的应用程序需要存储人们的 SSN。我们已经使用 HTTPS 在传输和存储中使用 DynamoDB 的内置加密保护它们。问题是,一旦到达用户的浏览器,如何在网页中保护它?

示例: 有两种类型的用户可以访问一个人的 SSN。 SSN 的所有者和管理员,因此具有 SSN 的页面已使用应用程序范围的身份验证进行保护。我的问题是,我们还应该做什么?要求用户再次在该特定页面中输入密码?我们还能做什么?

【问题讨论】:

  • 你甚至想保护什么?用户?
  • 要回答标题中的问题,您只显示最后 4 位数字。这足以验证。回答您的具体情况,哪些管理员可以访问个人的 SSN?工资单,当然。他们需要预扣税申请的号码。人员,当然。他们需要提交 IRS 文件。我想不出组织中需要访问 SSN 的任何其他人。

标签: reactjs security websecurity


【解决方案1】:
  1. 使用正确的标头防止浏览器将值存储在缓存中:
Cache-Control: no-store, no-cache, must-revalidate, max-age=0
Cache-Control: post-check=0, pre-check=0
Pragma: no-cache
  1. 不要像不使用本地存储一样自行缓存值。

  2. 防止对您的应用程序的 XSS 攻击。以及任何其他类型的攻击可能会泄露来自服务器的注入数据……我知道,这很深。但是典型应用的攻击面是巨大的。客户端注入、服务器端注入、远程代码执行、愚蠢的业务逻辑问题、日志记录。所有这些都可能将您的 SSN 泄露给第三方。您需要遵守的不仅仅是客户端,以确保您的 SSN 不会泄漏。随意查看OWASP ASVS,看看这个列表有多大。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-15
    • 2018-12-10
    • 1970-01-01
    • 2011-01-19
    • 2013-05-04
    • 1970-01-01
    • 2021-04-18
    相关资源
    最近更新 更多