GetModuleFileNameA获取病毒的自身路径

获取当前进程已加载模块的文件的完整路径,该模块必须由当前进程加载。

DWORD WINAPI GetModuleFileName(

     _In_opt_  HMODULE hModule, //模块句柄
     _Out_     LPTSTR lpFilename, //存放地址
     _In_      DWORD nSize //大小
);

#include "stdafx.h"
#include "windows.h"
int main(int argc, char* argv[])
{
char path[80];
GetModuleFileName(0,path,80);
printf("Hello World!\n");
return 0;
}


反汇编代码:

00401210         /$  8B4424 04   mov     eax, dword ptr [esp+4]  ;  auto.00408A70
00401214         |.  68 04010000 push    80                ; /BufSize = 80
00401219         |.  50          push    eax                 ; |PathBuffer
0040121A         |.  6A 00       push    0                   ; |hModule = NULL
0040121C         |.  FF15 6C7040>call    dword ptr [<&KERNEL32.GetModule>; \GetModuleFileNameA ;把病毒的文件路径保存在eax里
00401222         |.  F7D8        neg     eax         
00401224         |.  1BC0        sbb     eax, eax
00401226         |.  F7D8        neg     eax
00401228         \.  C3          retn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值