好友
阅读权限25
听众
最后登录1970-1-1
|
胡凯莉
发表于 2023-3-12 11:07
第十课、frIDA环境搭建与使用frida检测名字与端口- 修改名字与端口
- mv frida-server-12.8.0-android-arm64 fs1280a64
- 查看端口的命令
- netstat -tuulp |grep fs
- 默认的是27042
- 开启自定义端口
- ./fs1280a64 -v -l 0.0.0.0:8787 listen
- 在虚拟机上命令
- frida-ps -H 192.168.31.97:8787 查看进程
- frida -H 192.168.31.97:8787 -F attach前台程序
- objection使用
- objection -N -h 192.168.31.97 -p 8787 -g com.android.settings explore
- dpkg -i dwada.deb 安装deb格式软件
- frida脚本开发环境正确操作:
之前建议的这种方法frida-gum.d.ts已经被大胡子删掉了,他现在不赞成使用这种方式。
目前最新正确的Frida环境搭建方法:
1. git clone https://github.com/oleavr/frida-agent-example.git
2. cd frida-agent-example/
3. npm install
4. 使用VSCode等IDE打开此工程,在agent下编写typescript,会有智能提示。
5. npm run watch会监控代码修改自动编译生成js文件
6. frida -U -f com.example.android --no-pause -l _agent.js - vscode使用脚本
- frida -H 192.168.31.97:8787 -F -l _agent.js 这个ip地址是要写手机的ip地址
- r
- cn.soulapp.android
RPC调用function hook_KeyStore_load() {
Java.perform(function () {
var StringClass = Java.use("java.lang.String");
var KeyStore = Java.use("java.security.KeyStore");
KeyStore.load.overload('java.security.KeyStore$LoadStoreParameter').implementation = function (arg0) {
console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new()));
console.log("KeyStore.load1:", arg0);
this.load(arg0);
};
KeyStore.load.overload('java.io.InputStream', '[C').implementation = function (arg0, arg1) {
console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new()));
console.log("KeyStore.load2:", arg0, arg1 ? StringClass.$new(arg1) : null);
this.load(arg0, arg1);
};
​
console.log("hook_KeyStore_load...");
});
}
setImmediate(hook_KeyStore_load)debug_print('Resuming PID test {pid}'.format(pid=self.spawned_pid))self.device.resume(self.spawned_pid) |
免费评分
-
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|