EPO是写病毒用的一门防杀技巧,从文件头的地方跳转,在一定程度上防止AV检测,跳转地方选择的越深,隐藏性能越好。
跳转处的选择一般决定于LDE(专门分析指令长度的引擎)的性能。搞个LDE很麻烦,我的想法,是搞个通用表,里面放上常用的编译器编译出来的exe的指令,比如MFC的:
004021D0 H> 55 push ebp
004021D1 8BEC mov ebp,esp
004021D3 8B45 14 mov eax,dword ptr ss:[ebp+14]
004021D6 50 push eax
004021D7 8B4D 10 mov ecx,dword ptr ss:[ebp+10]
004021DA |. 51 push ecx
将当前宿主的文件头跟表里的比较,如果一样,那就桉MFC的程序算,往下跳转的地方选择的深一点。表里再放上别的常用编译器特征,虽然说通用性能差,但是速度快,也不占用空间,个人感觉有点前途,没见过此类东西出现,或许有人已经用过也未必。