中卫网站设计厂家太原关键词优化公司

bicheng/2026/1/21 2:19:50/文章来源:
中卫网站设计厂家,太原关键词优化公司,中科院网站做的好的院所,fc网页游戏排行榜程序功能是利用NtQueueApcThreadEx注入ShellCode到一个进程中#xff0c;程序运行后会让你选择模式#xff0c;按1为普通模式#xff0c;所需的常规API接口都是使用Windows原本正常的API#xff1b;在有游戏保护的进程中Windows原本正常的API无法使用#xff0c;这时候需要…程序功能是利用NtQueueApcThreadEx注入ShellCode到一个进程中程序运行后会让你选择模式按1为普通模式所需的常规API接口都是使用Windows原本正常的API在有游戏保护的进程中Windows原本正常的API无法使用这时候需要选择内核模式按2选择内核模式。 内核模式下使用的一些关键API都是我自己在ring0从0实现的本帖仅开源普通模式下的代码。内核模式下使用的关键API以及调用框架不开源。 选择模式之后需要输入被注入进程的PID 项目包含三个源代码文件1.源.cpp 2.fun.asm 3.fun.h 首先是源.cpp文件代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 插入代码 /* * 函数原型 NTSTATUS NtQueueTHreadApcEx( _in HANDLE thread, _in UCHAR flags,0:常规用户APC1特殊用户APC _in PAPCFUNC apcRoutine, _in PVOID context1, _in PVOID arg1, _in PVOID arg2 ); 需要从Ntdll.dll模块显式导出GetProcAddress */ #define _CRT_SECURE_NO_WARNINGS #includestdio.h #includeWindows.h #includeTlhelp32.h #includefun.h HWND hwndG  0; BOOL CALLBACK EnumWindowsProc(     HWND hwnd,     LPARAM lParam) {     WCHAR path[MAX_PATH]  { 0 };     WCHAR* text  (WCHAR*)lParam;     GetWindowText(hwnd, path, MAX_PATH);     if (lstrcmpW(text, path)  0)     {         hwndG  hwnd;         return FALSE;     }     else     {         hwndG  0;         return TRUE;     } } DWORD WINAPI GetThreadIdByProcessId(DWORD dwProcessId) {     THREADENTRY32 th32;     th32.dwSize  sizeof(THREADENTRY32);     DWORD dwThreadId  0;     HANDLE hdTool  CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, dwProcessId);     if (Thread32First(hdTool, th32))     {         do         {             if (th32.th32OwnerProcessID  dwProcessId)             {                 dwThreadId  th32.th32ThreadID;                 //printf(%d\n, dwThreadId);                 break;             }         } while (Thread32Next(hdTool, th32));     }     else     {         DWORD dwErro  GetLastError();         //printf(遍历进程失败!——%d, dwErro);         return dwErro;     }           return dwThreadId; } BOOL WINAPI PrivilegeAdjust() {     BOOL flag;     HANDLE token;     if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, token))     {         //printf(打开令牌失败!\n);         flag  FALSE;     }     LUID pid;     if (!LookupPrivilegeValueA(NULL, SeDebugPrivilege, pid))     {         //printf(查看特权ID失败\n);         flag  FALSE;     }     TOKEN_PRIVILEGES tp;     tp.PrivilegeCount  1;     tp.Privileges[0].Luid  pid;     tp.Privileges[0].Attributes  SE_PRIVILEGE_ENABLED;     if (!AdjustTokenPrivileges(token, FALSE, tp, sizeof(TOKEN_PRIVILEGES), NULL, NULL))     {         //printf(提升特权失败\n);         flag  FALSE;     }     return TRUE; } typedef BOOL(*MYTYPE)(HANDLE, LPVOID, LPVOID, SIZE_T, SIZE_T*); typedef HANDLE(*OPPS)(DWORD, BOOL, DWORD); typedef BOOL(*WRMEMEX)(HANDLE, LPVOID, LPVOID, SIZE_T, SIZE_T*); typedef HANDLE(*OPTS)(); typedef ULONG64(*GETPEB)(DWORD); typedef NTSTATUS(*NTQUEAPC)(HANDLE, UCHAR, PVOID, PVOID, PVOID, PVOID); WRMEMEX Read; WRMEMEX Write; OPPS OpenPro; OPTS OpenThr; NTQUEAPC NtQueueUserApcEx; VOID InitFrmak() {     printf(内核\n);     NtQueueUserApcEx  NULL;     HMODULE mod  LoadLibraryA(ApiSystemCall.dll);     Read  (WRMEMEX)GetProcAddress(mod, YhReadProcessMemory);     Write  (WRMEMEX)GetProcAddress(mod, YhWriteProcessMemory);     OpenPro  (OPPS)GetProcAddress(mod, YhOpenProcess);     OpenThr  (OPTS)GetProcAddress(mod, YhOpenThread);     NtQueueUserApcEx  (NTQUEAPC)GetProcAddress(GetModuleHandleA(ntdll.dll), NtQueueApcThreadEx);     if (NtQueueUserApcEx  NULL)     {         MessageBoxA(NULL, 获取函数失败, 0, 0);     } } VOID InitFrmakEx() {     NtQueueUserApcEx  NULL;           printf(普通\n);     Read  ReadProcessMemory;     Write  WriteProcessMemory;     OpenPro  OpenProcess;     OpenThr  OpenThread;     NtQueueUserApcEx  (NTQUEAPC)GetProcAddress(GetModuleHandleA(ntdll.dll), NtQueueApcThreadEx);     if (NtQueueUserApcEx  NULL)     {         MessageBoxA(NULL, 获取函数失败, 0, 0);     } } typedef VOID(*FUN)(); int main() {     DWORD pid;     SIZE_T size0;     CONTEXT text;     VirtualProtect(fun, 0x60, PAGE_EXECUTE_READWRITE, pid);     *(ULONG64*)((((UCHAR*)fun2)[0x34]))  MessageBoxA;     *(ULONG64*)((((UCHAR*)fun2)[0x9f]))  SetWindowsHookExA;     //fun(NULL,NULL,NULL);     printf(请输入模式\n1.普通模式\n2.内核模式\n);     scanf(%d, size);     (size1)? InitFrmakEx(): InitFrmak();     printf(请输入进程PID\n);     scanf(%d, pid);     PrivilegeAdjust();           HANDLE hd  OpenPro(PROCESS_ALL_ACCESS, FALSE, pid);     PVOID mem  VirtualAllocEx(hd, NULL, 0X1000, MEM_COMMIT, PAGE_EXECUTE_READWRITE);     DWORD tid  GetThreadIdByProcessId(pid);     HANDLE td;     if (size  1)     {         td  OpenThr(THREAD_ALL_ACCESS,FALSE,tid);     }     else     {         td  OpenThr(tid, hd, THREAD_ALL_ACCESS, FALSE);     }     if (!Write(hd, mem, fun2, 0x100, size))     {         MessageBoxA(0, 写入失败, 0, 0);     }     SuspendThread(td);     NTSTATUS code  NtQueueUserApcEx(td, 1, (PVOID)(((ULONG64)mem)0x53), tid, 0, 0);     if(code!0)     {                   printf(%x\n, code);         MessageBox(0, 0, 0, 0);     }     ResumeThread(td);     system(pause);     return 0; } fun.asm文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 .code MessageBoxA proto fun2 proc     push rbp;     mov rbp,rsp;     sub rsp,060h;     xor rax,rax;     cmp rcx,rax;     jnz sub_1;     cmp rdx,09h;;虚拟键代码0x9为键盘的TAB键     jnz sub_1;     xor rcx,rcx;     lea rdx,qword ptr[lab_2];     xor r8,r8;     xor r9,r9;     mov rax,qword ptr[lab_1];     call rax; sub_1:     mov rsp,rbp;     pop rbp;     ret; fun2 endp lab_1:     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h; lab_2:     db 0c2h;     db 0edh;     db 0bbh;     db 0afh;     db 0cch;     db 0dah;     db 0cah;     db 0c7h;     db 0c9h;     db 0b5h;     db 0b1h;     db 0c6h;     db 0a3h;     db 0a1h;     db 00ah;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h; fun proc           push rbp;     mov rbp,rsp;     sub rsp,080h;     mov r9,rcx;     mov rcx,02h;     lea rdx,qword ptr [fun2];     xor r8,r8;     mov rax,qword ptr [sub_2];     call rax;     cmp rax,0;     jnz lab_3;     xor rcx,rcx;     xor rdx,rdx;     xor r8,r8;     mov r9,02h;     mov rax,qword ptr [lab_1];     call rax; lab_3:     mov rsp,rbp;     pop rbp;     ret; sub_2:     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h;     db 00h; fun endp end fun.h文件 1 2 3 #pragma once #includeWindows.h void fun(PVOID a, PVOID b, PVOID c); shellCode的功能是给被注入进程设置一个键盘钩子TAB键。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/88309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度网站怎么做信息什么是网站优化

