qq悄悄话查看器-分析报告
今天我的小网站出问题了,只好先写到博客了。
0x00 摘要
前两天有朋友在Q群里发一个QQ悄悄话查看器.apk,因为我之前有研究过,知道查看是不可能的,肯定是骗人的软件(当然了,其实当时我想的是,如果真的可以查看,我要看看他的原理是什么,我断定不可查看是因为:链接)
后来看到有人说,是一款恶搞的软件,很多人中招。
今天周六,看网上也没人分析,就抽时间分析了下。分析后发现……原来没人分析,是因为并没有分析的价值……
0x01软件概述
下载地址:从网上随便找的,本身就是假软件,应该不会再有假的了。
文件:qqqqhckq.apk
大小:580 KB(594,446 字节)
占用空间:584 KB(598,016 字节)
MD5:b1 3c 0c e0 b9 d8 a5 91 f8 79 b4 9a dd 00 20 7a
包名:com.o(这包名我也是醉了)
签名:(谷歌测试签名?)
所有者:EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=MountainView, ST=California, C=US
发布者:EMAILADDRESS=android@android.com, CN=Android, OU=Android, O=Android, L=MountainView, ST=California, C=US
序列号:936eacbe07f201df
有效期开始日期: FriFeb 29 09:33:46 CST 2008, 截止日期: Tue Jul 17 09:33:46 CST 2035
证书指纹:
MD5: E8:9B:15:8E:4B:CF:98:8E:BD:09:EB:83:F5:37:8E:87
SHA1: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
SHA256:A4:0D:A8:0A:59:D1:70:CA:A9:50:CF:15:C1:8C:45:4D:47:A3:9B:26:98:9D:8B:64:0E:CD:74:5B:A7:1B:F5:DC
签名算法名称: SHA1withRSA
版本: 3
0x02分析实现
1,解包查看manifest
这是程序的入口,有了入口我们才能一步一步往下分析。
1.1我们看到一个e4a,猜想可能是一个类似e语言的吧,搜索后发现http://bbs.e4asoft.com/
1.2启动的StartActivity和mainActivity应该是e4a的,最后启动的是com.o.主窗口
1.3还有一个服务com.o.后台服务操作
<applicationandroid:name="com.e4a.runtime.android.E4Aapplication"android:hardwareAccelerated="true"android:icon="@drawable/icon"android:label="QQ悄悄话查看器"android:persistent="true"android:theme="@style/ClassicTheme"><activityandroid:name="com.e4a.runtime.android.StartActivity"android:icon="@drawable/icon"android:label="QQ悄悄话查看器"android:theme="@style/StartTheme"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.DEFAULT"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><activityandroid:name="com.e4a.runtime.android.mainActivity"android:configChanges="keyboardHidden|orientation"android:icon="@drawable/icon"android:label="QQ悄悄话查看器"android:launchMode="singleTask"android:screenOrientation="portrait"android:windowSoftInputMode="adjustPan"><meta-dataandroid:name="MainForm"android:value="com.o.主窗口"/><meta-dataandroid:name="FontSize"android:value="true"/><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.DEFAULT"/></intent-filter></activity><service android:name="com.o.后台服务操作"><intent-filterandroid:priority="1000"><actionandroid:name="com.o.后台服务操作"/></intent-filter></service> </application>
2,查看资源文件
网上说会播放声音的,常见的播放声音有2个地方,assets和raw,在assets中找到:
2.1,6M5UBF2J9ZI70.jpg
打开后显示的图,还有作者的QQ
2.2,0.mp3
播放的不可描述的声音。
2.3,0.wma
3,分析源码
这是包中的代码,R文件就不说了。
3.1 初始任务
这里把4个音量设为100
/* The audio stream for system sounds */public static final int STREAM_SYSTEM = 1;/* The audio stream for the phone ring and message alerts */public static final int STREAM_RING = 2;/* The audio stream for music playback */public static final int STREAM_MUSIC = 3;/* The audio stream for alarms */public static final int STREAM_ALARM = 4;publicvoid 主窗口$创建完毕(){音量操作.置音量(4, 100); //设置音量的1234(代码写错这种我就不吐槽了)音量操作.置音量(4, 100);音量操作.置音量(2, 100);音量操作.置音量(3, 100);媒体操作.播放音乐("0.mp3");//播放音乐,我就想知道0.wma有什么卵用媒体操作.置循环播放(true);this.标签1.字体大小(10.0F);this.标签1.标题("" + 加密操作.RC4解密("4B9D72700A8217D0","0"));//解密后是“免责声明”this.系统设置1.屏幕锁定();this.系统设置1.保持屏幕常亮();this.系统广播1.注册广播("后台服务广播");this.系统闹钟1.设置闹钟(1, 500L, "闹钟");this.时钟1.时钟周期(500);}
3.2 屏蔽按键
这里屏蔽按键,使按键失效,code对应的音量加、音量减、菜单。
返回键呢?我测试的时候,可以点home键返回桌面,卸载。
/** Key code constant: Volume Up key.* Adjusts the speaker volume up. */public static final int KEYCODE_VOLUME_UP = 24;/** Key code constant: Volume Down key.* Adjusts the speaker volume down. */public static final int KEYCODE_VOLUME_DOWN = 25; /** Key code constant: Menu key. */public static final int KEYCODE_MENU = 82;public void 主窗口$按下某键(int paramInt, BooleanReferenceParameter paramBooleanReferenceParameter){boolean bool = paramBooleanReferenceParameter.get();if (paramInt == 24)bool = true;if (paramInt == 25)bool = true;if (paramInt == 82)bool = true;paramBooleanReferenceParameter.set(bool);}
3.3 时钟周期
publicvoid 时钟2$周期事件(){this.时钟1.时钟周期(0);系统相关类.创建快捷方式2("QQ悄悄话查看器0", 2130837504, "http://");系统相关类.创建快捷方式2("QQ悄悄话查看器1", 2130837504, "http://");系统相关类.创建快捷方式2("快手双击工具2", 2130837504, "http://");系统相关类.创建快捷方式2("快手双击工具3", 2130837504, "http://");系统相关类.创建快捷方式2("QQ悄悄话查看器4", 2130837504, "http://");}
3.4标签点击事件
//解密后是“免责声明” //“仅供整蛊娱乐,凡是使用本程序必须承担后果,请勿修改应用程序否则后果自负!” //“我同意”public void 标签1$被单击(){对话框类.信息框("" + 加密操作.RC4解密("4B9D72700A8217D0", "0"), "" + 加密操作.RC4解密("35891F2916806DE1E71622A2DDD1EC7040CC953D96DFBA0145EE0E1F177C902D5CFDD9F787E0B14554D9103F81B7ECDA9E8BE63EA8CFF797820796B2DF4C1BE9856BA4659E76", "0"), "" + 加密操作.RC4解密("46AD6B2C1199", "0"));}
3.5广播
publicvoid 系统广播1$收到广播(int paramInt){主窗口.标题(this.系统广播1.取广播内容());if (主窗口.标题().equals("1")){if (!应用操作.是否在前台()){音量操作.置音量(4, 100);音量操作.置音量(1, 100);音量操作.置音量(2, 100);音量操作.置音量(3, 100);应用操作.返回应用();this.系统设置1.屏幕解锁();}}elsereturn;this.标签1.字体大小(10.0F);}
0x03 修改测试
为什么不直接测试,而要先分析呢?你以为我傻呀,当然要先研究透才能测试呀。O(∩_∩)O~
1,修改音乐文件
1.1我直接替换assets中的0.mp3,重签名安装后,发现音乐不能播放了。
排除签名认证,软件是可以打开的。
排除音乐文件认证,代码总共才那几行。
最后看log,
Token{42656530 ActivityRecord{427b6448com.o/com.e4a.runtime.android.mainActivity}} failed creating starting windowandroid.view.InflateException:Binary XML file line #34: Error inflating class <unknown>
好像没有跟播放声音有关的呀……
哈哈,我想可能是e4a不能这样改,
于是用ApkIDE编译。
1.2 ApkIDE报了一个
libpng error: Not a PNG file ERROR: Failure processing PNG imageE:\xxunpack\ApkIDE\Work\com.o\res\drawable\icon.png
于是换了一张png的
成功,打开软件终于唱起了葫芦娃,终于不是不可描述啦。
2,去除屏蔽按键
.method public 主窗口$按下某键(ILcom/e4a/runtime/parameters/BooleanReferenceParameter;)V.registers 5invoke-virtual {p2},Lcom/e4a/runtime/parameters/BooleanReferenceParameter;->get()Zmove-result v0const/16 v1, 0x18if-ne p1, v1, :cond_9const/4 v0, 0x1:cond_9const/16 v1, 0x19if-ne p1, v1, :cond_econst/4 v0, 0x1:cond_econst/16 v1, 0x52if-ne p1, v1, :cond_13const/4 v0, 0x1:cond_13invoke-virtual {p2, v0}, Lcom/e4a/runtime/parameters/BooleanReferenceParameter;->set(Z)Vreturn-void .end method
改最后的返回就可以了
:cond_13const/4 v0, 0x0invoke-virtual {p2, v0},Lcom/e4a/runtime/parameters/BooleanReferenceParameter;->set(Z)Vreturn-void
0x04总结
正如前面所说的,并没有分析的价值
1,今早想从群里下载时,也经无法下载了
2,安装时,某流氓也会提示该软件有问题了
qq悄悄话查看器-分析报告相关推荐
- [分享]牛牛图片查看器[仿QQ图片查看器]及大致原理说明
这是一个完全通过Duilib来实现的一个图片查看器,仿照QQ图片查看器的效果实现,希望大家喜欢. 先看一下使用的截图吧: 做相关说明如下: 一:使用说明 1. 通过命令行调用,传递图片路径即可打开图片 ...
- Qt 仿QQ图片查看器
最近项目中,由于需要查看图片.看了网上写的各种图片查看器.感觉都没有QQ图片查看器那种界面好看一点.并且放大了可以移动图片.为此,想着仿QQ图片查看器自己写了一个,如图: 主要实现的功能有: 鼠标滚轮 ...
- 基于STM32的照片查看器课程报告
注:资料借鉴正点原子正点精英板STM32F1开发指南(库函数版):程序是正点精英板STM32F1实验四十三章图片显示实验. 程序地址:实验38图片显示实验.7z-嵌入式文档类资源-CSDN下载 目录 ...
- 窗口程序ImageView(仿QQ图片查看器)
近期一直在学习窗口程序之类的问题,下午正好有机会和大家讨论一下. 程序运行截图: 应用方法: 1.直接把图像文件拖到图标上表现 2.通过命令行方式,示例:ImageView.exe "带全路 ...
- ImageView(仿QQ图片查看器)
程序运行截图: 使用方法: 1.直接把图像文件拖到图标上显示 2.通过命令行方式,示例:ImageView.exe "带全路径的图像文件名称" 3.打开ImageView.exe, ...
- jQuery 图片查看插件 Magnify 开发简介(仿 Windows 照片查看器)
前言 因为一些特殊的业务需求,经过一个多月的蛰伏及思考,我开发了这款 jQuery 图片查看器插件 Magnify,它实现了 Windows 照片查看器的所有功能,比如模态窗的拖拽.调整大小.最大化, ...
- 系统安全运维 Server 2008 R2 事件查看器实现日志分析
<系统安全运维> Server 2008 R2 事件查看器实现日志分析 在 windows server 2008 R2 中,可以通过点击 "开始" -> &q ...
- Android 日志自动分析,Android Log Viewer:一个日志查看器工具,可简化实时对Android日志的分析...
作为与Cordova一起工作的移动应用程序开发人员, 我知道调试应用程序的本机部分会很困难, 例如, 当你为应用程序创建本机插件时(在这种情况下, Android Studio无效).在试图找出我的应 ...
- epub 阅读器_全球与中国EPUB阅读器市场深度调研分析报告
QYResearch预测:2020-2026全球与中国EPUB阅读器市场现状及未来发展趋势 [纸版价格]:RMB 18000 [电子版(PDF)价格]:RMB 18000 [报告篇幅]:103 [报告 ...
- bin文件查看器app_腾讯文件:腾讯官方出品的微信 / QQ 文件管理和清理利器
前言 微信和 QQ 基本是大家手机上的必备应用了,但是使用时间久了,难免会积攒很多文件,甚至引起应用卡顿. 包括垃圾/缓存文件,或者我们接收保存的文件等等,占据了大量空间,又不好管理. 今天就分享一款 ...
最新文章
- JSPServlet学习手册
- 如何在Centos 7上用Logrotate管理日志文件
- 我的世界服务器怎么显示腐竹来了,我的世界腐竹开服必看manu权限组教程
- MAT之PSO:利用PSO算法优化二元函数,寻找最优个体适应度
- 正则表达式的捕获性分组/反向引用
- mysql ngram_MySQL ngram全文解析器
- sql语句截断_SQL Server中SQL截断和SQL删除语句之间的区别
- Note: File Recipe Compression in Data Deduplication Systems
- Swift 06.Closures
- html返回底部代码,返回页面顶部及去页面底部的js实现代码
- AD9的PCB技巧——覆铜的规则设置
- python二分法求函数零点_在SciPy/NumPy中求复函数的零点
- 数据库管理系统的概念及数据库管理系统的基本功能
- Problem G: 切煎饼
- 学妹:大学四年以算法为重还是技术为重?
- 基于MATLAB的电弧仿真模型(Mayr/Cassie 电弧模型)
- 无光驱安装redhat企业版
- 七夕快到了,用python给女朋友画张素描吧
- uboot引导vxworks6.9(T4240) 启动
- layui-vertify不生效