一枚Android 短信小偷 病毒的分析

一、样本简介

样本来自于吾爱破解论坛链接地址为http://www.52pojie.cn/thread-410238-1-1.html,样本不是很复杂有空就分析了一下。Android病毒样本还是很有意思的,有需要分析的样本发到论坛分析分析。

 

二、样本信息

文件名称:10086.apk 

文件大小:32117 byte

文件类型:application/jar

病毒名称:Android.SmsThief.BS

MD5:c2cd6abcb62a8df958049acffa204392

SHA1:de9bdbf724e6adf9bfe1bed7047b176851b5ae74




三、样本病毒行为分析

0x1. 静态注册短信拦截广播、开机启动广播、唤醒手机等广播,对除Nexus之外的机型进行短信的拦截,将用户手机上收的短信的信息和短信发送人等数据发送到病毒作者的指定服务器网址"http://wap.dzf10086.com/kk/ch.php"和指定手机号13066310152上。




0x2.拦截除病毒作者手机号码13066310152之外所有发送到用户手机上的短信,并将用户手机上的短信的内容和短信发送人等信息,通过网络提交到病毒作者的服务器"http://wap.dzf10086.com/kk/ch.php"上并通过短信的方式发送到病毒作者的指定手机号13066310152上,然后查询用户的手机短信箱"content://sms/inbox"将用户手机上收到别人发送来的短信的记录删除,或者开启病毒服务。





0x3.这里需要说明一下,病毒作者接受短信的手机号使用AES算法进行了加密,解密之后可以得到病毒作者的手机号为13066310152






解密病毒作者接受短信的手机号的代码:

