lwglucky
驱动牛犊
驱动牛犊
  • 注册日期2003-01-06
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望129点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
阅读:1549回复:6

一个驱动程序运行时,如何驱动程序如何自己知道是那个应用程序调用的自己??

楼主#
更多 发布于:2004-07-15 10:56
一个驱动程序运行时,如何驱动程序如何自己知道是那个应用程序调用的自己??

最新喜欢:

aasa2aasa2
眼底手高
lifeship
驱动小牛
驱动小牛
  • 注册日期2002-10-18
  • 最后登录2005-07-19
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-07-27 00:22
找出名字偏移,名字偏移可以通过查找system process进程的PEPROCESS,得出,具体如下
在某一driverentry调用如下


#define SYSNAME  "System"
ULONG GetProcessNameOffset(VOID)
{
    PEPROCESS       curproc;
    int             i;

    curproc = PsGetCurrentProcess();

    //
    // Scan for 12KB, hoping the KPEB never grows that big!
    //
    for( i = 0; i < 3*PAGE_SIZE; i++ ) {
    
        if( !strncmp( SYSNAME, (PCHAR) curproc + i, strlen(SYSNAME) )) {

            return i;
        }
    }

    //
    // Name not found - oh, well
    //
    return 0;
}
杯汝前来,  老子今朝,  放荡形骸!  甚长年抱渴,  咽如焦釜,  于今喜醉,  气似奔雷!  慢说刘伶,  古今达者,  醉后何妨死便埋! 
robin12
驱动牛犊
驱动牛犊
  • 注册日期2002-02-11
  • 最后登录2014-03-27
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望63点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-07-17 14:57
在windbg中用kb命令看调用栈
RED_spring
驱动中牛
驱动中牛
  • 注册日期2002-07-28
  • 最后登录2016-11-06
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望19点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2004-07-16 16:35
问题是ddk中的
PEPROCESS ps = IoGetCurrentProcess( );对PEPROCESS没有描述啊。。


一个未公开的结构。可以看作是PROCESS OBJECT的指针。
RED_spring
驱动中牛
驱动中牛
  • 注册日期2002-07-28
  • 最后登录2016-11-06
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望19点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2004-07-16 16:07
取当前进程id啊!


看你的driver的类型了。 如果你的driver是在上一级或更上一级driver的系统线程中工作,当前进程就是系统进程。通过这种方法也就无法获得用户进程。
lwglucky
驱动牛犊
驱动牛犊
  • 注册日期2003-01-06
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望129点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-07-16 15:17
问题是ddk中的
PEPROCESS ps = IoGetCurrentProcess( );对PEPROCESS没有描述啊。。
眼底手高
管理员
驱动中牛
驱动中牛
  • 注册日期2004-04-23
  • 最后登录2010-06-17
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望67点
  • 贡献值0点
  • 好评度26点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-07-15 11:02
取当前进程id啊!
游客

返回顶部