问题标签 [frida]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sockets - Frida SocketListener 可以接受多个连接吗?
我想使用 Frida Socket 创建一个 tcp 服务器,并接受多个客户端。
JS代码:
使用 Python 进行测试:
我运行了 4 次 python 代码,但仅第一次打印了“接受”。
java - 如何通过 frida js 创建一个 Integer.TYPE(int.class) 数组
我有一个问题java.lang.Class.getMethod
。
第二个参数需要一个[java.lang.Object];
类型,java
代码如下:
那么如何array
使用js
或其他方式创建它?
另外,我创建了一个obj array
这样的:
但是我得到一个无效的参数值错误,如何解决?:
{'type': 'error', 'description': 'Error: invalid argument value', 'stack': 'Error: invalid argument value\n at frida/node_modules/frida-java/lib/env.js:515\ n 在 frida/node_modules/frida-java/lib/class-factory.js:2592\n 在 toJniObjectArray (frida/node_modules/frida-java/lib/class-factory.js:2640)\n 在 java.js:4489 \n 在 frida/node_modules/frida-java/lib/class-factory.js:743\n 在 [anon] (script1.js:28)\n 在 input:1', 'fileName': 'frida/node_modules/ frida-java/lib/env.js','lineNumber':515,'columnNumber':1}
android - 谁能帮助我如何在 Android 设备上将 java.net.Socket.connect(java.net.SocketAddress, int) 与 frida 挂钩
我想使用 Frida 在 android 应用程序中挂钩 java.net.Socket.connect() 方法。但我失败了,应用程序崩溃了。
我正在使用带有 Android 7.1.1 和 frida-server-12.2.27-android-arm 的 Nexus 6 设备。
这是我使用的js代码:
我发现如果我只是挂钩 $init() 方法,一切都很好;但是如果我添加方法connect()的钩子,APP就会崩溃。
reverse-engineering - findExportByName 查找不在模块中的名称
我想挂钩connect
套接字的功能。
首先,我需要找到它的地址。
我用以下方法枚举模块:
奇怪的是
返回任何 的预期地址(libsystem_kernel.dylib
根据属于Process.findModuleByAddress(addr)
)i
。
我不明白它如何适用于与i
包含导出的模块对应的值不同的值,如果它真的适用于所有模块,为什么不是findModuleByAddress
a 的函数Process
?
我注意到
也可以,但我不知道有什么区别。
reverse-engineering - 如何使用 Frida 在 Android 中从挂钩的本机函数中打印变量
我有一个加载mylib.so
. 这个库有一个函数decryptChar
,我想钩住并打印一个在那里计算的字符串变量。我为此目的使用frida 。我做了一些尝试,但考虑到我在这方面的经验不足,一切都失败了。我想Key
在离开函数之前打印变量,以便获得它的最终值。
我使用的代码如下
这样做的正确方法是什么?
android - (FRIDA) 生成失败:在准备应用启动时无法访问 zygote64;尝试禁用 Magisk Hide 以防它处于活动状态
我在 Android 8 (Oreo) 中以root身份运行 Frida Server (frida-server-12.5.8-android-arm64.xz) :
-rwxrwxrwx 1 根 38152536 2019-05-26 23:34 irwan
然后我尝试在 apk 中取消固定 ssl:
输出错误:
生成失败:准备应用启动时无法访问zygote64;尝试禁用 Magisk Hide 以防它处于活动状态
如下图:
- 弗里达 12.5.8
- Python 3.7.3
- 视窗 10 专业版
有人可以帮助我为这个问题实施或逐步创建解决方案吗?谢谢。
hook - How to hook fopen using Frida in Android?
I have an android application into which I load a library and at some point I read a file. This is the code that is being used in the app.
Now I am attempting using Frida to hook that fopen
in order to force it to return null but I do not seem to be able to find out how.
The library that is included in the application is called libnative-lib.so
and my attempt in hooking fopen
includes the following code for frida
ios - iOS 捕获调试器陷阱 (BKPT 3)
我有一个正在分析/逆向工程的 iOS 应用程序。我想用 Frida 拦截一个函数。通常,这不是问题,但该函数在应用程序启动时或之后不久被调用,因此在调用该函数之前 Frida 没有时间附加。
我正在使用 32 位 armv7 设备的 iPhone 5。不幸的是,对于 armv7 上的 Frida,显然启动应用程序被破坏了。
因此,我尝试了一个不成功的远射。我写了一个 dylib 来调整目标方法。在 swizzled 实现中,我触发了调试器中断(__asm__('trap')
我也尝试过bkpt 3
)。我启动了调试服务器并将我机器上的 lldb 连接到它。我希望调试服务器会拦截来自应用程序的陷阱,但显然我错了。
有没有人知道a)通常如何拦截陷阱(比如说,调试器),b)关于调试服务器如何将自己附加到进程的任何信息,或者c)关于我如何实现这一点的任何其他想法?
frida - 有没有办法在 Frida 中访问“this”?
假设我有以下钩子:
它给了我
{$handle: '0x2345', '$weakRef': 283}
但我知道它有一个我想访问的字段。
我如何访问这个?
android - 我可以声明一个 OnClickListener 派生类并将其实例传递给 Frida 中视图的 setOnClickListener 方法吗
在 Frida 的挂钩 javascript 文件中,我可以声明一个派生自 OnClickListener 的新类吗?我想将一个新的 OnClickListener 实例传递给现有视图的 setOnClickListener 方法。
我可以得到一个现有的视图类,如下所示:
此视图在原始应用程序中没有任何 onClickListener。是否可以通过 Frida 将 onClickListener 实例附加到此视图?
我知道如何实例化一个现有的类,但我不知道如何在 Frida 中声明一个新类。
非常感谢你的建议。