下载此文档

注入程序代码.doc


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
注入函数核心代码#include <> #include <> // 构造注入函数// 插入进程 BOOL RemoteLoadLibrary ( HANDLE hProcess , LPCSTR lplibFileName ) { // 入口参数 hProcess 进程 ID lplibFileName 要注入的 DLL 路径// 返回值如果是 TRUE 注入成功否则失败 PCHAR lpRemoteLibFileName =( PCHAR ) VirtualAllocEx ( hProcess , NULL , lstrlenA ( lplibFileName )+1, MEM_CO MMIT , PAGE_READWRITE ); //VirtualAllocEx 在指定进程空间分配虚拟空间//hProcess 申请内存所在的进程句柄// NULL 保留页面的内存地址,设置为 NULL 自动分配//lstrlenA(lplibFileName)+1 计算欲分配的内存大小// MIT 为特定的页面区域分配内存中或磁盘的页面文件中的物理存储// PAGE_READWRITE 可读写该内存区域 if( lplibFileName == NULL ) { return FALSE ;} // 写入 WriteProcessMemory ( hProcess , lpRemoteLibFileName ,( void *) lplibFileName , lstrlenA ( lplibFileName )+1, NULL ); // 使目标进程调用 LoadLibrary ,加载 DLL PTHREAD_START_ROUTINE pfnStartAddr = ( PTHREAD_START_ROUTINE ) GetProcAddress ( GetModuleHandle ( _T( "" )), "LoadLibraryA" ); HANDLE hRemoteThread = CreateRemoteThread ( hProcess , NULL ,0, pfnStartAddr , lpRemoteLibFi leName ,0, NULL ); if( hRemoteThread == NULL ) { return FALSE ;} // 等待 LoadLibrary 加载完毕 WaitForSingleObject ( hRemoteThread , INFINITE ); // 获得 GetModuleHandle 的返回值 DWORD ExitCode ; GetExitCodeThread ( hRemoteThread ,& ExitCode ); CloseHandle ( hRemoteThread ); // 释放目标进程中申请的空间 VirtualFreeEx ( hProcess , lpRemoteLibFileName ,0, MEM_RELEASE ); return ExitCode ;} void CDLLIjectDlg :: OnBnClickedButton1 () { // TODO: 在此添加控件通知处理程序代码// 获取操作系统信息 S

注入程序代码 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人yzhlyb
  • 文件大小49 KB
  • 时间2017-02-15