Tag:hsts

Tag (hsts)'s result:

绕过HSTS抓包方法整理

0x00 HSTS概述 HSTS的作用是强制客户端(如浏览器)使用HTTPS与服务器创建连接。 只要浏览器曾经与服务器创建过一次安全连接,之后浏览器会强制使用HTTPS,即使链接被换成了HTTP。 另外,如果中间人使用自己的自签名证书来进行攻击,浏览器会给出警告,但是许多用户会忽略警告。HSTS解决了这一问题,一旦服务器发送了HSTS字段,用户将不再允许忽略警告。 HSTS存在一个比较薄弱的环节,那就是浏览器没有当前网站的HSTS信息的时候,或者第一次访问网站的时候,依然需要一次明文的HTTP请求和重定向才能切换到HTTPS,以及刷新HSTS信息。而就是这么一瞬间却给攻击者留下了可乘之机,使得他们可以把这一次的HTTP请求劫持下来,继续中间人攻击。 这是因为首次访问时,浏览器还未收到HSTS,所以仍有可能通过明文HTTP来访问。解决这个不足目前有两种方案,一是浏览器预置HSTS域名列表(Preload List),Google Chrome、Firefox、Internet Explorer和Spartan实现了这一方案。二是将HSTS信息加入到域名系统记录中。但这需要保证DNS的安全性,也就是需要部署域名系统安全扩展。截至2014年这一方案没有大规模部署。 参考https://kuaibao.qq.com/s/20180422G1BB7200?refer=spider   特征如Strict-Transport-Security: max-age=31536000; includeSubDomains   0x01 绕过方法 1.chrome://net-internals/#hsts Delete query   2.右键图标,选择属性,找到”目标”文本框,里面的内容是你的Chrome程序路径,类似 C:UsersAdministratorAppDataLocalGoogleChromeApplicationchrome.exe 在这段文本的后面输入一个空格,然后输入––ignore-certificate-errors   3.使用老版本的Firefox 3.6.25 ,老版本浏览器不识别Strict-Transport-Security字段,再导入burpsuite的根证书到浏览器即可。   4.安装证书作为受信任的根CA,在这种情况下是Burp生成的证书   5.第一步在firefox地址栏输入about:config,选‘i accept the risk’,进入后任意位置右键,选择‘new’,选择‘interger’,输入‘test.currentTimeOffsetSeconds’(无引号),选确定,在输入‘11491200’   6.mitmf   0x02 参考资料 https://kuaibao.qq.com/s/20180422G1BB7200?refer=spider https://www.jianshu.com/p/caa80c7ad45c http://www.wisedream.net/2017/03/17/cryption/crack-https/