走近科学:中国移动(10086)钓鱼手机APP分析

  • A+
所属分类:移动安全

0×01.钓鱼短信

前几天仿冒中国电信的钓鱼程序,似乎风风火火,今天给大家分析一个中国移动的钓鱼程序。

首先通过冒充10086发送短信,引导进入网站,进去后除领取选项别的都不能点,然后引导输入关键信息,

页面为用积分换取RMB的信息

走近科学:中国移动(10086)钓鱼手机APP分析

走近科学:中国移动(10086)钓鱼手机APP分析

(这张图片来自吾爱破解)

此处选择银行卡,但可以填入任何错误的信息,当然很有可能部分用户会填写真正的信息。

  走近科学:中国移动(10086)钓鱼手机APP分析

填写完储蓄卡信息后,就会让你下载apk,进行激活。

走近科学:中国移动(10086)钓鱼手机APP分析

0×02:安装APK

在应用中,无法删除此软件

走近科学:中国移动(10086)钓鱼手机APP分析

在设备管理器里,可以看到软件已经激活了。

走近科学:中国移动(10086)钓鱼手机APP分析

0×03:APP分析

1.首先看AndroidManifest.xml中定义了两个receive:

1、第一个用于监听“android.app.action.DEVICE_ADMIN_ENABLED”,即监听设备管理器激活状况
2、第二个“android.provider.Telephony.SMS_RECEIVED”,即监听收到的短信。

走近科学:中国移动(10086)钓鱼手机APP分析

整个APK的结构比较简单,只有两个receive的程序

走近科学:中国移动(10086)钓鱼手机APP分析

由于代码不能用jd-gui打开,只能看smali了,MainActivity中没有太多内容,主要定义了手机号。

走近科学:中国移动(10086)钓鱼手机APP分析

2. 监听“android.app.action.DEVICE_ADMIN_ENABLED”的是FssAdmin.smali,其中存在两个函数onDisabled和onEnabled

onDisabled函数的作用是“当从设备管理器里面把单选框勾除时,发送短信提示:软件被取消激活;服务终止!”

走近科学:中国移动(10086)钓鱼手机APP分析

onEnabled函数的作用是“当从设备管理器里面勾上单选框时,短信提示:

软件打开并激活成功;服务开始!到期时间2015-10-1 00:00:00”

走近科学:中国移动(10086)钓鱼手机APP分析

3.监听“android.provider.Telephony.SMS_RECEIVED”的代码是SmsReceive.smali,

关键代码和注解如下

走近科学:中国移动(10086)钓鱼手机APP分析

走近科学:中国移动(10086)钓鱼手机APP分析

走近科学:中国移动(10086)钓鱼手机APP分析

当然还使用了abortBroadcast()来阻断手机接收短信,因为在AndroidManifes.xml中定义了程序的优先级是1000,所以终止后,手机是不会收到短信的。

走近科学:中国移动(10086)钓鱼手机APP分析

最终就是将短信发送出去了

走近科学:中国移动(10086)钓鱼手机APP分析

现在,我们梳理下次钓鱼程序的流程:

发送钓鱼信息诱使手机用户访问钓鱼网站--->部分用户贪便宜,填写了真正的银行卡信息--->APK劫持发送到用户手机上的短信--->黑客此时已经拥有了账号、密码和手机验证码,从而顺利登录网站。

总结:地球太黑暗,到处都是黑客。大家保重!

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: