平时我门写的程序都是EXE吧..我还没写过DLL文件...今天试着弄了一个....有时候我们
看到很多后门程序就是一个DLL...
在这里功能代码我用几天前自己在吧里发的那个简单的代码
过程
1打开VC++6.0..开始我们的DLL
2修改代码.加入我们的简单函数,就是我们这个DLL要完成什么任务(重要)
2用rundll32.exe运行我们的程序
具体如下
1 file--New--Project--Win32 Dynamic-Link Library,输入dll名称..比如"sysnap"
然后选择A DLL that export some symbols,点击Finish。
2 修改代码
在sysnap.cpp中把所有代码都删掉..把下面代码粘帖进去..其实只是修改原来的一些东西
和加入一个函数而已
// sysnap.cpp : Defines the entry point for the DLL application.
//
#include "stdafx.h"
#include "sysnap.h"
#include <windows.h>
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
sysnap();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
SYSNAP_API void sysnap() //输出你电脑用户名
{
const int nBufSize = MAX_COMPUTERNAME_LENGTH + 1;
DWORD nSize = nBufSize;
char name[nBufSize];
GetComputerName(name,&nSize);
MessageBox(NULL,name,TEXT("信息"), MB_ICONINFORMATION );
}
然后在sysnap.h中加上一句
SYSNAP_API void sysnap() ;
到此就完成了....编译后得到一个sysnap.dll文件
3运行它
把sysnap.dll文件拷贝到c:\windows\system32目录下
CMD运行..用CD命令定位到c:\windows\system32目录
运行命令 rundll32.exe sysnap.dll,sysnap
这时候我们的dll就运行起来了...在我的机里弹出一个对话框..显示sysnap
也许你明白了后门的工作原理吧
接下来有时间讲一下线程注入...到时候也会用这个DLL来做我们的实验
看到很多后门程序就是一个DLL...
在这里功能代码我用几天前自己在吧里发的那个简单的代码
过程
1打开VC++6.0..开始我们的DLL
2修改代码.加入我们的简单函数,就是我们这个DLL要完成什么任务(重要)
2用rundll32.exe运行我们的程序
具体如下
1 file--New--Project--Win32 Dynamic-Link Library,输入dll名称..比如"sysnap"
然后选择A DLL that export some symbols,点击Finish。
2 修改代码
在sysnap.cpp中把所有代码都删掉..把下面代码粘帖进去..其实只是修改原来的一些东西
和加入一个函数而已
// sysnap.cpp : Defines the entry point for the DLL application.
//
#include "stdafx.h"
#include "sysnap.h"
#include <windows.h>
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
sysnap();
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
SYSNAP_API void sysnap() //输出你电脑用户名
{
const int nBufSize = MAX_COMPUTERNAME_LENGTH + 1;
DWORD nSize = nBufSize;
char name[nBufSize];
GetComputerName(name,&nSize);
MessageBox(NULL,name,TEXT("信息"), MB_ICONINFORMATION );
}
然后在sysnap.h中加上一句
SYSNAP_API void sysnap() ;
到此就完成了....编译后得到一个sysnap.dll文件
3运行它
把sysnap.dll文件拷贝到c:\windows\system32目录下
CMD运行..用CD命令定位到c:\windows\system32目录
运行命令 rundll32.exe sysnap.dll,sysnap
这时候我们的dll就运行起来了...在我的机里弹出一个对话框..显示sysnap
也许你明白了后门的工作原理吧
接下来有时间讲一下线程注入...到时候也会用这个DLL来做我们的实验