首页
社区
课程
招聘
[旧帖] [求助]KiAttachProcess恢复后,还是提示无法附加进程 0.00雪花
发表于: 2012-5-28 10:49 1820

[旧帖] [求助]KiAttachProcess恢复后,还是提示无法附加进程 0.00雪花

2012-5-28 10:49
1820
其中NtOpenProcess\NtOpenThread   \NtReadVirtualMemory \NtWriteVirtualMemory
都测试能够绕过TP的保护了;也查看了下KiAttachProcess的地址,已经恢复成功了,但提示还是:无法附加XXX.exe进程
是不是在应用层也进行HOOK了,所以OD无法附加?
那我应该如何去查看应用层所HOOK函数的地址?
求帮助……在这里已经困惑好久了,求大神帮忙点透一下

KiAttachProcess
函数的HOOK恢复如下:

ULONG Pass_KiAttachProcess()
{
        //  *UX++;
        unsigned char *KiAttachProcessAddress;
        BYTE    *KeAttachProcessAddress = NULL;  //KeAttachProcess函数地址
        BYTE    *p;
        BYTE    MovEaxAddress[5]  = {0xB8,0,0,0,0};  //
        BYTE    JmpEax[2]      = {0xff,0xe0};
        KIRQL    Irql;
        //特征码
        BYTE  Signature1 = 0x56,  //p-1
                Signature2 = 0x57,  //p-2
                Signature3 = 0x5F,  //p-3
                Signature4 = 0x5E,  //p+5
                Signature5 = 0xE8;  //p第一个字节
        KeAttachProcessAddress = (BYTE*)GetNt_OldAddr(L"KeAttachProcess");
        if (KeAttachProcessAddress == NULL)
                return  0;
        //将p指向KeAttachProcess函数开始处
        p = KeAttachProcessAddress;
        while (1)
        {
                if ((*(p-1) == Signature1) &&
                        (*(p-2) == Signature2) &&
                        (*(p+5) == Signature3) &&
                        (*(p+6) == Signature4) &&
                        (*p    == Signature5))
                {
                        //定位成功后取地址
                        KiAttachProcessAddress = (UCHAR *)*(PULONG)(p+1)+(ULONG)(p+5);
                        break;
                }
               
                //推动指针
                p++;
        }
        int i;
        unsigned char newcode[] = { 0x8b, 0xff, 0x55, 0x8b, 0xec, 0x53, 0x8b};
       
        WPOFF();
        Irql = KeRaiseIrqlToDpcLevel();
       
        for(i=0;i < 7;i++)
        {
                KiAttachProcessAddress[i] = newcode[i];
        }
       
        KeLowerIrql(Irql);
        WPON();
       
        return 1;
       
}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 32
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
而且,CE能够正常的打开扫描游戏内存,唯独测试了OD的好几个版本,都无法去附加到进程
2012-5-28 10:52
0
雪    币: 32
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
求解OD附加进程都需要用到哪些函数
2012-5-28 16:16
0
游客
登录 | 注册 方可回帖
返回
//