Web登录安全隐患分析

admin 2021年1月25日10:00:50评论156 views字数 2034阅读6分46秒阅读模式

Web登录安全隐患分析

这篇贴主要是分析了支付宝、亚马逊等登陆设计。指出登陆信息被截获并且用于重放攻击可能性,指出登陆设计存在改进空间。附近中是POC(Proof of Concept)程序,在浏览器内部抓取POST登陆信息,保存在c:hijackhttp.txt中,亚马逊,支付宝的登陆信息可以明文重现。


正文

OWASP对web登录设计给出的建议包括密码要具有一定的长度和复杂度,正确的登录提示,始终使用TLS加密通道传输密码防止密码被截获等。参考:

https://www.owasp.org/index.php/Authentication_Cheat_Sheet


但是仅仅是加密通道传输登陆信息仿佛还是不够,因为即使是通过TLS加密的传输的登录信息也可能被截获。

登陆case分析:

首选看几个站点的登陆设计。

1. 亚马逊

亚马逊将用户登陆信息用户名和密码使用https传输。这里从截获的数据中可以清楚的看到登录email和相应的password。
Web登录安全隐患分析

2.  某论坛http://bbs.xxx.com/login.php?do=login

论坛使用http明文传输登录信息,password做了一次MD5运算。由于MD5是不可逆的,理论上无法推出password。但对于黑客来说其实无需知道password具体是多少,用password的MD5值构造一个数据包模拟发送给服务器,同样可以收到有效的cookie信息成功登陆。这就是所谓的重放攻击。下图是登陆数据包,202cb962ac59075b964b07152d234b70是密码123的MD5值。
Web登录安全隐患分析

3.淘宝/支付宝

淘宝,支付宝的非控件登陆和亚马逊的相同。直接将用户名和密码等登陆信息使用https传输。使用控件登陆时password进行了加密处理,但是经过分析得知控件加密时密钥是固定,只要password相同,加密后的密文永远不变。这意味着即使password被加密了,也不能抵御重放攻击。经过试验利用抓取的password密文构造数据包模拟登陆,确实可以登陆成功。
Web登录安全隐患分析

以上web登陆设计主要问题在于不能抵御重放攻击,一旦登陆信息被截取就可以被利用来登陆。像支付宝一控件登陆一样的,密钥永远不变的加密没任何意义。支付宝登陆密码加密,亚马逊登陆密码明文,他们的安全性相同,攻击利用难度相似。
然而遗憾的是登陆数据包是可以被截获的,即便使用了https加密通道。

截获数据包的方法

方法一:架设代理服务器比如Burp Proxy,然后设置浏览器使用代理服务器。这样浏览器所有的http以及https数据都会被Burp Proxy代理截获,并且可以查看https解密后的明文数据。当https数据被截获后,浏览器会验证主机的证书,证书验证不通过时浏览器会发出访问安全警告阻止用户继续访问。所以这种方法通常用于http和https数据包分析。Firefox的代理设置:

Web登录安全隐患分析


方法二:注入代码到浏览器进程中,从浏览器内部截取明文登陆数据。Firefox使用函数Pr_write()发送http数据,IE使用函数HttpSendRequest()发送http数据。只有hook相关函数就可以截取到http/https的明文数据。


我以Firefox为例做了实验,可以抓取网站的登陆信息。实验工具在附件中,有兴趣的可以自己测试。
Hook Pr_write。虽然网上有很多hook库,但都不够稳定。微软detours库是最好用最稳定的hook库。Hook Pr_write时不能简单替换前5个字节,因为它前2条指令并不是5个字节。Detours会反编译相关指令然后根据需要替换不通长度字节的指令,稳定性好。


中国大部分电脑上都装有360杀毒,而貌似360对各个代码注入路径都防的很死。进程注入不了,就改注入文件。修改firefox.exe或者相关DLL的PE导入表,从而加载hook的DLL. 附件中setdll.exe是命令行工具可以将指定DLL加入到PE文件导入表中。

改进方法:

一家韩国游戏公司的登陆设计可以用来参考。登陆地址

https://nid.naver.com/nidlogin.login

他的登陆过程分为两步, 首先从

www.nid.naver.com/login/ext/keys.nhn

获取公钥加密key,然后利用上一步得到的key加密用户名和密码,提交加密后的用户名和密码到

www.nid.naver.com/nidlogin.login

。由此得到的登陆信息是动态变化的,不可重放。



往期精彩


登陆页面的检测及渗透

渗透实战篇(一)

渗透测试信息收集的方法

常见Web中间件漏洞利用及修复方法

内网渗透 | 流量转发场景测试

Waf从入门到Bypass

实战渗透-看我如何拿下学校的大屏幕

技术篇:bulldog水平垂直越权+命令执行+提权

渗透工具实战技巧大合集 | 先收藏点赞再转发一气呵成


Web登录安全隐患分析

感兴趣的可以点个关注!!!

Web登录安全隐患分析

关注「安全先师」
把握前沿安全脉搏



本文始发于微信公众号(安全先师):Web登录安全隐患分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年1月25日10:00:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Web登录安全隐患分析http://cn-sec.com/archives/253901.html

发表评论

匿名网友 填写信息