入门apk去广告重打包

admin 2024年10月5日13:19:22评论45 views字数 1899阅读6分19秒阅读模式

虽然一直知道apk可以重打包并运行,但一直一知半解的,今天在kanxue上看到一篇文章,觉得很适合拿来学习。

感谢师傅的文章:AIDA64去广告分析(入门版) https://bbs.kanxue.com/thread-277125.htm

入门apk去广告重打包

声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途给予盈利等目的,否则后果自行承担!

入门apk去广告重打包

前排提醒,本文仅作为学习参考。

下载:https://www.aida64.com/aida64-android

入门apk去广告重打包

该app可以在模拟器上运行,不需要测试机

入门apk去广告重打包

工具准备

说一下需要的文件需要从哪里获得。

  • apktool https://bitbucket.org/iBotPeaches/apktool/downloads/

  • apktool.bat https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/windows/apktool.bat

  • zipalign 下载过android的sdk的,目录下应该有,可以通过everything之类的工具搜索

    • 介绍 https://developer.android.google.cn/tools/zipalign?hl=zh-cn

入门apk去广告重打包

  • apksigner android studio自带的工具,单独下载 https://github.com/jixiaoyong/ApkSigner

  • demoTest.jks apk的签名,自定义
    我是通过android studio生成的,可以参考 https://blog.csdn.net/qq_38436214/article/details/112288954

如果下面apksigner签名报错,尝试更换java的版本,比如替换成java11

练习

查壳,没做混淆和加固

入门apk去广告重打包

apk拖进apk,查看AndroidManifest.xml

具体的分析细节就不再赘述,可以去看这篇文章

https://bbs.kanxue.com/thread-277125.htm

确定位置后,用apktool将该apk反编译

apktool.bat d ./aida64-v203.apk -o outdir

备注:原文中可能添加了参数 --no-res,经过我测试,加了这个之后编译后闪退。

解释 --no-res

当你使用 apktool d <file.apk> 命令来反编译 APK 文件时,如果不加 --no-res 参数,apktool 会将 APK 中的资源文件(如布局文件、图片、字符串等)提取出来,并存储在 res 文件夹中。这些资源文件通常以原始格式(如 XML、PNG、JPEG 等)存在。

如果你添加了 --no-res 参数,如 apktool d <file.apk> --no-resapktool 将不会提取这些资源文件,而是将它们保留在编译后的 APK 文件中。这样做的好处是可以减少反编译后生成的文件夹大小,但缺点是你无法直接查看或修改这些资源文件。

使用 --no-res 参数通常在你不需要修改 APK 的资源文件,只是想查看或修改 APK 的代码时很有用。

定位到 HHMainActivity.smali,路径outdirsmalicomfinalwireaida64

将showHideAds直接跳过

入门apk去广告重打包

if-eqz v0, :cond_12替换为goto :goto_0

  • if-eqz v0, :cond_12 是如果v0 == 0,就跳转到 cond_12

  • goto :goto_0 是强制跳转到 goto_0,我们查看 goto_0对应的是什么

入门apk去广告重打包

可以看到cond_3和goto_0对应的都是 return-void,即返回结束函数。
因此,我们也可以更改为 if-eqz v0, :cond_3 都是一样的效果

入门apk去广告重打包

重新打包

apktool.bat b ./outdir

入门apk去广告重打包

然后需要用 zipalign 做一下对齐

zipalign -p -f -v 4 aida64-v203.apk aida64-v203_align.apk

入门apk去广告重打包

验证一下没问题

zipalign -c -v 4  aida64-v203_align.apk

入门apk去广告重打包

最后就可以签名了

java -jar apksigner-0.9.jar sign --ks demoTest.jks aida64-v203_align.apk

123456
如果闪退,apktool解包的时候不要--no-res选项

入门apk去广告重打包

参考链接

AIDA64去广告分析(入门版) https://bbs.kanxue.com/thread-277125.htm

原文始发于微信公众号(进击的HACK):入门apk去广告重打包

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月5日13:19:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   入门apk去广告重打包https://cn-sec.com/archives/3233553.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息