![](https://img-blog.csdnimg.cn/20210111194249605.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
安卓安全逆向
文章平均质量分 56
安卓逆向相关技术
404NooFound
这个作者很懒,什么都没留下…
展开
-
JNI规范文档
JNI规范文档#ifndef JNI_H_#define JNI_H_#include <sys/cdefs.h>#include <stdarg.h>#ifdef HAVE_INTTYPES_H# include <inttypes.h> /* C99 */ //这个是JNI规范中定义的基本数据类型 //typedef 关键字,可以使用它来为类型取一个新的名字。 //举个例子:typedef unsigned char BYTE;在这个类原创 2021-12-03 10:08:28 · 976 阅读 · 0 评论 -
安卓逆向:Crakeme01实战分析 IDA动态静态分析
一、APK下载Crakeme01:https://github.com/404nofoundx/Cloud/blob/main/Crakeme01.apk二、jadx分析java代码原创 2021-09-18 16:10:19 · 398 阅读 · 0 评论 -
实战分析自毁程序Crackme IDA动态调试
一、目标Crackme:https://github.com/404nofoundx/Cloud/blob/main/AliCrackme.zip二、查看java代码二话不说上jadx,通过AndroidManifest.xml文件确定入口。三、IDA静态分析四、IDA动态分析打上断点还没等到断点的时候,程序就崩溃了,猜测有反调试。这次在JNI_OnLoad下断点,看看是哪里崩溃的,多次尝试发现在此处崩溃,用00000000修改此处命令。修改前修改后反调试安全跳过,重新在Jav原创 2021-09-17 12:15:41 · 332 阅读 · 0 评论 -
安卓逆向—霸哥磁力搜索apk过签名校验
一、什么是签名校验签名验证,就是在APP中写入自己私钥的hash值,和一个获取当前签名中的私钥hash值的函数两个值相一致,那么就说明APP没有被改动允许APP运行。 如果两值不一致那么说明APP是被二次打包的,APP就自我销毁进程。 签名验证可以在两个地方做,一个是在MainActivity.java的OnCreate函数中做,一个是在原生代码文件的JNI_OnLoad函数中做。二、验证是否是签名校验用Android killer随意改下smail代码然后重新打包,发现APP闪退。三、Jadx原创 2021-09-15 10:50:39 · 4546 阅读 · 0 评论 -
Android root环境下设置全局可调试(ro.debuggable = 1)
1、Magisk安装MagiskHide Props Config2、adb shell执行命令PS C:\Users\Admin\Desktop\apkHome> adb shelltaimen:/ $ su 切换至root模式taimen:/ # magisk resetprop ro.debuggable 1 修改为全局可调式taimen:/ # stop;start; 重启这样手机就设置成全局调试了...原创 2021-09-14 16:30:53 · 2172 阅读 · 1 评论 -
IDA7.5安卓10动态调试
一、调式环境1、IDA Pro 7.52、Pixel 2 XL 安卓10二、环境准备找到 IDA目录下的文件夹dbgsrv中的android_server,然后推到手机 /data/local/tmp目录PS D:\IDA\dbgsrv> adb push .\android_server /data/local/tmp.\android_server: 1 file pushed, 0 skipped. 32.6 MB/s (786868 bytes in 0.023s)然后切换到原创 2021-09-13 11:17:50 · 1061 阅读 · 0 评论 -
ARM指令集
1 、LDR 和 STR加载/存储字和无符号字节指令,使用单一数据传送指令(STR 和 LDR)来装载和存储,单一字节或字的数据从/到内存LDR指令用于从内存中读取数据放入寄存器中,STR指令用于将寄存器中的数据保存到内存。指令格式如下:LDR{cond}{T} Rd,<地址> ;加载指定地址上的数据(字),放入 Rd 中 STR{cond}{T} Rd,<地址> ;存储数据(字)到指定地址的存储单元,要存储的数据在 Rd 中 LDR{cond}B{原创 2021-09-07 14:51:49 · 328 阅读 · 0 评论 -
将抓包证书推至安卓系统目录
1、找到证书文件windows目录: C:\Users\用户名.mitmproxy,并将mitmproxy-ca-cert.pem 复制一份重命名为:c8750f0d.0 。2、传入手机系统目录并给予权限(root权限下#1 推至sdcard目录adb push c8750f0d.0 /sdcard#2 切换至证书目录并挂载系统目录为可写cd /system/etc/security/cacertsmount -o rw,remount /#3 移动证书到证书目录mv /sdcard原创 2021-06-16 16:27:41 · 738 阅读 · 0 评论 -
MagiskHide android ro.debuggable属性调试修改
如果想要调试android 的程序,以下两个条件满足一个就行。1、是apk的配置文件内的AndroidManifest.xml的 android:debuggable=”true”。2、是修改/default.prop中ro.debuggable=1。第一种通常是解包添加属性再打包,随着加壳软件以及apk校验等,容易出现安装包异常。第一种Android手机系统的 ro.debuggable 这一配置位于 /default.prop 文件中,而 /default.prop 又来源于手机每次启动时 bo原创 2021-04-26 14:56:42 · 2995 阅读 · 0 评论 -
IDA动态调试
1、把本地server文件推送进手机目录adb push android_x86_server(cpu型号要对应 模拟器是x86) /data/local/tmp/2、进入手机shelladb shell3、进入手机tmp目录cd /data/local/tmp/4、修改权限chmod 777 android_server5、运行./android_server6、在本地执行adb 做端口转发adb forward tcp:23946 tcp:239467、本地打开IDA,选中Go原创 2021-02-08 09:56:21 · 522 阅读 · 0 评论 -
安卓逆向脱壳:Frida-DEXDump一吻杀一个人,三秒脱一个壳
本期用到 :python+frida+模拟器+Frida-DEXDump如果没布置Frida环境可以跳转此文: Hook神器: frida超详细安装教程一、前言APP 加固发展到现在已经好几代了,从整体加固到代码抽取到虚拟机保护,加固和脱壳的方案也逐渐趋于稳定。随着保护越来越强,脱壳机们也变得越来越费劲,繁琐。但是毕竟道高一尺,魔高一丈,市面上有很多手段可以进行脱壳操作今天介绍的是使用Frida的一个脚本来dump apk的Dex。二、原理得益于FRIDA, 在 PC上面进行内存搜索、转储都.原创 2021-01-12 14:58:50 · 12568 阅读 · 11 评论 -
安卓逆向之hook框架---Frida Hook Java层修改函数返回值
本期用到 :python+frida+模拟器如果没布置Frida环境可以跳转此文: Hook神器: frida超详细安装教程一、分析APK:AliCrackme.apk阿里安全比赛上的题目,目标无壳,一个简单的密码校验软件,只有输入正确的密码才能进入,错误密码会提示检验失败。2、JADX分析代码逻辑直接搜索“验证码校验失败”锁定代码位置。代码如下:package com.yaotong.crackme;import android.app.Activity;import andro原创 2021-01-12 14:30:42 · 2890 阅读 · 0 评论 -
Hook神器: frida超详细安装教程
一、概述Frida是个轻量级别的hook框架,是Python API,但JavaScript调试逻辑Frida的核心是用C编写的,并将Google的V8引擎注入到目标进程中,在这些进程中,JS可以完全访问内存,挂钩函数甚至调用进程内的本机函数来执行。使用Python和JS可以使用无风险的API进行快速开发。Frida可以帮助您轻松捕获JS中的错误并为您提供异常而不是崩溃。关于frda学习路线了,Frida的学习还是蛮简单的,只需要了解两方面的内容:1)主控端和目标进程的交互(message)2)原创 2021-01-11 14:52:56 · 14287 阅读 · 3 评论