我现在正处于开发后端系统的阶段,我们可以在其中查看/修改所有客户信息、他们的客户信息等。
我正在考虑要求通过身份验证应用程序(不是 SMS)(已经实现)使用双因素身份验证,如果这不可用,则需要使用非常、非常强的密码并将其限制在一定天数之前它需要更改,并阻止最常见的密码。
我有许多从 Github 存储库获得的“通用密码列表”,可在此处找到:https ://github.com/danielmiessler/SecLists/tree/master/Passwords 。
我正在考虑使用 100,000 密码列表,因为我相信它提供了最好的而且不会走得太远,但我需要您对是否使用 1/10,000 或百万列表提出意见。
最后,展望未来,如果帐户通过公司 vpn 登录,我只允许完全访问数据,如果没有,则给他们一个不让他们深入了解的简化版本。
当谈到使用某种 JS/Backend 脚本为用户自动生成安全密码时,我认为这些都不是答案。这是因为,他们不会记住密码,只会将其保存到浏览器中。当他们尝试登录未保存密码的地方时,您可以保证他们的帐户将收到重置密码请求。这可能会导致该会话的使用量下降,或者如果对他们来说太多,则在可预见的情况下整个帐户都无法使用。
对于这个级别的员工,我还禁用了基于电子邮件的密码重置选项,并要求他们在内部进行,以确保数周的安全实施和数小时的解释我的 Sec SE 线程不偏离主题不会消失浪费了 10 年前设置的电子邮件地址的密码。
我们自己的员工可以查看的信息包括所有客户信息和他们的客户信息,例如完整的联系方式、完整的家庭住址、银行账户分类代码/帐号、从他们的卡中扣款的能力(我们不存储他们的抄送信息,只是PP/Stripe Key) 甚至包括消费习惯,以及其他方面。
您对实施最强大的方法来保护该级别的用户帐户的想法是什么,不仅通过密码,而且通过其他方式,而不会惹恼用户?