import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;import javax.crypto.BadPaddingException;
import javax.crypto.Cipher;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.SecretKeySpec;public class AesDecryptString {public static void main(String[] args) {// AES算法解密后的字符串--病毒作者的手机号String strAesDecryptString = GetAesDecryptString("37349EC2F427A1AF812DA757988CB9DE",   "AE920882F4F5818501AB6256F91691D5");//输出AES解密的字符串System.out.println("The PhoneNumber is :"+strAesDecryptString);  //病毒作者的手机号码 - 13066310152}//解密AES算法加密的字符串public static String GetAesDecryptString(String content, String key) {try {Cipher Cipher = javax.crypto.Cipher.getInstance("AES");Cipher.init(2, new SecretKeySpec(parseHexStr2Byte(key), "AES"));String strDecrypt = new String(Cipher.doFinal(parseHexStr2Byte(content)));return strDecrypt;}catch(BadPaddingException e) {e.printStackTrace();}catch(IllegalBlockSizeException v1_1) {v1_1.printStackTrace();}catch(NoSuchPaddingException v1_2) {v1_2.printStackTrace();}catch(NoSuchAlgorithmException v1_3) {v1_3.printStackTrace();}catch(InvalidKeyException v1_4) {v1_4.printStackTrace();}return null;}//字符串转换public static byte[] parseHexStr2Byte(String hexStr) {byte[] byteArry;int v6 = 16;if(hexStr.length() < 1) {byteArry = null;}else {byteArry = new byte[hexStr.length() / 2];int v1;for(v1 = 0; v1 < hexStr.length() / 2; ++v1) {byteArry[v1] = ((byte)(Integer.parseInt(hexStr.substring(v1 * 2, v1 * 2 + 1), v6) * 16 + Integer.parseInt(hexStr.substring(v1 * 2 + 1, v1 * 2 + 2), v6)));}}return byteArry;}
}

0x4.下面是病毒apk程序将用户的短信拦截提交到病毒作者的服务器网址"http://wap.dzf10086.com/kk/ch.php"上以及发送到病毒作者的手机"13066310152"上。






0x5.动态注册短信广播"android.provider.Telephony.SMS_RECEIVED",设置短信广播的高优先级,对用户的短信进行拦截,然后通过网络和短信发送给病毒作者。







0x6.监控用户收件箱的变化—拦截用户手机上的短信以后发送到病毒作者的手机上然后删除拦截到的短信在用户短信收件箱的记录




0x7.静态注册"android.app.action.DEVICE_ADMIN_ENABLED" 广播,一旦用户误操作点击“激活”以后病毒apk程序就会被锁定,不能用户卸载,并且病毒apk程序被锁定的信息还会以提示“已激活”发送到病毒作者的服务器和手机上。








0x8. 病毒apk程序运行时,会开启病毒服务(上面已经分析)拦截用户的短信发送给病毒的作者,隐藏当前apk程序的图标,诱导用户点击“激活”锁定设备,导致该apk不能被用户卸载。






0x9.判断用户的手机有没有被root。






本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/70834.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

编程确定小偷

已知A、B、C、D四个人中有一人是小偷&#xff0c;并且&#xff0c;这四个人中每人要么说真话&#xff0c;要么说假话。在审问过程中&#xff0c;这四个人分别回答如下&#xff1a; A说&#xff1a;B没有偷&#xff0c;是D偷的。 B说&#xff1a;我没有偷&#xff0c;是C偷的。 …

【笔记】根据公交卡出行记录识别小偷

案例来源&#xff1a;Bowen Du 案例地址&#xff1a;http://www.kdd.org/kdd2016/papers/files/adf0629-duA.pdf &#xff08;以下为案例的简要概述&#xff0c;便于之后能快速检索到相关内容。部分文字与图片可能直接来自原文&#xff0c;如有侵权请告知&#xff0c;谢谢&…

小偷-守卫博弈:“诡异”的纳什均衡

目录 1.什么是小偷-守卫博弈&#xff1f; 2.用数学刻画博弈信息 3.我是小偷&#xff01; 4.我是守卫&#xff01; 5.尬住了。。。 6.一个感性的认识&#xff08;给参数赋些值&#xff09; 7.纯策略&#xff1f;混合策略&#xff01; 8.混合策略纳什均衡求解 9.结论&am…

C++实现U盘小偷(超详细版)

文章目录 前言一、程序演示二、项目下载三、源代码四、代码解析1.main函数2.RegisterGlobalKey与UnRegistreGlobalKey函数3.DealMsg函数4.FindDriver函数5.ThrToSearch线程搜索函数6.ThrToCopy线程拷贝函数7.FindAllFile函数 前言 对于C/C学习感兴趣的小伙伴&#xff0c;可以看…

一个简单的动态规划问题---小偷案例

Java算法训练—小偷案例 文章目录 Java算法训练---小偷案例 前言一、案例描述二、问题分析三、代码示例总结 前言 动态规划是一种算法技巧&#xff0c;先举一个例子&#xff1a;   如何让一个四岁的小孩理解动态规划的思路&#xff1f;国外友人有这样一个例子&#xff1a;列…

Python编程判断谁是小偷

谁是小偷 ‎小区发生盗窃案&#xff0c;有四个人嫌疑最大&#xff0c;警察找来讯问。‌ ‎A说&#xff1a;不是我。‌ ‎B说&#xff1a;是C。‌ ‎C说&#xff1a;是D。‌ ‎D说&#xff1a;他冤枉人。‌ ‎四人中有一人说了假话&#xff0c;编程分析谁是小偷。 此题主要…

焦耳小偷工作原理分析

当开关闭合&#xff0c;Q1获得基极电流导通&#xff0c;右侧线圈流过电流&#xff0c;由于同名端的关系其在左侧线圈产生的互感电动势上负下正&#xff0c;正反馈使得Q1迅速饱和导通。右侧电流处于饱和状态&#xff0c;感应电动势消失&#xff0c;互感电动势也消失。互感电动势…

c语言四个人中有一个人是小偷,、甲,乙,丙,丁四个人中有一个人是小偷,请根据四个人的谈话判断谁是小偷?已知四个人中有一个人说假话...

、甲,乙,丙,丁四个人中有一个人是小偷,请根据四个人的谈话判断谁是小偷?已知四个人中有一个人说假话 关注:65 答案:5 mip版 解决时间 2021-01-31 07:52 提问者酒瘾渼亽兒 2021-01-30 16:58 、甲,乙,丙,丁四个人中有一个人是小偷,请根据四个人的谈话判断谁是小偷?已…

推理题-谁是小偷?

警察抓住了A、B、C、D四名盗窃嫌疑犯&#xff0c;其中只有一人是小偷。在审问时&#xff0c; A说&#xff1a;“我不是小偷”&#xff1b; B说&#xff1a;“C是小偷”&#xff1b; C说&#xff1a;“小偷肯定是D”&#xff1b; D说&#xff1a;“C在冤枉好人”。 现在已经…

饥荒联机版专用服务器怎么修改小偷包,饥荒联机小偷背包代码 | 手游网游页游攻略大全...

发布时间&#xff1a;2016-08-14 饥荒海难小偷背包获得方法?饥荒失落之船刷小偷背包图文教程,饥荒海难里的小偷背包是格子最多的背包了,相信很多玩家都想拥有,但是小偷背包却不是那么好拿的,今天小编就为大家带来一套饥荒海难刷小偷背包图文教程,希望对大家有所帮助 ... 标签&…

【Multisim仿真】焦耳小偷电路仿真实验

【Multisim仿真】焦耳小偷电路仿真实验 Multisim仿真 本实验仿真平台&#xff1a;Multisim14 基本电路 仿真前的相关设置选项 变压器参数设置主副线圈绕组比例调整比例&#xff1a;10:10 铁芯设置选项&#xff1a; ###对变压器输出绕组端的电压进行瞬态电压进行捕捉 设置…

深度优先遍历算法-01小偷偷东西问题

小偷偷东西问题 前言 深度优先遍历是经典的图论算法&#xff0c;深度优先遍历算法的搜索逻辑和它的名字一样&#xff0c;只要有可能&#xff0c;就尽量深入搜索&#xff0c;直到找到答案&#xff0c;或者尝试了所有可能后确定没有解。简单来说&#xff0c;深度优先遍历就是按照…

百家云在人工智能领域再有新动作,发布应用于多个行业的AIGC解决方案

4月17日消息&#xff0c;音视频SaaS上市公司百家云&#xff08;股票代码&#xff1a;RTC&#xff09;今日宣布&#xff0c;公司将正式推出应用于多个垂直行业及场景的人工智能生成内容及视频解决方案。 百家云总裁马义表示&#xff0c;此次发布的解决方案&#xff0c;将在极短…

可以远程连接服务器,但是无法ping通问题

右键电脑&#xff0c;找到管理 在服务器管理里找到配置项 在配置项里找到 高级安全windows防火墙 在高级安全windows防火墙里&#xff0c;找到&#xff0c;按如下图示&#xff0c;找到“文件和打印机共享&#xff08;回显请求-ICMPv4-in&#xff09;双击。此时图片状态默…

解决连接vcenter (客户端无法向服务器发送完整的请求。(基础连接已经关闭:发送时发生错误。)) 问题...

vCenter版本 5.5 vCenter 安装在server 2008 r2上面&#xff0c;今天补丁一打&#xff0c;重启后就无法连接vcenter了&#xff0c;起初以为是补丁的问题导致vcenter工作不正常&#xff0c;卸载了补丁依旧无法正常连接。 报未知连接错误&#xff0c;&#xff08;客户端无法向服务…

微信提示已连接到服务器失败,微信提示无法连接到服务器如何解决

近来发现不少网友对于微信提示无法连接到服务器如何解决这方面的讯息关注的热度颇高的&#xff0c;那么小编今天就针对此微信提示无法连接到服务器如何解决收集了一些相关的讯息 希望小编收集的这些讯息 能帮助到你。 1、更换接入点,重新连接网络&#xff1a; 2、单击手机上的M…

新手安装postgreSQL后无法连接服务器

2019独角兽企业重金招聘Python工程师标准>>> 系统&#xff1a;Linux Deepin 15.1 postgreSQL&#xff1a;9.5.1 pgAdmin Ⅲ&#xff1a;1.22.0 使用新立得安装postgreSQL和pgAdminⅢ之后&#xff0c;打开pgAdmin需新建服务器。 打开新建服务器窗口后&#xff0c;名称…

用云服务器架设好服务器显示无法连接

各位论坛的前辈大家好&#xff0c;我是刚进入这个圈子的小白&#xff0c;曾经这个问题困扰我两天时间&#xff0c;找了好多教程&#xff0c;都不是我想要的&#xff0c;我一度以为是我传奇版本的问题&#xff0c;所以后面解决掉之后&#xff0c;出个帖子给大家分享下&#xff1…

使用telnet命令,报错:无法打开主机的连接在端口23连接失败

1.页面载入出错时&#xff0c;查找问题的方法 当访问某个页面时&#xff0c;出现如下情况&#xff1a; 遇到以上情况&#xff0c;可以先通过以下的方式确认网络是否连接上 &#xff08;1&#xff09;打开cmd&#xff0c;输入命令&#xff1a;ping <ip> &#xff08;2&…

标题: 连接到服务器------------------------------无法连接到 (local)。------------------------------其他信息:在与

标题: 连接到服务器------------------------------无法连接到 (local)。------------------------------其他信息:在与 在使用SQL Server的时候无法连接的错误&#xff0c;可以参照下图 我这个问题的解决方法就是将服务器名称改一下&#xff0c;删掉原来的服务器名称栏的东西…