CreateRemoteThread
来源:互联网 发布:sequoiadb巨杉数据库 编辑:程序博客网 时间:2024/05/21 10:00
#include <windows.h>#include <tchar.h>#include <stdio.h>bool Start(TCHAR* buff,DWORD pid);BOOL EnablePrivilege(LPCTSTR lpszPrivilegeName, BOOL bEnable);int main (void){EnablePrivilege(SE_DEBUG_NAME,TRUE);//获取本进程权限DWORD lpdword,pid;TCHAR strbuff[100]={0};memcpy(strbuff,TEXT("D:\\个人资料\\桌面\\WKS\\dll.dll"),100);HWND hwnd=FindWindow(NULL,TEXT("ok"));if (hwnd){lpdword=GetWindowThreadProcessId(hwnd,&pid);}else{printf("没有找到句柄\n");return 0;}Start(strbuff,pid);return 0;}bool Start(TCHAR* buff,DWORD pid){HANDLE hProcess=OpenProcess(PROCESS_ALL_ACCESS,FALSE,pid);//打开进程if (hProcess){int len=_tcslen(buff);LPVOID pAddr=VirtualAllocEx(hProcess,NULL,len,MEM_COMMIT, PAGE_READWRITE); //在远程进程申请内存空间if (pAddr){if (WriteProcessMemory(hProcess,pAddr,buff,len,NULL)) //写dll路径到目标进程{PTHREAD_START_ROUTINE pfnStartAddr = (PTHREAD_START_ROUTINE)GetProcAddress(GetModuleHandle(TEXT("Kernel32")), "LoadLibraryA"); //获取函数地址if (pfnStartAddr){DWORD lpdword;HANDLE rThread;rThread=CreateRemoteThread(hProcess,NULL,NULL,pfnStartAddr,pAddr,0,&lpdword);if (rThread)printf("远程线程执行成功!");CloseHandle(rThread);}}}CloseHandle(hProcess);}return true;}BOOL EnablePrivilege(LPCTSTR lpszPrivilegeName, BOOL bEnable){HANDLE hToken = NULL;TOKEN_PRIVILEGES tp;LUID luid;if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY | TOKEN_READ, &hToken))return FALSE;if(!LookupPrivilegeValue(NULL, lpszPrivilegeName, &luid))return TRUE;tp.PrivilegeCount = 1;tp.Privileges[0].Luid = luid;tp.Privileges[0].Attributes = (bEnable) ? SE_PRIVILEGE_ENABLED : 0;AdjustTokenPrivileges(hToken, FALSE, &tp, NULL, NULL, NULL);CloseHandle(hToken);return (GetLastError() == ERROR_SUCCESS);}
0 0
- CreateRemoteThread
- CreateRemoteThread
- CreateRemoteThread
- CreateRemoteThread
- CreateRemoteThread (转)
- CreateRemoteThread 使用
- experiment:+CreateRemoteThread
- CreateRemoteThread 详解
- CreateRemoteThread详解
- CreateRemoteThread详解
- CreateRemoteThread函数
- CreateRemoteThread 牛刀小试
- CreateRemoteThread简单应用
- CreateRemoteThread简单应用
- CreateRemoteThread和WriteProcessMemory技术
- bypass HIPS CreateRemoteThread Monitor
- bypass HIPS CreateRemoteThread Monitor
- 简单的CreateRemoteThread例子
- 使用GitHub和Hexo搭建免费静态Blog
- css技巧总结
- CPP链表实现栈
- java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDispatcher
- POJ_3368_Frequent values_线段树/ST稀疏表
- CreateRemoteThread
- 读json文件
- Android 网络管理
- hdu 1298 T9 字典树+DFS
- jQuery与javascript方法比较
- python之一些细节
- 编写高质量IOS代码(二)
- 登录加密测验
- zendstudio新建phplocal工程,配置apache服务器