分析思路

  • 关注点1:AndroidManifest.xml是Android应用的入口文件,包含有APP服务的权限、广播和启动位置。

  • 关注点2:涉及到修改系统的函数,setWifiEnabled()、InstallPackage()。

1.样本概况

在Android 7.0的系统里捕获到这个APK包。但不确定是否是病毒。通过Android模拟器安装这个APK,确认这个APK只适用于android 4.5以上的系统才可运行。然后通过静态反编译技术对APK分析发现该APP可以变更手机Wifi状态和安装APK包。

1.1 样本信息

病毒名称:ManagedProvisioning.apk
MD5:7adda1698e55d0904c96cb7c1e2a9f38
版本信息:Ver:7.0(24) SDK:24 TargetSDK:24
病毒主要行为:变更WIFI状态,安装APK包

1.2 测试环境及工具

Android版本:Android 4.0、Android 4.5
分析工具:AndroidKiller、JEB

2.具体行为分析

2.1 主要行为


主要行为结构图

2.1.1 恶意程序对用户造成的危害

WifiInfo变更Wifi状态

代码中通过setWifiEnabled()函数修改Wifi状态


图1

InstallPackageTask安装APK包

代码中通过installPackage()函数修改安装本地的APK


图2

2.1.2 恶意程序在Androidmanifest.xml中注册的恶意组件

(1)权限相关()

// 允许应用程序安装android包
android.permission.INSTALL_PACKAGES

// 允许应用程序启用或停用其他应用程序组件
android.permission.CHANGE_COMPONENT_ENABLED_STATE

// 允许应用程序更改WIFI状态
android.permission.CHANGE_WIFI_STATE

// 允许应用程序将手机系统恢复为出厂设置
android.permission.MASTER_CLEAR

// 开机时自动启动
android.permission.RECEIVE_BOOT_COMPLETED

// 允许应用程序修改系统设置方面的数据
android.permission.WRITE_SETTINGS

// 允许应用程序修改系统的安全设置数据
android.permission.WRITE_SECURE_SETTINGS

(2)服务/广播

创建服务名为:

1)ProfileOwnerProvisioningService

2)DeviceOwnerProvisioningService

2.2 恶意代码分析

2.2.1 恶意程序的代码分析片段

AddWifiNetworkTask通过setWifiEnabled()函数变更Wifi状态


图1

WifiInfo通过setWifiEnabled()函数变更Wifi状态


图2

WifiInfo获取Wifi安全类型、Wifi密码


图3

InstallPackageTask通过InstallPackage()函数安装APK包

图4

DownloadPackageTask保存的下载路径为

/download_cache/managed_privisioning_downloaded_app_XXXX.apk

图5

3.总结

鉴于该APK有HUAWEI公司的签名,且功能用于设置Wifi状态与安装APK包,无法判断是否为恶意病毒。

