【问题标题】:Load *.dylib or *.so into the V8 Javascript runtime?将 *.dylib 或 *.so 加载到 V8 Javascript 运行时?
【发布时间】:2023-03-20 02:32:01
【问题描述】:

虽然与 Frida 对 V8 的使用没有特别的关系,但我在阅读 this Frida 发布页面并注意到它提供了以下参考:

只需用 C 语言编写整个代理,就可以继续构建一个 本机库,并使用 Module.load() 加载它。这有效,但意味着 它必须针对每一个架构进行编译,部署到 目标等

Ole 的评论暗示这是可能的,尽管除了 NodeJS C++ Addons 功能之外,我找不到任何其他参考资料,这些特性当然是 N​​odeJS 特有的(尽管 NodeJS 确实使用 V8)。


tl;博士 如何加载一个通用对象,使其所有导出的函数都可以从 Javascript 调用?这可能吗?

【问题讨论】:

  • 也许@jmrk 可以回答这个问题
  • @Ifaruki 感谢您的链接,尽管我找到了参考。它是 Frida-api,而不是 v8。

标签: v8 shared-objects frida


【解决方案1】:

我似乎误解了原始链接中评论的上下文。我的印象是Module.load 是一个 v8 主义,而实际上它似乎是一个 Frida-API。

https://frida.re/docs/javascript-api/#module

我在编写代码以使用Module.getExportByNamedlopendlsym 的地址传递给我的CModule 代码的条目时发现了这一点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-20
    • 2021-04-18
    • 2016-08-29
    • 1970-01-01
    • 2012-07-05
    • 1970-01-01
    相关资源
    最近更新 更多