V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
ng29
V2EX  ›  程序员

关于 hook 和注入

  •  1
     
  •   ng29 · 2020-07-28 11:28:45 +08:00 · 4564 次点击
    这是一个创建于 1608 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有个需求是修改进程里 用户自定义的函数,使用的是静态编译; 想修改某个函数 在其基础上增加逻辑的话,有没有 hook 或注入的 框架推荐

    13 条回复    2020-07-29 09:37:48 +08:00
    no1xsyzy
        1
    no1xsyzy  
       2020-07-28 11:45:45 +08:00
    gdb ?
    ysc3839
        2
    ysc3839  
       2020-07-28 11:51:06 +08:00 via Android
    什么架构、系统?
    IsaacYoung
        3
    IsaacYoung  
       2020-07-28 11:52:33 +08:00
    detours
    ng29
        4
    ng29  
    OP
       2020-07-28 13:49:38 +08:00
    @ysc3839 linux x64
    ng29
        5
    ng29  
    OP
       2020-07-28 13:50:26 +08:00
    @IsaacYoung linux 下 x64 有没有类似的框架推荐?
    ysc3839
        6
    ysc3839  
       2020-07-28 14:20:34 +08:00 via Android
    @ng29 https://github.com/stevemk14ebr/PolyHook_2_0
    看看这个?好像支持 Linux 。
    kernelpanic
        7
    kernelpanic  
       2020-07-28 14:24:18 +08:00
    frida
    ng29
        8
    ng29  
    OP
       2020-07-28 15:15:13 +08:00   ❤️ 1
    @ysc3839 看了下不支持 linux 感谢。
    ng29
        9
    ng29  
    OP
       2020-07-28 15:19:55 +08:00
    @kernelpanic 看 frida 是 基于动态库的 静态库的有没有推荐?
    lamy
        10
    lamy  
       2020-07-28 18:02:37 +08:00 via Android
    objcopy --redefine-syms
    可以直接修改库的函数名称,然后在你的代码里调用被修改的函数名,用你的实现替换原来的实现就可以了。
    YouKnowIt
        11
    YouKnowIt  
       2020-07-28 19:42:21 +08:00
    got 导入表 hook,稳定一点;想折腾一点,inline hook ;推荐 got hook
    Crimilals
        12
    Crimilals  
       2020-07-29 08:19:35 +08:00 via iPhone
    自己用 capstone 撸一个吧
    MaxLi77
        13
    MaxLi77  
       2020-07-29 09:37:48 +08:00
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   844 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 21:32 · PVG 05:32 · LAX 13:32 · JFK 16:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.