Kaba加密驱动器解密代码

Kaba加密驱动器解密代码
点评:以前看Kaba的驱动,它发现它的kl1.sys读参数启动,然后解密数据驱动下的驱动程序内存分配负载本身(加载代码填充IAT部分BUG)。

写一个解密程序:

只是klick.sys

#包括stdafx.h。H

#包括窗口。H

#包括

以前看Kaba的驱动,发现其kl1.sys读参数在启动,然后解密数据驱动下的驱动程序和分配内存加载(加载代码本身充满了IAT部分BUG)。

写一个解密程序:

只是klick.sys

#包括stdafx.h。H

#包括窗口。H

#包括恒基达鑫。H

#包括malloc的。

无符号char数据{ 256 } { { { { }

0x42,0xa3,0x53,0x04,0x4d,0x4b,0xa3、0xC4,0xec,0xf8,0xe5、0x41。

0x95,0x59,7d,0xf3,0x98,0xbd,0xdc、0xd4,0x1F,0xe9,0xc1,0xd9。

0x85,0x0b,0x7B,0x14,0x56,0x12,0x33,0xcc,0xfd,0x47,0x48,0xf5。

0x3d,0x2F,0xB6、0xC4,0x66,0xd3,0xdd,0x73,0x54,0xae,0xe4,0x4f。

0xbc,0x4e,0x7c、0x66,0xf4,0x90,0xcd,0xA1,0xa2,0xf7,0xB6,0xdd。

0x10,0x14,0x20,预料,0xf4,0x3C,0x2c、0x7a,0x87,0x30,0xab,0x3C。

0x4d,0x63,0xad,0xcb,0xb3,0x13,0x94,0xfa,0x5b,0xd5,0x88,0x98。

0x20,0x3a,0xdb,0x7a,0x80,0xbd,0x1d,0x08,0xc3,0x05,0x56,0xca。

0x41,0x43,0x6a,0x2c,0x64,0x27,0x53,0xcd,0xe9,0x09,0x45,0x16。

0x0d,0x8d,0xba,0x1B,0xe1,0xf3,0xd2,0x50,0xAA,0xd1,0x3C,0xca。

0x59,0x2c,0xA1,0x21,0x9b,0x08,0xdb,小数,0x2c,0x62,0x6e,0xff。

0x90,0xFF,0x0c,0x59 0x7B 0x3a 0x08,,,,0xec,0x0A,0xc9,0xc3,0x4c。

0xc8,0x4e,0xa5、0x9c,0xb0,0xee,0xf4,0xee,0x4d,0x93,0x13,0x67。

0x01,0x5f,0x1F,0x61,0x8f,0x9e,0x57,0xac,0x44,0xb5,0xfb,0x40。

0xda,0x36,0xea,0x49,0x64,0x05,0x1a,0x1B,0x4e,0xd4,0x29,0x4d。

0xC4,0xf2,0x39,0x98,0xc9,0x2F,0xb7,0xcb,0xbd,0x6d,0xfc,0x3e。

};
int main(int argc、argv char * { })

{

文件*文件;
如果(argc!= 2)

{

printf(输入系统名称!);

返回0;
}

printf(解码DRV文件:%s

文件= fopen(argv { 1 },R B);

Fseek(文件,0,seek_end);

页T = ftell(文件);

printf(文件长度BX

则U =(ULONG)malloc(T);
Fseek(文件,0,seek_set);

DWORD Z = fread((PVOID)U,1,T,文件);
Fseek(文件,0,seek_set);
页我;

为(i = 0;i;t;i)
{

__asm

{

把EDX

把ecx

mov EDX,U

mov ecx,我

mov eax,我

和EAX,0xff

MOV AL,数据{中}

{ Al } XOR ECX EDX,

pop ecx

流行分析

}
}

printf(%

Fwrite((PVOID)U,1,T,文件);

Fclose(文件);

printf(好!);

返回0;
}
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部