钓鱼页面之无视浏览器URL栏

技术分析

网络安全形势日趋严峻,层出不穷的网络钓鱼攻击可以托管各种恶意软件和勒索软件攻击,更糟糕的是这些攻击正在呈现持续上升的趋势。众多提及如何防范钓鱼网站的文章都会建议用户检查URL地址栏,确认是否对应正确的网站地址,相信大家平常对这一点记忆深刻,并将其作为第一项确认是否可信的内容。今天的原创技术分享将讲述钓鱼网站如何拥有“可信的url”。

如何构造可信的网站url

钓鱼页面往往使用近似域名,如:g00gle.com、google-
service.com、google.xyz或者使用超链接或者短链接进行伪装,如:http://t.cn/h93k,但是稍加培训的员工能轻易识别这种钓鱼网站,那么攻击者会利用哪些手法去呈现真实的网站url呢?

域名劫持(Domain Takeover)

我们知道域名解析是由DNS协议完成的,包含了多种记录类型,比如其中的A (Address)
记录是用来指定主机名(或域名)对应的IP地址记录;NS记录,解析服务器记录,用来表明由哪台服务器对该域名进行解析;而CNAME记录通常也叫别名记录,是一种将一个域名映射到另一个域名的记录。攻击者会采用各种社工欺骗的手法、或者利用受害者未及时修改的cname记录,达到控制域名或者相关子域名的效果。

标签劫持(Tabnabbing)

标签钓鱼是基于web的客户端攻击。这种攻击利用的是网站页面跳转的正常功能和用户对于标签页的疏忽。

攻击展示

借用github公开代码 https://github.com/securelayer7/Tabnabbing

1. 首先,攻击者构造受害者感兴趣的网站内容,并诱导其访问其它网站(如:诱导用户点击分享按钮)。

1628500486_6110f2064e27a256dfbd2.png!small?1628500486352

2. 受害者点击分享按钮后,页面将会在新的标签页显示正常的网页,此时,受害者看到的url栏为正常的官方域名,并坚信这是官方网站。

1628500506_6110f21a83bdd88db6c00.png!small?1628500506673

3. 但是当受害者在这个页面上停留几秒,或者浏览新标签,此网站页面将会跳转到钓鱼网站,受害者稍不注意就会毫不犹豫在一模一样的钓鱼页面输入账号密码。

1628500525_6110f22dc72a2b9a0d60d.png!small?1628500525893

OAUTH钓鱼

OAUTH(Open Authorization)协议为用户资源的授权提供了一个安全的、开放而又简易的标准。互联网很多服务如Open
API,很多大公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服务,这些都足以说明OAUTH标准逐渐成为开放资源授权的标准。OAUTH授权有如下几个阶段,如图

1628500556_6110f24cca43f11c43422.png!small?1628500556951

同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务。"钓鱼页面"为官方授权页面,攻击者无需用户伪造网站url,而是通过官方的认证服务索取受害者的账号控制权限。

攻击者注册合法的第三方OAUTH服务器,通过发送正常的授权url,诱导受害者点击允许。如图,为微软账号和gmail的OAUTH的授权页面,受害者点击允许后,攻击者会获得授权码,进而接管账户权限。

1628500579_6110f2631d1b5865449b1.png!small?1628500580524

1628500609_6110f2814caa8e0561d88.png!small?1628500609770

滚动钓鱼(The inception bar)

什么是滚动钓鱼

该方法利用用户在使用移动版本chrome浏览器时,页面向下滚动自动隐藏的特性进行url栏欺骗。开发人员 Jim Fisher
在其个人博客进行实验,展示了它的工作方式。当页面向下滚动时,浏览器会隐藏 URL 栏,为网页腾出更多空间。正因如此,网络钓鱼站点得以显示自己的虚假 URL
栏。当页面向上滚动时,Chrome 会重新显示网址栏。但作者通过“滚动监狱”的方式欺骗chrome,并且让用户误会以为页面在向上滚动。

这里,假URL栏使用了id为fakeurlbar的div标签,并将CSS设定为position: fixed,将其固定在最上方。

1628500636_6110f29cb295a7493c4a7.png!small?1628500636830

然后,作者在body中制作了一个div标签,将其设定为overflow:
scroll,并往里面放一个高为1000px的填充元素,结合js让受害者永远在div里面,而不可能真的向上滑动。

1628500652_6110f2ac5e6e2026d773d.png!small?1628500652800

演示

https://d33wubrfki0l68.cloudfront.net/783bd862c3df19b6fb4eac0b4f687d598c957891/a3915/assets/2019-04-27/demo.webm外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

全屏api钓鱼

什么是全屏api

FullScreen API 是一个html5 API,简单而又强大。FullScreen
让我们可以通过编程的方式来向用户请求全屏显示,如果交互完成,随时可以退出全屏状态。

1628500772_6110f32443c2e40ffa619.png!small?1628500772396

重点是,全屏后的页面可以隐藏原本的浏览器url栏,当攻击者欺骗目标点击全屏按钮后,攻击者可以显示其伪造的url栏以及任意的url地址。

1628500786_6110f332af1c1156cd3fa.png!small?1628500786888

攻击场景

1. 攻击者伪造网站内容,诱导受害者点击伪造的全屏按钮。

1628500809_6110f349eb4a1fb06ceb3.png!small?1628500810053

2. 受害者点击 “access to your office365”,则全屏显示伪造好的浏览器url栏和钓鱼页面

1628500826_6110f35aed56524f5d5a0.png!small?1628500827831

3. js判断受害者的浏览器,显示对应的浏览器url栏

(浏览器为firefox时,显示如图)

1628500849_6110f371390093cbccbb1.png!small?1628500849978

(移动端,显示如图)

1628500863_6110f37f9321f22916cd9.png!small?1628500863807

4. 受害者键入凭据后,账号被接管。

防范

1.
当网站存在漏洞,如:xss、链接跳转等漏洞,也能被攻击者利用进行钓鱼攻击,而无需伪造浏览器url,用户在判断钓鱼网站时,不能寄希望于网站链接,应该更加注重网址来源是否可信。

2. 建议自行输入网址打开需要输入凭据或者下载软件的网站,绝对不要将凭据或私钥输入通过点击链接到达的网站中。

总结

本文列举了几种无视浏览器url栏的钓鱼攻击手法,攻击效果取决于实际构造的利用场景。希望对蓝军技术人员有所启发。

网址打开需要输入凭据或者下载软件的网站,绝对不要将凭据或私钥输入通过点击链接到达的网站中。

总结

本文列举了几种无视浏览器url栏的钓鱼攻击手法,攻击效果取决于实际构造的利用场景。希望对蓝军技术人员有所启发。

学习网络安全技术的方法无非三种:

第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。

第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

第三种就是去找培训。

image.png

接下来,我会教你零基础入门快速入门上手网络安全。

网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。

第一阶段:基础准备 4周~6周

这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
image.png

第二阶段:web渗透

学习基础 时间:1周 ~ 2周:

① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
image.png

配置渗透环境 时间:3周 ~ 4周:

① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。

渗透实战操作 时间:约6周:

① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
image.png
以上就是入门阶段

第三阶段:进阶

已经入门并且找到工作之后又该怎么进阶?详情看下图
image.png

给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值