0711月

如何做一个安全的“记住我”功能 – 文章

有一调准瞄准器中,一用户登录并接近您的网站,但其次天他又来了。,但你必需品再次登录。终于就受胎“记住我”完全相同的事物的效能来实用的用户运用,但有一件事是显而易见的,这是识别恒等拖工夫曾经踏过。这破旧的,他们可以合拢浏览图书报刊者,后来完成电脑,下周或下个月,甚至更长工夫回顾,但愿这事区间是太逾越,网站无不知情关系代词谁,并自始自终的为他们赡养财富比得上的效能和侍者——与许久前他们分开的时辰不易察觉的。

我说的是这事庞然大物:

remember

那自然挑剔很亮度地租。,但你会牧座,如果严格意思上的运用,创造喜剧的手术台挑剔偶尔的。,你可以有一辆车预备告知你它是编号弄的一团糟。因而让朕成绩的原文开端。

反榜样

乍看起来,这如同很明显。,执意说“记住我”效能的申请表格果真是非常根源的,挑剔那种很弄不变清澈的东西,竟,显然挑剔?。

在喂,我将解说两个反榜样侦查和成绩。,谈谈编号严格意思上的地做这件事。第一窥测,如图所示,登录时:

remember2

这整个的都契合规范。,但风趣的事实发作后登录,让朕看一眼吸引人的年轻妇女吧。:

remember3

这事吸引人的年轻妇女是很糟糕的的。,格外地,未完成的显示的黄色搜索光点被选中。。假如你没勾选“记住我”的话,这些糟糕的的知识将不会的被cookie记载下。,使完全相同的事物的效能只为实用的用户回拜。。在图中,我的电子邮件信箱地址是裸露的,又口令不卓越的。但不要太感动,看一眼那些的看来好像河山带砺的编密码字母串。……咦?慢走,这挑剔Base64编码?!四处走动的Base64编码,这是一信号,可以解码完整,这破旧的你可以去少许一编码替换的网站,做某个像T:

remember4

挑剔各位都认为Base64编密码(自然),某些人真的运用它编密码的要紧知识,不管它真的更替ASCII的有理道路,但竟,这合理的手段编码的口令明文就。你可能性会反驳道 – 这能有多大成绩?无论编号它合理的储藏处在本身的浏览图书报刊者里,它能做什么?黑客怎地能记下它呢?

现时我将绍介两个非常复杂的手段,率先要提的是前述的机遇关系。百得发布判决书的日常的日记,在这些日记中完整缺勤向内SER的词的搭配。,被蒙混的使满足是对记载使满足不计其数次。但当日常的记载非常,零碎还记载财富讯问标头,后来实行审核。,这破旧的财富这些东西都进入cookie。。只想想看那合计大批的的被过滤掉的使满足果真全被拆掉了起来,这差一点普通具可利用性户凭据的知识库。。自然,他们适宜修补它,但这是一地租的窥测。,编号轻松地地运用一非常复杂的词的搭配颠倒?。

静止的另一个一成绩:

remember5

这事网站是Aussie Farmers Direct(以下统称为AFD网),这是一非常类型的版式登陆。但愿登录,并且让网站“记住我”,后来看一眼吸引人的年轻妇女:

remember6

1 好极了! 2 上帝啊,完全相同的事物的机遇,如果是Base64编码不加。说这是坏人的,听着,你可以完全相同的事物做:

remember7

XSS的JSON吸引人的年轻妇女吗?自然,完全相同的事物玩,完全相同的事物一来,假如你手段了口令,但吸引人的年轻妇女是稳固的,当你再次登录时,它学习登录的旧口令。嗯?

