m4bln


  • 首页

  • 归档

  • 标签

  • hint

  • 关于

  • 搜索

下载GooglePlay上的apk文件

发表于 2017-10-10 | 阅读次数:
GooglePlay上的apk文件需要在设备上登录google账户点击install才能安装,有时候为了方便需要直接在PC端直接下载,而网页上并没有下载选项。 一些第三方的网站可以方便下载GooglePlay上的apk文件,例如: evozi https://apps.evozi.com/apk-downloader/ apkcombo https://apkcombo.com/ apkmirror https://www.apkmirror.com/ 只需要把apk在GooglePlay上的url粘贴到这些网站上,就可以获取下载链接。
阅读全文 »

ptrace

发表于 2017-08-01 | 阅读次数:
关于ptraceptrace可以用来监控和控制一个进程的运行,获取或更改目标进程的内存和寄存器,它主要用来进行断点调试或跟踪, 参数ptrace函数体123#include <sys/ptrace.h>long ptrace(enum __ptrace_request request, pid_t pid, void *addr, void *data); enum __ptrace_request request:指示了ptrace要执行的命令。 pid_t pid: 指示ptrace要跟踪的进程。 void *addr: 指示要监控的内存地址。 void *data: 存放读取出的或者要写入的数据。 ptrace的第一个参数决定了其行为,常用到的有如下几种:12345678910111213141516PTRACE_ATTACH attach进程PTRACE_TRACEME 子进程让父进程跟踪自己PTRACE_PEEKTEXT 从内存地址中读取一个wordPTRACE_PEEKDATA 同上PTRACE_PEEKUSER 从USER区域中读取一个wordPTRACE_POKETEXT 往内存地址中写入一个wordPTRACE_POKEDATA 同上PTRACE_POKEUSER 往USER区写入一个word PTRACE_GETREGS 读取寄存器PTRACE_GETFPREGS 同上PTRACE_SETREGS 写入寄存器 PTRACE_SETFPREGS 同上 PTRACE_CONT 继续执行 可同时向子进程交付指定的信号PTRACE_SYSCALL 继续执行 进入系统调用读取参数,退出系统调用时读取返回值PTRACE_SINGLESTEP 继续执行 单步调试PTRACE_DETACH deattach ptrace检测进程被ptrace后通常会有一 ...
阅读全文 »

Android反调试和对抗

发表于 2017-06-13 | 阅读次数:
反调试1.自己ptrace自己代码非常简单,在so中加上这行代码即可:1ptrace(PTRACE_TRACEME, 0, 0, 0); 其中PTRACE_TRACEME代表:本进程被其父进程所跟踪。一个进程只能被ptrace一次,通常在调试的时候都会attach被调试应用的进程,如果我们先占坑,父进程attach自己,那么其他的附加调试就会失败。 2.检测Tracerpid的值在自己的应用中的native层加上一个循环检查自己status中的TracerPid字段值,如果非0或者是非自己进程pid(如果采用了第一种方案的话,这里也是需要做一次过滤的);那么就认为被附加调试了。 3.调试器端口检测以IDA为例,读取/proc/net/tcp,查找IDA远程调试的默认23946端口(或者执行命令netstat -apn),如果处于监听状态说明被存在调试可能。 4.调试器名称检测遍历进程,查找类似android_server,gdbserver,gdb等调试器进程 5.多进程反调试目标程序创建了多个进程,互相ptrace,不同进程分工明确,守护或者反调试。只要有一个进程出现异常,集体挂掉以对抗。 对抗多进程都是通过fork出来的,因此我们修改/bionic/libc/bionic/fork.c里面的fork函数来使得目标进程fork失败 6.检测系统关键文件进程被ptrace后通常会有一些特征,这些特征也常常作为反调试的判断依据: status/proc/pid/status 和 /proc/pid/task/pid/status:普通状态下,TracerPid这项应该为0;调试状态下为调试进程的PID。 stat/proc/pid/stat 和 /proc/pid/task/pid/stat:调试状态下,括号后面的第一个字母应该为t wchan/proc/pid/wchan ...
阅读全文 »

Android三大hook框架

发表于 2017-06-13 | 阅读次数:
目前Android主流的hook框架有Xposed、Substrate和frida三种,下面依次介绍三种框架的原理和特点: XposedXposed是一个在andoid平台上比较成熟的hook框架,可以完美的在dalvik虚拟机上做到hook任意java方法 原理Android系统中所有的app进程都是有zygote进程孵化而来的,Xposed会替换/system/bin/app_process文件,替换后的app_process在启动过程中会加载XposedBridge.jar这个jar包,从而完成对Zygote进程及其创建的Dalvik虚拟机的劫持 运行条件 由于需要替换app_process,故需要root或在recovery下刷机 重启手机后插件才会生效 使用方法 1.AndroidManifest.xml中添加Xposed 需在Application Node中添加三个Meta(xposedmodule,xposedminversion和xposeddescription)12345678910111213141516171819202122<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.xposedtest" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="14" android:targetSdkVersion= ...
阅读全文 »
1…89

m4bln

影后入林到驿前

84 日志
2 标签
© 2021 m4bln
由 Hexo 强力驱动
|
主题 — NexT.Mist v5.1.3