我遇到了一件很奇怪的事情,事情总是不加起来。 首先,我在这里发布这个,因为我不确定这与计算机病毒有什么关系。如果确实如此,请问我能否找到帮助的地方?受感染的编译器或故障?
所以现在:
我在这里有某种奇怪的问题,我的防病毒和的Malwarebytes标志码双向*编译MASM和MASM例子为病毒。我搜索了一下,发现之前出现过这个问题,所以我没有认真对待这个问题,一开始以为这是一个误报。
但我编译了你在这篇文章底部看到的代码来测试我的一些其他东西。我跑了它通过OllyDbg中(同时无视我的魔岛防病毒),然后我看到了这一点:
00401000 > -E9 FBEF6F71 JMP 71B00000 ; this is a weird jump I did not put there
00401005 90 NOP
00401006 8BC0 MOV EAX,EAX
00401008 . 8BD8 MOV EBX,EAX
0040100A . 33D9 XOR EBX,ECX
0040100C . 8BC3 MOV EAX,EBX
0040100E . 03CB ADD ECX,EBX
00401010 . 33C3 XOR EAX,EBX
00401012 . 2BC1 SUB EAX,ECX
00401014 . 8BCB MOV ECX,EBX
00401016 . 33D9 XOR EBX,ECX
下面的代码不可能编译成跳,所以我的代码加强英寸一段时间后,我看到奇怪的代码开始通过ntdll.dll库中的api进行枚举。发生了什么?如果这确实是病毒在哪里得到帮助?
但我还是不知道,这两个魔岛和的Malwarebytes弗拉格只有例子如病毒,而不是文件(test.exe的)作为病毒
测试代码,我用测试...
*: 包括\ MASM32 \包括\ masm32rt.inc
.data
.code
Start:
nop
nop
nop
nop
nop
nop
mov eax, eax
mov ebx, eax
xor ebx, ecx
mov eax, ebx
add ecx, ebx
xor eax, ebx
sub eax, ecx
mov ecx, ebx
xor ebx, ecx
invoke ExitProcess, 0h
end Start
更新:
的代码不是在磁盘上,但在内存中,因此它可能是某种形式的这样一个库:
Disassembly
00401000 start:
00401000 90 nop
00401001 90 nop
00401002 90 nop
00401003 90 nop
00401004 90 nop
00401005 90 nop
而且我已经删除了调用退出过程和它仍然存在
绝对正确的调用`ExitProcess`应该可以开始在`ntdll.dll`中执行代码。 – 2011-01-09 19:37:50
会做,并在一分钟后回来,但同时我检查了目录中的其他文件(也是ollydb),我发现olly跳到同一个地址(入口点的地址)然后我重新加载了内存中的olly,并且调试olly告诫我说,代码可能是自我模式,从我知道的病毒很少这是非常糟糕的不是吗? – Rick 2011-01-09 19:39:42