Android反编译后重新打包

apk中包含的内容

使用apktool直接反编译apk

好吧,不管怎样,反正是报异常了。有人说是apktool的版本不是最新导致的,我也难得去查找原因了,以前这样直接反编译也就是那样而已。

使用dex2jar将从apk中解压得到的dex文件转成jar包

使用jd-gui来查看jar包内容

将要需改的类更改代码后复制到jar内,完成覆盖替换

把jar包重新转成dex文件

将修改完成后的dex文件复制到原来的apk文件中

直接覆盖原来的dex文件

然后就兴冲冲地直接去安装了,然而~

看来果然没这么简单就能呢个搞定,继续排查原因。

嘿咻嘿嘘找原因

看看apk文件中有什么可疑对象导致了安装失败,果然除了dex和资源文件以外,还发现了三个文件

原来是apk包本身的防篡改机制导致的

打开文件来一探究竟,果然里面都是对打包时对文件进行了标识记录,看来这是避免文件被篡改的安全机制。

找到问题原因就来解决,嘿咻嘿咻

想想既然是这些文件导致的,那先试试简单粗暴地直接把文件删了,避免防篡改检查

然而,这样的是不行的,必须要有这个文件夹才能解析apk包,可能这些相当于是读取安装文件列表清单,必须具有,看来此路不通,

既然原来的清单内容对不上,但又不能不提供,那能不能我们给它配一个新的?

想到这里,感觉可以动手试试,嘿咻嘿咻~

这些文件既然是在编译打包成apk时期自动生成的,那要想再生成一份新的,所以应该重新打包就可以。可是这个本身已经就是apk文件了,怎么再编译打包?

停下来想了想,对啊,突然想起来可以给包签个名呗,打签名应该也会有同样的效果才对,继续嘿咻嘿咻。

找个工具来签名吧,用自己的去签名留下点什么不良记录就不好了,嘿嘿~

签名成功后

成功安装,破解完成

时间: 2024-12-20 01:18:36

Android反编译后重新打包的相关文章

Android反编译和二次打包实战

作为Android开发者,工作中少不了要反编译别人的apk,当然主要目的还是为了学习到更多,取彼之长,补己之短.今天就来总结一下Android反编译和二次打包的一些知识.首先声明本文的目的是为了通过例子讲解反编译和二次打包的原理和方法,继而作为后续讲解防止二次打包和App安全的依据,并不是鼓励大家去重新打包别人的App,盗取他人劳动成果. 本文首先介绍几种Android反编译工具的使用,然后实现在不需要知道源代码的情况下,仅通过修改反编译得到的smali文件实现修改apk逻辑功能的目的. And

实现android apk反编译后代码混淆

通常情况下我们需要对我们开发的android代码进行混淆,以免代码在反编译时暴露敏感信息及相关技术代码: 反编译测试工具:onekey-decompile-apk-1.0.1. 在高级版本的adt创建完都会有project.properties文件:开启混淆的话,需要在文件中这样做如图: 注意:混淆代码的生效时刻是在:apk签名之后. 然后在用onekey-decompile-apk-1.0.1反编译后效果如下:

Android反编译和二次打包

参考:APK反编译 一.工具介绍: 1.解压工具 2.JDK 3.apktool: aapt.exe,apktool.bat,apktool.jar;三个在同一目录结合使用,用来反编译apk,反编译生成smali字节码文件,提取apk中的资源文件,apk重新打包. 4.dex2jar:该工具作用是将classes.dex文件,翻译出程序的源代码.图片.XML配置.语言资源等文件(如果apk未加固),反编译出文件,使用jd-gui工具进行查看: 5.jarsigner.exe:签名工具,将重新打包

Android反编译apk(一)

为什么反编译: 做为个人开发,有时候看到精美的UI效果,好玩的功能,是不是有想可以参考学习的冲动.反编译android的apk,就是从apk中把资源(如图片,音乐,布局文件等等),源代码. 推荐阅读: 对于反编译apk,请先阅读文章<<反编译Android应用>>,<<Android APK反编译就这么简单 详解(附图)>>,好好看,看完自己下载几个apk试试,应该就对反编译apk心里有个底了. 我的笔记: (1).相关软件: dex2jar------将a

Android反编译(三)之重签名

Android反编译(三) 之重签名 [目录] 1.原理 2.工具与准备工作 3.操作步骤 4.装X技巧 5.问题 1.原理 1).APK签名的要点 a.所有的应用程序都必须有数字证书 ,Android系统不会安装一个没有数字证书的应用程序: b.Android程序包使用的数字证书可以是自签名的,不需要一个权威的数字证书机构签名认证: c.数字证书都是存在有效期的,Android只是在应用程序安装的时候才会检查证书的有效期.如果程序已经安装在系统中,即使证书过期也不会影响程序的正常功能. d.A

Android反编译

在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看.下面是我参考了一些文章后简单的教程详解. (注:反编译不是让各位开发者去对一个应用破解搞重装什么的,主要目的是为了促进开发者学习,借鉴好的代码,提升自我开发水平.) 测试环境: win 7 使用工具: CSDN上下载地址: apktool (资源文件获取)  下载      

App反编译二次打包常见问题处理

1.二次打包时报错:Error retrieving parent for item: No resource found that matches the given name 如: D:\用户文件夹\Desktop\APP反编译\Android反编译工具包(最新版)\apk2java\apktool1.4. 1\HJ7\res\values\styles.xml:11: error: Error retrieving parent for item: No reso urce found t

Android反编译工具的用法

Android的APK文件时可以反编译的,通过反编译我们就能查看到大体的代码,帮助学习.反编译仅仅提供的是学习的方式,禁止使用该技术进行非法活动. 其实就是两个命令: 1:运行(WIN+R)->CMD,定位到apktool文件夹,输入以下命令:apktool.bat d -f  CMCC.apk  CMCC 2:定位到dex2jar.bat所在目录,输入dex2jar.bat   classes.dex 下面进行详细的讲解: 我们所用到的工具: apktool 作用:资源文件获取,可以提取出图片

Android 反编译初探 应用是如何被注入广告的

本文由我的微信公众号:鸿洋(hongyangAndroid)原创首发. 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/53370414: 本文出自:[张鸿洋的博客] 一.概述 最近和朋友聊天,发现一些灰色产业链通过批量反编译市场上的apk,然后进行注入广告,再重新打包上渠道. 我想大家都不希望自己家的产品或者自己的app那么容易被"占据",但是想要自身能够防御,首先要知道对方的手段.所以本篇博客的目的不是教大家如何