首页
社区
课程
招聘
[讨论]Android 移动安全攻防实战 第二章
2022-9-3 22:31 3647

[讨论]Android 移动安全攻防实战 第二章

2022-9-3 22:31
3647

破解第一个Android应用

2.1

利用APKTool反编译apk
下载ApkTool
然后用jar包来反编译

 

反编译NDKDemo,默认创建的NDK

1
java -jar apktool_2.6.1.jar d xxxxxx.apk -o output_dir

在这个放jar包的地方输入自己的apk名字然后-o 输出到output_dir里面。output_dir会自己建的。

 

java2smali
将java语言转为smali的方法。
idea也有插件在这里插入图片描述
构建的地方可以转过去
在这里插入图片描述
现在不会写smali所以看着书写。

move-result-object v0后面加上

1
2
3
4
5
6
7
8
9
const/4 v1,0x1
 
invoke-static {p0,v0,v1},
Landroid/widgt/Toast; ->makeText ( Landroid/content/Context; Ljava/lang/CharSequence;I)
Landroid/widgt/Toast;
 
move-result-object v1
 
invoke-virtual {v1}, Landroid/widget/Toast; ->show()V

以及在onCreate更改局部变量

1
2
3
# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
    .locals 2

就可以在一开始创建的NDKDemo里创建Toast了

重新编译并签名

//一开始不严谨报错了几次,看了其他的代码改好了。如果出错apktool还会指出来在第几行非常好用

 

重新编译指令

1
java -jar apktool_2.6.1.jar b output_dir -o hello_world_unsigned.apk

在这里插入图片描述
然后创建jks文件 在Android Studio中的Build里可以Generate Signed APK
详情

1
java -jar apksigner.jar sign -verbose --ks 111.jks --v1-signing-enabled true --v2-signing-enabled true --ks-pass pass:(密码) --ks-key-alias key0 --out hello_world_signed.apk  hello_world_unsigned.apk

然后就可以了
在这里插入图片描述
但是打不开不知道为什么。难道是虚拟机的事?


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回