首页
社区
课程
招聘
[求助]通过EPROCESS 获得进程的全路径偶尔会蓝屏,求高手指点
2011-6-2 17:11 5121

[求助]通过EPROCESS 获得进程的全路径偶尔会蓝屏,求高手指点

2011-6-2 17:11
5121
BOOLEAN GetProcessPathAndID( PEPROCESS p , ProcessInfo* pPI )
{
        ULONG peb;
        ULONG procparam;
        PUNICODE_STRING pPath;
        PULONG tmp = NULL;
        BOOLEAN bRet = FALSE;
        if ( p == NULL || pPI == NULL )
                return bRet;
        tmp = (PULONG)( (ULONG)p + XP3_EPROCESS_PEB_OFFSET );
        if ( tmp == NULL )
                return bRet;
        peb =  *tmp;
        KeAttachProcess(p);

        tmp = (PULONG)( peb + XP3_PEB_PROCESSPARAM_OFFSET );
        if (tmp == NULL )
                goto Out;

       
#if 0
        procparam = *tmp;

        pPath = (PUNICODE_STRING)( procparam + XP3_PROCESSPARAM_IMAGEPATH_OFFSET );

        if ( pPath->Buffer != NULL && pPath->Length != 0 && pPath->Length < MAX_PATH*2 )
                memcpy( pPI->szPath , pPath->Buffer , pPath->Length );

        pPI->lEPAddr = (ULONG)p;
        pPI->lPID = *(PULONG)((ULONG)p + XP3_EPROCESS_PID_OFFSET);
        bRet = TRUE;
#endif

Out:
        KeDetachProcess();
        return bRet;
}

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (3)
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
magicknife 2011-6-2 17:25
2
0
那个 #if 0 #endif 里的代码用了就蓝屏
雪    币: 542
活跃值: (264)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
KiDebug 4 2011-6-2 17:47
3
0
http://www.debugman.com/discussion/5314/
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
magicknife 2011-6-3 09:34
4
0
不行呀,还是蓝屏
游客
登录 | 注册 方可回帖
返回