对HUAWEI-ManagedProvisioning的一次不完整分析的更多相关文章

  1. CSDN泄漏数据完整分析

    CSDN泄漏数据完整分析 2011-12-22 08:59:26 53391 次阅读 0 条评论 感谢mayee的投递 昨天CSDN的用户数据库被人在网上公布.我下载分析了下里面的数据,得出了一些很有 ...

  2. Springboot学习05-自定义错误页面完整分析

    Springboot学习06-自定义错误页面完整分析 前言 接着上一篇博客,继续分析Springboot错误页面问题 正文 1-自定义浏览器错误页面(只要将自己的错误页面放在指定的路径下即可) 1-1 ...

  3. Xshell高级后门完整分析报告

    Xshell高级后门完整分析报告 from:https://security.tencent.com/index.php/blog/msg/120 1. 前言 近日,Xshell官方发布公告称其软件中 ...

  4. Python 国家地震台网中心地震数据集完整分析、pyecharts、plotly,分析强震次数、震级分布、震级震源关系、发生位置、发生时段、最大震级、平均震级

    注意,本篇内容根据我老师布置的数据分析作业展开.请勿抄袭,后果自负! 前情提要 编写这篇文章是为了记录自己是如何分析地震数据集,使用模块,克服一系列 \(bug\) 的过程.如果你是 \(python ...

  5. 【原创】有关Silverlight DataGrid双击事件的分析 完整分析 代码与示例

    公司项目用的silverlight,而且silverlight一些技术 资料比较少.所以分享出来 给大家参考参考. 有关Silverlight中DataGrid 双击事件 的代码 如下: 1. 前台x ...

  6. OpenLayers 项目完整分析——(二)源代码总体结构分析

    转自:http://www.cnblogs.com/lzlynn/archive/2008/07/29/1255848.html 二)源代码总体结构分析 通过前面的项目介绍,我们大概已经知道Openl ...

  7. 记录一下通过分析Tomcat内部jar包找出request.getReader()所用的字符编码在哪里设置和起效的完整分析流程

    前言: 之前写Java服务端处理POST请求时遇到了请求体转换成字符流所用编码来源的疑惑,在doPost方法里通过request.getReader()获取的BufferedReader对象内部的 R ...

  8. Xshell高级后门完整分析报告(ZT)

    1. 前言 近日,Xshell官方发布公告称其软件中存在后门.我们的实习生同学对该后门进行了详细的分析,确认这是一个具备恶意代码下载执行和数据回传等能力的高级木马. 后门代码存在于nssock2.dl ...

  9. 必应缤纷桌面的必应助手-软件分析和用户市场需求之-----二.体验部分 Ryan Mao (毛宇11061171) (完整版本请参考团队博客)

    <必应缤纷桌面的必应助手> 2.体验部分 Ryan Mao (毛宇11061171) (完整分析报告请参考团队博客http://www.cnblogs.com/Z-XML/) 我花了2天的 ...

随机推荐

  1. JavaScript 隐式类型转换

    JavaScript 隐式类型转换 原文:https://blog.csdn.net/itcast_cn/article/details/82887895 · 1.1 隐式转换介绍 · 1.2 隐式转 ...

  2. MT【59】一道迭代函数作图

    [Read a good book, that is conversation with many a noble man.]---勒内·笛卡尔(1596-1650) 解答: 评:也可以把f(f(x) ...

  3. 自学Zabbix8.1 Regular expressions 正则表达式

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix8.1 Regular expressions 正则表达式 1. 配置 点击Adm ...

  4. 【转】ls 命令的 20 个实用范例

    Linux中一个基本命令是ls.没有这个命令,我们会在浏览目录条目时会遇到困难.这个命令必须被每个学习Linux的人知道. ls是什么 ls命令用于列出文件和目录.默认上,他会列出当前目录的内容.带上 ...

  5. wildfly jobss 同时连接多个数据源 datasource xa-datasource

    由于需要从一个远程机器取数据.处理后保存到本地数据库处理.用 wildfly datasource 会报: [com.arjuna.ats.arjuna] (default task-6) ARJUN ...

  6. c输出格式

    #include <stdio.h> #include <stdlib.h> #include <math.h> int main() { //取整 printf( ...

  7. Codeforces Round #525 (Div. 2) Solution

    A. Ehab and another construction problem Water. #include <bits/stdc++.h> using namespace std; ...

  8. spoj QTREE - Query on a tree(树链剖分+线段树单点更新,区间查询)

    传送门:Problem QTREE https://www.cnblogs.com/violet-acmer/p/9711441.html 题解: 树链剖分的模板题,看代码比看文字解析理解来的快~~~ ...

  9. 四个修改Docker默认存储位置的方法

    方法一.软链接 默认情况下Docker的存放位置为:/var/lib/docker 可以通过下面命令查看具体位置: sudo docker info | grep "Docker Root ...

  10. powershell 删除8天前的日志

    把以下命令保存为ps1脚本,添加到Windows计划任务中设定每天固定时间执行即可: #delete logs in specify website, just save logs in eight ...