zoukankan      html  css  js  c++  java
  • 关于ntoskrnl.exe模块的IAT

    IAT hook一般来说没有问题,ntoskrnl比较不一样,它的输入表在.INIT节,但是被加载之后这个节就补丢弃了,以至于想在内存中解析PE获取IAT将全部失效。但是文件中IAT的RVA跟内存中是一样的,当然这里指的是FirstThunk,面不是OriginalFirstThunk

    比如ntoskrnl输入表的KDCOM.DLL的KdSendPacket函数如下

    lkd> u KdSendPacket
    nt!KdSendPacket:
    8053fc3e ff2544914d80    jmp     dword ptr [nt!_imp__KdSendPacket (804d9144)]  ;ntoskrnl基址为804d8000h,则rva为1144h
    8053fc44 cc              int     3
    8053fc45 cc              int     3
    8053fc46 cc              int     3
    8053fc47 cc              int     3
    8053fc48 cc              int     3
    8053fc49 cc              int     3
    

      

    下图的本地文件中这个函数的FirstThunkRVA也是1144h

    自此,.INIT节被丢弃没关系

  • 相关阅读:
    后续阶段第二天
    后续阶段第一天
    冲刺第五天
    冲刺第四天
    冲刺第三天
    冲刺第二天
    第二阶段-冲刺第一天
    第一阶段项目总结
    冲刺(7)
    团队开发冲刺第一阶段_6
  • 原文地址:https://www.cnblogs.com/dcai/p/2793914.html
Copyright © 2011-2022 走看看