首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >【Android 逆向】ApkTool 工具使用 ( ApkTool 简介 | ApkTool 解包和打包 )

【Android 逆向】ApkTool 工具使用 ( ApkTool 简介 | ApkTool 解包和打包 )

作者头像
韩曙亮
发布2023-03-29 19:56:34
发布2023-03-29 19:56:34
9.4K0
举报

文章目录

前言

之前写的 ApkTool 相关博客 :

一、ApkTool 简介


参考 【Android 安全】DEX 加密 ( 常用 Android 反编译工具 | apktool | dex2jar | enjarify | jd-gui | jadx ) 一、apktool 博客章节 ;

官网地址 : https://ibotpeaches.github.io/Apktool/

文档地址 : https://ibotpeaches.github.io/Apktool/documentation/

二、ApkTool 解包和打包


ApkTool 的最重要的两个作用是 解包 和 打包 ;

  • 解包 : 拿到 APK 文件 , 如果按照 zip 格式解压出来 , xml 文件都是乱码 ; APK 文件打包时 , 会将 xml 文件进行压缩转为二进制文件 , 以减小体积 ; 解包时 , 必须使用 ApkTool 解包工具 , 将二进制数据格式的 xml 文件转为 文本 xml 文件 , 才能获取刻度的 xml 文件 ;
  • 打包 : 将使用 ApkTool 工具解包后的零散文件 , 再次打包成 APK 文件 ,

如果 APK 文件进行了加固处理 , 那么解包无法获取正确的 dex / so / 资源文件 , 无法进行重打包 ;

重打包操作 : 使用 ApkTool 工具 , 将 APK 解包 , 修改或注入 so 文件 , 然后再进行重打包 ;

1、使用 apktool 解包

执行 java -jar apktool_2.4.1.jar d demo.apk -o demo 命令 ,

代码语言:javascript
复制
java -jar apktool_2.4.1.jar d demo.apk -o demo

其中 d 后面是 要反编译的 apk 文件 ,

-o demo 的含义是 将反编译结果输出到 demo 目录中 ;

反编译过程 :

查看其中的 AndroidManifest.xml 文件 , 可以看到真实的文件内容 ;

2、使用 apktool 打包

将反编译后的文件 重新打包 ;

代码语言:javascript
复制
java -jar apktool_2.4.1.jar b demo -o demo_repackage.apk

b demo 是指定 要打包 demo 目录 ;

-o demo_repackage.apk 是指定新打包的 应用安装文件是 demo_repackage.apk ;

重新打包过程 :

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 前言
  • 一、ApkTool 简介
  • 二、ApkTool 解包和打包
    • 1、使用 apktool 解包
    • 2、使用 apktool 打包
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档