wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
阅读:1878回复:8

wowocock,Mjjj,V大等诸老大们来瞧下从Ntdll中导出Native API的问题,郁闷了..

楼主#
更多 发布于:2007-03-20 17:37
  pBaseAddr = GetLibraryBase("ntdll.dll");
    if ( pBaseAddr == NULL)
    {
        DbgPrint(" GetLibraryBase(ntdll.dll) Fail\n");
    }    

    else
    {
        DbgPrint(" (ntdll.dll) BASE %x\n",pBaseAddr );  (//打印: BASE 7c920000
        PNtOpenProcess = (NNtOpenProcess)GetFuncFromDLL( pBaseAddr , "NtOpenProcess");
        DbgPrint("NtOpenProcess %x\n",PNtOpenProcess); //此处是7c92dd7b
        DbgPrint("Memory NtOpenProcess %x\n",NtOpenProcess); //打印  805cb987
    }

为啥得到的不一样呢?我是用NtQuerySystemInformation得到的ntdll.dll在内存中的地址.
wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-03-20 18:47
等.
wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-03-21 09:06
V大,为啥我跳到ntdll的NtOpenProcess去执行时,就直接蓝屏了呢?
wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-03-21 16:01
收到,看来不能跳到 ntdll.dll 中去执行...
wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-03-21 16:02
多谢V大,对于没有在NTOSKRNL中导出的函数,我用啥办法搜索呢???难道申请块内存,逐字节查找?听说有个SSDTShadow不知放在哪里.
wangjianfeng
驱动小牛
驱动小牛
  • 注册日期2004-05-28
  • 最后登录2013-10-02
  • 粉丝0
  • 关注0
  • 积分1002分
  • 威望263点
  • 贡献值0点
  • 好评度260点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-03-22 10:07
真够难的,多谢V大一直帮忙.
游客

返回顶部