考察动态调试、IAT hook 、 tea 、 RC4
跟进加密函数进行分析
key的话可以直接动调得到:
难点可能在 encrypt
函数里面,跟进查看:
其实这就是一个 16轮tea
的展开计算,看到第一个数可能还看不出来 delta
,但是看到汇编:
是可以看出 delta=9E3779B9
,验算一下
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <string.h>
int main() {
uint32_t delta = 0x9E3779B9;
uint32_t a = 0;
for(int i = 0 ; i < 3 ; i++){
a += delta;
printf("%X ",a);
// 9E3779B9 3C6EF372 DAA66D2B
}
}