frida笔记
frida-server修改监听端口在0.0.0.0
执行下面指令停止进程
launchctl unload -w /Library/LaunchDaemons/re.frida.server.plist 复制代码
修改iPhone上/Library/LaunchDaemons/re.frida.server.plist
这个路径下的文件 之前:
<key>Program</key> <string>/usr/sbin/frida-server</string> <key>ProgramArguments</key> <array> <string>/usr/sbin/frida-server</string> </array>
修改为:
<key>Program</key> <string>/usr/sbin/frida-server</string> <key>ProgramArguments</key> <array> <string>/usr/sbin/frida-server</string> <string>-l</string> <string>0.0.0.0</string> </array>
然后重启服务
launchctl load -w /Library/LaunchDaemons/re.frida.server.plist
要是没有vi命令就去cydia上面去安装。
frida 通过button按钮定位事件
在 iOS 开发中,UIButton 绑定的方法通常是通过 addTarget:action:forControlEvents:
方法进行的。这种情况下,可以通过在运行时使用 hook 的方式来追踪这个方法的调用,从而找到 UIButton 的目标(target)和动作(action)。
reveal 工具并不会直接提供按钮关联的方法信息。需要利用 Objective-C runtime 的特性和一些动态分析工具 frida 来查看这些信息。
if (ObjC.available) { ObjC.schedule(ObjC.mainQueue, function () { var hook = ObjC.classes.UIButton["- addTarget:action:forControlEvents:"]; Interceptor.attach(hook.implementation, { onEnter: function(args) { var target = new ObjC.Object(args[2]); var selector = ObjC.selectorAsString(args[3]); console.log("[*] 检测到触发按钮! 目标为: " + target + ", Action: " + selector); } }); }); } else { console.log("Objective-C Runtime is not available!"); }赞赏
微信赞赏支付宝赞赏
发表评论