Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 应用程序报告当前密码过期还有多少天是不安全的吗?_Security_Passwords_Password Protection - Fatal编程技术网

Security 应用程序报告当前密码过期还有多少天是不安全的吗?

Security 应用程序报告当前密码过期还有多少天是不安全的吗?,security,passwords,password-protection,Security,Passwords,Password Protection,应用程序报告当前密码过期还有多少天是不安全的吗 例如,如果密码每30天过期一次,如果应用程序告诉您密码将在5天后过期(当然是在您登录之后) 或者,应用程序是否可能存储一个cookie,告诉应用程序在密码过期前3天开始建议更改密码 这两种做法中的任何一种都会被视为不良做法吗 我认为,如果您需要告诉用户密码在这么多天后过期,您应该在登录完成后创建一个页面 例如,如果您有一个页面是您的登录表单,那么在此之后,它将转到另一个脚本,在成功登录时重定向到主页。 您可以使用页面上的为用户提供五秒钟的时间来阅读

应用程序报告当前密码过期还有多少天是不安全的吗

例如,如果密码每30天过期一次,如果应用程序告诉您密码将在5天后过期(当然是在您登录之后)

或者,应用程序是否可能存储一个cookie,告诉应用程序在密码过期前3天开始建议更改密码


这两种做法中的任何一种都会被视为不良做法吗

我认为,如果您需要告诉用户密码在这么多天后过期,您应该在登录完成后创建一个页面

例如,如果您有一个页面是您的登录表单,那么在此之后,它将转到另一个脚本,在成功登录时重定向到主页。 您可以使用页面上的
为用户提供五秒钟的时间来阅读页面,并显示用户在密码过期前的天数,而不是立即重定向。 但要确保只有在登录后才会显示该消息,否则黑客可以读取登录页面的内容,以确定何时需要更改密码


Ad@m

我不认为在用户密码过期时告诉用户是不安全的——至少我看不出它如何实际帮助攻击者。这在任何情况下都是常见的做法——正如adam提到的,Windows本身就是这样做的。

请参阅Bruce Schneier在上的博客文章

密码过期的主要原因是使泄露的密码过期;告诉用户(或攻击者)它将过期不会改变这一点。它所做的是告诉攻击者在截止日期前妥协其他东西;这是否存在风险取决于是否存在此类攻击者(我希望首先要做的是安装一个rootkit)

安全性的好处是,用户有一定的时间(例如一周)来考虑新密码。我可以在一两分钟内想出一个相当不错的密码,只要我不急于完成工作;否则我只会在末端增加一个计数器。每个人都这样做

我的感觉是,有效地说“在下周的某个时候,考虑一个新密码”的好处超过了潜在的风险,但30天太短了。我实际上只需要记住几个密码(电话、笔记本电脑+根目录、家庭服务器+根目录、工作计算机+服务器、密码安全);改变其中任何一个都是乏味的

有多种方法确保用户不会选择与旧密码相关的密码;它们都不是特别好。

Windows会告诉您(当然是在登录后)密码过期几天之内,所以我无法想象这是一种风险。我注意到,在安全意识更高的域中,实际警告天数的配置更为严格,而且似乎从未超过一周,因此在这方面,保守主义可能是可取的。