分享

【推荐】MoveFileEx可以移动正在运行的程序文件

 quasiceo 2014-07-30
【推荐】MoveFileEx可以移动正在运行的程序文件
StarsunYzL 当前离线


  群里一同胞XXX正在写病毒,刚才在群里讨论感染系统文件实现自启动的方法,因为正在运行的系统文件不能进行写操作,XXX提到了先用MoveFileEx移动正在运行的系统文件,然后再Copy一份回原来的位置,再对Copy的那份进行感染。这种方法似乎很费解,正在运行的系统文件怎么可以移动?而且MSDN里MoveFileEx好像也没有这样的说明,但是事实确实可以!看下面的测试代码:

代码:
.586
.model flat,stdcall
option casemap:none

include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\user32.inc

includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib

include \masm32\macros\macros.asm

.code
Start:
    invoke MoveFileEx,SADD('C:\Windows\Explorer.exe'),SADD('C:\Explorer.exe'),MOVEFILE_REPLACE_EXISTING
    .if eax
        invoke MessageBox,NULL,SADD('OK'),SADD('OK'),MB_OK
    .else
        invoke MessageBox,NULL,LastError$(),LastError$(),MB_OK
    .endif
    invoke ExitProcess,0
end Start 
 

运行后C:\Windows\Explorer.exe就被移动到C:\Explorer.exe了,而且用进程工具查看正在运行的Explorer.exe的路径也变成了C:\Explorer.exe,好玩吧~!注意不能移动到不同的驱动器,也就是说不能移动C盘的文件到D盘。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多