android软件安全与逆向第一个实例
# 看雪出品的android软件安全与逆向中的第一个实例:##工具:
1.APKIDE
##逆向思路:
(1)smali目录下存放了程序所有的反汇编代码。
(2)res目录则是程序中所有的资源文件。
(3)往往错误提示信息通常是关键代码的地方。
(4)在逆向的时候,先试用一下app对app有一个了解。
(5)在引用字符串的时候会在res/values目录下的string.xml文件中查找
## 逆向开始:
###(1)观察app特征
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/1.png)
#### 总结:我们可以看到这是一个简单的注册界面,而且找到了关键字【无效用户名或注册码】
### (2)对APK进行逆向。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/2.png)
### (3)找到res/values目录下的string.xml
![](http://otufvq0ew.bkt.clouddn.com/3.png)
###(4)根据【无效用户名或注册码】进行对比名称
![](http://otufvq0ew.bkt.clouddn.com/a4.png)
#### 总结:找到对应关键字 【unsuccessed】
###(5)搜索unsuccessed关键字
![](http://otufvq0ew.bkt.clouddn.com/5.png)
#### 总结:找到了三个关键搜索的地方,我们双击就可以去查看代码。
### (6)根据搜索结果,得到下一个关键字。
![](http://otufvq0ew.bkt.clouddn.com/6.png)
#### 总结:记得【0x7f05000c】关键字,然后再进行搜索。
###(7)进行搜索,观察结果.
![](http://otufvq0ew.bkt.clouddn.com/a7.png)
### (8)重复上述操作(6),找到一个关键点。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/a8.png)
#### 重点:找到一个if语句,重新复习一下关于if的知识点。
![](http://otufvq0ew.bkt.clouddn.com/9P67UEK%28Q%7D%7B%5BSK%60W0%7DONUNO.png)
###(9)更改方法一,直接更换关键字。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/a9.png)
#### 反编译,观察效果。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/%5BSZ34FY$%28%29YV$_H4E8IV%29_J.png)
####安装,测试
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/a10.png)
#### 总结破解成功。
###(10)更该方法二,更改if判断条件。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/a11.png)
####把if-eqz更改成if-nez
#### 安装测试成果。
![这里写图片描述](http://otufvq0ew.bkt.clouddn.com/a12.png)
#### 成功!。
其他内容有兴趣可以去我的CSDN博客看看。
http://blog.csdn.net/qq_36869808?ref=toolbar
大牛请绕过,只是做一个简单的学习笔记~~~
有错误的地方请指出来,可以更好的学习和改正。 airs-sec 发表于 2017-12-7 11:35
谢谢楼主分享,我也刚开始学这个移动逆向,我看了你博客,相信自己,安全领域你没选错。
非常感谢~一起进步,一起学习 hhbluestar 发表于 2017-12-6 21:17
有没有过签名教程,现在卡在这了,APP 回编译后,登录不了谷歌账户,提示签名错误。
需要签名,找signapk.jar的使用 apk下载:https://pan.baidu.com/s/1cz1fqe 来得晚,完全看不懂的路过。 有没有关于动态调试的教程? maoxuechuen 发表于 2017-12-6 17:33
有没有关于动态调试的教程?
还没学到这一步~ 乔小风 发表于 2017-12-6 16:49
来得晚,完全看不懂的路过。
这是简单的,复杂的我也看不懂{:1_937:} 楼主,谢谢!给个提取密码 有没有过签名教程,现在卡在这了,APP 回编译后,登录不了谷歌账户,提示签名错误。 收藏一下,好文