AFD缺勤显示其良好的PHP(日常的日记!但他们静止的等等风险,比方XSS。网站的另一特色是。,这些口令都储藏处在cookie中未特征为类,你可以牧座上面的cookie列表向右转舵。这破旧的,客户端本子可以接近这些吸引人的年轻妇女,这是但愿你能让XSS成,你可以容许等等用户使充电的XSS病人用的装载,Cookie包含口令被盗,有大批的病人用的的手段去做。HttpOnly属性的短少或许是大意,但成绩的核依赖储藏处在cookie说得中肯口令会倾向于地因等等道路疏漏出去。

静止的一更根源的原文,为什么这些网站也将在这一疏失,不管他们是警惕他们的客户在其网站上的凭据。无论何时前述的网站的客户勾选了“记住我”效能并向网站上收回讯问时,当他们的用户名和口令由网站发送到邮筒,当他们经纪易趣网或网上岸。无论是口令明文,或许你可以因客户端本子,口令在浏览图书报刊者无不躺在一丝不挂。很多人都对口令重用的实习(普通),但是,在起作用的那些的爱死熊用户的责备,朕是开发者。我不得无可奉告,朕应对用户凭据的危及时,警惕办法履行的必要性要极大于S。。

依据,适宜识透在起作用的编号使被安排好“记住我”效能上的真正曲解,让朕看一眼最适度的做法。。

战利品是以实际检测为根底的。

榜样

保安的界混有任务的,有简言之你适宜很熟识,你不试着用那条公认的最棒的线吗?。这种语音在编密码和恒等批准中倾向于听到。,它也可以被申请表格到本文的题材,从更多的的谈论项主语。

在用Visual Studio 4体系的MVC 2012地皮中,你会牧座这事:

remember8

静止的其它版式的等等规范的骨架来达到预期的目的这一效能,但这更轻易作为引用。。当朕因提到前述的形式登录,并且不必需品“记住我”,上面的cookie已成批准,总算现场回复:

Set-Cookie:.ASPXAUTH=6891A5EAF17A9C35B51C4ED3C473FBA294187C97B758880F9A56E3D335E2F020B86A85E1D0074BDAB2E1C9DBE590AF67895C0F989BA137E292035A3093A702DEC9D0D8089E1D007089F75A77D1B2A79CAA800E8F62D3D807CBB86779DB52F012; path=/; HttpOnly

这是一复杂的恒等批准cookie,连同财富HTTP知识绑定。我的吸引人的年轻妇女是送的,无论何时的网站,知情这是我的,我曾经批准。朕可以看得更变清澈。,比方当朕用Chrome’s Cookies collection的时辰:

remember9

另一个,其次个cookie是保证预兆:预示或象征。,为了撤销CSRF袭击,与朕的恒等批准连箱的有关。。并且,如果有少许等等的吸引人的年轻妇女吗?。

现时,让朕勾选上“记住我”后来再次登录看一眼cookie的应答:

Set-Cookie:.ASPXAUTH=3A92DAC7EFF4EE5B2027A13DD8ABEA8254F0A16D8059FCAF60F5533F1B7D99462DDF57320D069A493481978750526DF952D5C9EA0371C84F5CF1BFC0CCA024C2052824D4BA09670A42B85AEC7FFCB4088FC744C6C0A22749F07AF6E65E674A4A; expires=Tue, 02-Jul-2013 00:27:05 GMT; path=/; HttpOnly

来吧,你牧座了吗?用铬来切段它:

remember10

朕现时有一病人用的期为48小时的吸引人的年轻妇女,假如因的惟一剩下的截止期限,当浏览图书报刊者合拢时,将被终止。让朕向外看看一眼。。

找到恒等批准cookie的工夫限度局限

果真,这是一复杂而略带荒唐的保证和解。,我甚至认为这不值当一写。,看一下喂:在这事窥测中,“记住我”效能可以复杂地归结为,它把持cookie的工夫限度局限和确定了一人能长罗。

在上面的窥测中,一人机对话cookie默许运用,或许更确切地说,一cookie,缺勤详述的的截止期限,因而当浏览图书报刊者合拢时它就过时了。。这是一种手段。,另一手段是直的移交事项品质保证期。,如果浏览图书报刊者继续运用cookie,用户将被不自觉动作脱掉。自然,还可以在侍者器上把持此行动。,你也可以做cookie识别工夫的加法运算,假如零碎正运用的侍者器应答工夫的加法运算。

佃户租种的土地cookie的病人用的批准,假定的的人会记忆。那要多长工夫正确?在上面的窥测中,默许值是2沓。,但对合法的用户显然是稍许地太随时会发生的。和脸谱网的cookie可以继续一年。继续工夫较短,这破旧的更少的风险,但更多的打扰人的,继续很长工夫,运用户更轻易加法运算潜在风险。。让朕更多的看一眼风险。

牧师使用识别现势

在被识别,你们的逆命题不会的被绑架。睡在铺上,这是自然的!但沉重地地凝视它,像在AFD网上面的窥测,Cookie将在6个月内期满。,同时,它缺勤一HTTP只用垂饰安装,完全相同的事物一来他们网站的XSS缺点可认为袭击者赡养半载的工夫去获取并运用用户的证实。完全相同的事物的机遇,假如截止期限是1个月,他们依然有某个坟墓的缺点,但这些袭击的时机真的被伤痕。

在另一方面,百得电网保持不变绝对短的七天工夫。。当他们打交道的日常的日记,仍有搭上有意思的事物减少。,但除非某人在七天前曾经用“记住我”登录了网站,默许词的搭配和引发其他事件的一件事缺点,另外,凭据将不会的走漏。。假如你想找个网站试试,甚至你登录的网站,也可以牧座工夫风险吸引人的年轻妇女。

依据,假如您短少警惕用户CR,则财富相互关系的批准cookie,这类财富保证必需品变紧密的姿态。。怨恨财富古典文学的的绑架危及依然在,不外,处理这些cookie成绩是不可磨灭的。。

归根到底,这是一种取舍,必要思索的代劳人,如知识费用,在,对用户的适当的和网站保证词的搭配的负面冲击力。比如,脸谱网也有某个非常可利用性的交际用户知识,并且用户非常盼望毫不延宕地应答变速器。,在本身的存款上大批授予的保证性。和频率转换器网,同时佃户租种的土地用户的特异的恒等材料和财务知识,赡养用户必需品的保证批准侍者,您可以牧座用户也与保证意识关系。。他们掌握完整不相同的风险,这两个网站适宜完整不相同的吸引人的年轻妇女金工夫。

激化

或许稍微同窗认为COOKIE无解,无不有更合适的的保证处理方案。,又要开支伤亡人数,保证安宁编号工夫你祝福废、硬币、适当的性,但总某人告知你,你的错误了。!朕在运用COOKIE的某个可能性的加固手段看。

在起作用的一牧师病人用的的COOKIE,成绩依赖他们必要病人用的地佃户租种的土地用户恒等的批准和面临如CSRF或clickjacking等袭击风险。自然,在起作用的牧师的cookie来说,有很多风险必要运用。,但这未必冲击力环绕防守手段的议论。。一件事是,当一特意赡养病人用的的恒等批准cookie,它还可以重行翻开另一恒等批准人机对话作为现场回复。。不管开始的运动会将很快期满,但转折点是要重行启动新会土语。,它会因用户勾选了“记住我”并再次登录而停止另一个的批准。

一种批准方法包含使用用户的IP地址/用户代劳/等等明显特色来限度局限“记住我”的cookie。这为撤销cookie绑架赡养了某个痊愈。。自然,应在法度运用的机遇下作出这些修正。。格外在蒙混电网中,接近具有DIF的网站未必特殊的。。您的ISP未必无不赡养动态IP地址。。按着用户代劳,浏览图书报刊者有多样化,如Chrome和Firefox差一点每隔有朝一日使更新一次。。又,除非你刻苦地去决定或选定某个优质的代劳商。,另外,运用代劳将是一使遭受危险的做法。

静止的一种程序性手段。,执意佃户租种的土地“记住我”cookie和恒等批准cookie的离去,并运用前者批准用户的恒等。,又加法运算某个额定的限度局限。实际机遇是,恒等的不自觉动作识别审核,将依照保证形成。松懈办法的总算是,,它会不自觉动作重行批准在前方。,再次向用户讯问凭据。这挑剔开创,你可能性会冲突的这种效能,当你在做网上岸。在喂,朕说识别用户有很多风险。,因绑架和欺侮是倾向于的。

按着等等的加固手段,朕可以在“记住我”cookie被运用后停止整修。它也使侍者器端病人用的。,你必要一特异的和恒久不变的状态或性质cookie值,比如,在一cookie和知识库当中的随机数字。这有助于确保Cookie不会的被袭击者获益在以下。在冠词中,作者对这种榜样松懈手段停止了阐述。。又,你必要开支某个额定的任务,并在一种以任何方式上给不变的的用户取来打扰人的(比如用户无法共轭多个电脑运用并“记住”本身的凭据)。

惟一剩下的值当一提的是,在完全相同的事物存款凑合着活下去道义下,它必要朕去关怀并且和“记住我”效能关系。比如,容许单一用户的多特异的机对话同时批准?或许用户一旦更改了口令要不要将人机对话断开?凑合着活下去员可不可以完毕批准人机对话?涌现了各种各样的成绩,但在喂我要议论的是编号回复。

什么时辰不该用“记住我”效能?(连同某个更替效能)

有时辰,容许因恒等批准的用户保藏恒等批准STA是毫无意思的。。比如,岸,在风尚运用,当你想保藏你的电脑,你要不自觉动作登录,分开后,会有一隐姓埋名浏览图书报刊者。,不要告知我是什么风险。

但竟,仍有某个中锋立脚点可以采用以下手段:

remember11

这事着陆架缺勤似如此的弱。,当你用“记住我”登录后来,回拜时,网站上的人机对话过时,你会牧座:

remember12

这挑剔用户的据以取名。,因它曾经在cookie中储藏处了学期,静止的某个等等的知识。。承认地说,如此的做缺勤意思,因要记住用户名未必难!

又,这挑剔整个或挑剔整个都是正量的。,这是一中锋的灰色颜料用带绑扎。比如,假定在因“记住我”效能回复人机对话时,重行识别是在主稳定的进程在前方使开始的。。或许这是一双赢的手段。。

总结

这去甲破例。,总有某个效能如同是个好主意,并且通常倾向于做到。,反正在项主语的最好地工夫里。坦白来讲,第一窥测是依然困惑,格外当你思索到这合理的用来延年益寿吸引人的年轻妇女工夫。

另一个,冠词的焦点未必禁闭腐烂“记住我”效能的保证和解,您可能性可以处理本身的cookie凭据成绩。,但组合艺术品起ELMAH和短少HTTP only属性连同XSS缺点的机遇思索,谨防待命士兵的行动,(ACT)不管看来好像没有害处的消遣的,它可能性创造坟墓的保证。

发表评论

电子邮件地址不会被公开。 必填项已用*标注