天.一辈子也打不完哪.再问: 50到吧再答: http://zhidao.baidu.com/question/238264424.html 个网址里面有一些,因为有字数限制,我不好发题目给你,所以你自己去看看吧。 例 解方程: (1)2xxx31; (2)15x215 x1…

公司网站建设费维护费会计分录策划公司网站

LeetCode_209 长度最小的子数组 LeetCode_209 长度最小的子数组 题目要求 给定一个含有 n** 个正整数的数组和一个正整数 target 。** 找出该数组中满足其总和大于等于target 的长度最小的 连续子数组[nums<sub>l</sub>, nums<sub>l1</sub>, ..., nums…

网站建设有前途吗爱站网做网站吗

目录 前言 一、应用层的作用 1.1 应用层的作用 二、HTTP协议 2.1 HTTP协议 三、FTP协议 3.1 FTP协议 四、DNS协议 4.1 DNS协议 五、DHCP协议 5.1 DHCP协议 六、邮件协议 6.1 电子邮件协议 总结 前言 本篇文章给出了CSDN网络技能树中的部分练习题解析&#xff0c…

聊城做wap网站价格企业做网站要

大家在一些网络安全检查中&#xff0c;可能经常会遇到“三高一弱”这个说法。那么&#xff0c;三高一弱指的是什么呢&#xff1f; 三高&#xff1a;高危漏洞、高危端口、高风险外连 一弱&#xff1a;弱口令 一共是4个网络安全风险&#xff0c;其中的“高危漏洞、高危端口、弱…

辛集手机网站建设wordpress去掉顶部

题目描述&#xff1a; A 和 B 在一个 3 x 3 的网格上玩井字棋。 井字棋游戏的规则如下&#xff1a; 玩家轮流将棋子放在空方格 (" ") 上。 第一个玩家 A 总是用 “X” 作为棋子&#xff0c;而第二个玩家 B 总是用 “O” 作为棋子。 “X” 和 “O” 只能放在空方格中&…

做微信网站公司哪家好百度竞价开户3000

目录 一、写在前面 二、关键词概括 1.找音乐前考虑什么&#xff1f; 2.常见的情绪关键词 3.常见的音乐风格关键词 三、思路总结 1.旅拍vlog/文旅宣传片 1&#xff09;.世界音乐/民族音乐 2&#xff09;.史诗音乐 3&#xff09;.中国传统乐器 2.炫酷/时尚/节奏感片子 …

那家网站建设好南充房产网二手房出售信息

dhtmlxScheduler是一个类似于Google日历的JavaScript日程安排控件&#xff0c;日历事件通过Ajax动态加载&#xff0c;支持通过拖放功能调整事件日期和时间&#xff0c;事件可以按天&#xff0c;周&#xff0c;月三个种视图显示。 DHTMLX Scheduler正式版下载 在本教程中&…

博罗惠州网站建设郫县城乡规划建设管理局网站

2024.1.29今天我学习了如何使用el-tree的setChecked用法&#xff0c;在使用el-tree的时候我们需要进行回显情况&#xff1a;如&#xff1a; [{id:1,name:张三, children:[{id:1-1,name:张三四},{id:1-2,name:张三五}]}, {id:2,name:李四}] 如果我们存id&#xff1a; [1,2]&a…

网站制作哪些类型网站建设980元

判断页面是否存在某元素 Selenium没有直接提供判断是否存在的方法&#xff0c;可以使用findElements返回的数量判断&#xff1b;或者判断findElement是否抛出异常 webDriver.findElements(By.xpath("(//div[classel-button-group]//button)[1]")).size()isDisplaye…

监控摄像头做直播网站flash分享网站

Android工具adb的下载安装与环境配置详细教程如下&#xff1a; 一、下载ADB ADB通常作为Android SDK的一部分提供&#xff0c;因此&#xff0c;您可以从Android开发者网站下载Android Studio&#xff0c;并在安装时选择包括ADB。 另外&#xff0c;您也可以通过官方下载地址直…

漳州网站建设选博大不错faq插件 wordpress

目录 1.2 现阶段人工智能方法和技术领域 1.2.1 从技术应用场景展开 计算机视觉 语音识别 自然语言处理 1.2.2 实现AI的技术工具 机器学习的主要类型&#xff1a; 深度学习的重要性&#xff1a; 1.2 现阶段人工智能方法和技术领域 1.2.1 从技术应用场景展开 计算机视觉…

做动态图网站外贸soho

上一节我们讲了DS1302的工作原理&#xff0c;这一节我们开始代码演示。 新创建一个工程写上框架 我们需要LCD1602进行显示&#xff0c;所以我们要将LCD1602调试工具那一节的LCD1602的模块化代码给添加进来 然后我们开始创建一个DS1302.c和DS1302.h 根据原理图&#xff0c;为了…

dw做网站怎么上线简约网站模版

1 RowKey设计 重要&#xff1a;一条数据的唯一标识就是 rowkey&#xff0c;那么这条数据存储于哪个分区&#xff0c;取决于 rowkey 处于 哪个一个预分区的区间内&#xff0c;设计 rowkey的主要目的 &#xff0c;就是让数据均匀的分布于所有的 region 中&#xff0c;在一定程度…

网站建设软件开发公司深圳做app网站的公司哪家好

题目描述 长江游艇俱乐部在长江上设置了 n 个游艇出租站 1,2,⋯,n。游客可在这些游艇出租站租用游艇&#xff0c;并在下游的任何一个游艇出租站归还游艇。游艇出租站 i 到游艇出租站 j 之间的租金为 r(i,j)&#xff08;1≤i<j≤n&#xff09;。试设计一个算法&#xff0c;计…

林业公司网站模版深圳办公室设计公司排名

在计算机技术中,虑拟化是一种资源管理技术,是将计算机的各种实体资源(CPU、内存、磁盘空间、网络适配器等),予以抽象、转换后呈现出来并可供分区、组合为一个或多个电脑配置环境。 目前,大多数服务器的容量的利用率不足15%,这导致服务器数量激增以及增加了复杂性。服务…

建站网站免费网站开发技术框架

写在前面&#xff1a; 在进程间通信中&#xff0c;有一种方式内存映射。内存映射也是进程间通信的方式之一&#xff0c;其效率高&#xff0c;可以直接对内存进行操作。本节我们对内存映射进行学习&#xff0c;并结合案例进行实践。 1、基本理论 内存映射&#xff1a;是将磁盘文…

公司使用威联通nas做网站存储厦门城乡住房建设厅网站首页

北大清华在国内可是著名高校&#xff0c;也是不少学子梦寐以求的院校&#xff0c;当然这也就早就竞争激烈的现状&#xff0c;无论是高考还是攻读MBA。那么在剧烈竞争压力下&#xff0c;我们怎么能提高被名校录取的几率呢&#xff0c;我今天从材料关和面试关为大家做一个详细的解…

企业网站建设的类型wordpress 分类显示文章列表

了解了&#xff0c;如果要深入探讨Lambda表达式转换为委托类型的编译过程&#xff0c;我们需要关注C#编译器如何处理这个转换。这个过程涉及到编译时的类型推断、匿名方法的创建&#xff0c;以及生成对应的委托实例。我们来更详细地分析这个过程&#xff1a; 编译阶段 1. 解…

网站服务器租用售价建设网站的一般过程

Hi&#xff0c;大家好&#xff0c;我叫consul&#xff0c;翻译成中文叫做“领事”&#xff0c;其实我更喜欢叫自己为中介&#xff0c;因为我觉得自己做的事情和房产中介非常像。比如说想要卖房的房东到我这边登记&#xff0c;我将房屋信息登录到我的表格中&#xff08;服务注册…

微网站解决方案什么是社交电商平台

FTP&#xff08;File Transfer Protocol&#xff09;是一个用于在网络上的计算机之间传输文件的协议。它属于网络协议组的应用层&#xff0c;主要用于文件的上传、下载和文件管理操作&#xff0c;是一种比较通用、操作也比较简单的传输方式。不过随着国产化大浪潮的推进&#x…