我遇到了一些很奇怪的事情,但事情就是不一样。首先,我在这里发布了这篇文章,因为我不确定这是否与电脑病毒有关。如果是的话,你能带我去一个地方找人帮忙吗?
所以现在:
我在这里遇到了一些奇怪的问题,我的反病毒和masm标记代码*都是用masm和masm示例编译成病毒的。我在谷歌上搜索了一下,发现这个问题以前就发生过,所以我没有太认真地对待这个问题,一开始我就认为它是假阳性。
但是我编译了你在这篇文章底部看到的代码来测试我的一些其他东西。我运行了ollydbg (同时忽略了我的comodo杀毒软件),然后我看到了这个:
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枚举。发生什么事了呢?如果这确实是一种病毒,在哪里可以得到帮助?
但是我仍然不确定,comodo和malwarebytes都只是作为病毒的例子,而不是文件(test.exe)作为病毒
我用来测试的代码..。
*:包括\masm32\include\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我已经删除了invoke退出过程,它仍然在那里
发布于 2011-01-09 19:37:05
关于原因不明的跳转,在google上快速搜索可以在masm32.com上找到似乎提供了有趣信息的这条线,以及最显著的:
“科莫多”网络安全是罪魁祸首。 它正在动态地修改可执行文件,以实现唯一的部分"sanbox“。
发布于 2011-01-09 19:33:53
地址71B00000与当前代码相距很远,请检查它实际上是否在其他加载模块中。甚至可能是使用invoke宏的副作用(或者仅仅使用DLL-因为ExitProcess是从DLL导入的)。试试看,如果你用一个简单的无穷无尽的循环来代替它会发生什么呢?JMP .或somesuch.当然,您必须手动关闭程序,但这将是一个有趣的数据点。此外,检查磁盘上的exe文件,以确定它在启动时是否已经有了JMP。
https://stackoverflow.com/questions/4641198
复制相似问题