首页 > TAG信息列表 > LPVOID
逆向 | 通过inlinehook opengl实现cs1.6透视
逆向 | 通过inlinehook opengl实现cs1.6透视 之前一直想弄没弄的,今天给弄了。 inlinehook的原理与上一篇文章基本相同。https://www.cnblogs.com/Mz1-rc/p/16586411.html cs1.6可以是对d3d可以是opengl,先调成opengl,然后开始下面的操作。 主要就是hook glBegin这个函数,然后判断一下RtlCreateUserThread例子
不同于CreateRemoteThread直接调用win api, RtlCreateUserThread是CreateRemoteThread的底层实现,所以使用RtlCreateUserThread的原理是和使用CreateRemoteThread的原理是一样的,这个函数可以实现跨会话创建线程。唯一的问题就是:当我们在Vista 之前的操作系统调用此函数所创建的线程线程访问非静态函数
个人学习笔记 看了个觉得写了很好的博客 首先了解类的静态方法为什么无法: 程序最终都将在内存中执行,变量只有在内存中占有一席之地时才能被访问。 类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属内存操作的几个函数
在2K或XP中要想写入数据到进程中需要用VirtualProtectEx将需要修改的地址段设为:PAGE_READWRITE;然后再用WriteProcessMemory写入数据或用ReadProcessMemory读取数据;函数的形参如下:BOOL VirtualProtectEx( HANDLE hProcess, // 要修改内存的进程句柄 LPVOID lpAddress, /免杀初探
免杀大家应该都不陌生,今天初探一下 免杀思路 通过cs生成shellcode,不过现在各大厂商对于出名的shellcode:如cs,msf这些基本上达到了见光就死的程度,我这里简单的加密一下,然后通过API加载到一个进程中,并且执行,我首先希望的是有一个静态免杀效果。 环境准备 vs2019 win10 整Win32 进程操作
创建线程 #include<iostream> #include<windows.h> using namespace std; DWORD WINAPI PROCESST1(LPVOID param); DWORD WINAPI PROCESST2(LPVOID param); DWORD WINAPI PROCESST3(LPVOID param); int main3() { HANDLE Thread1, Thread2, Thread3; Threx64 Inline Hook 代码封装
Hook 技术常被叫做挂钩技术,挂钩技术其实早在DOS时代就已经存在了,该技术是Windows系统用于替代DOS中断机制的具体实现,钩子的含义就是在程序还没有调用系统函数之前,钩子捕获调用消息并获得控制权,在执行系统调用之前执行自身程序,简单来说就是函数劫持. 接着来研究一下64位程序[Win32]创建线程学习笔记
一、什么是线程 1.线程是附属在进程上的执行实体,是代码的执行流程,一个进程可以包含多个线程,但是一个进程至少要包含一个线程 图中标红处的三指的是程序有三段代码在执行,单核CPU是不存在真正的多线程。 二、CreateThread() HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreac++ 多线程编程
创建线程 HANDLE WINAPI CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, //线程内核对象的安全属性,一般传入NULL表示使用默认设置 SIZE_T dwStackSize, //线程栈空间大小。传入0表示使用默认大小(1MB) LPTHREAD_START_ROUTINE lpStartAddress, //C++/MFC中多线程使用
一。创建线程的三种方式 1.CreateThread (windows中vc++) CreateThread( _In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes, //线程属性 _In_ SIZE_T dwStackSize, //栈空间大小 _In_ LPTHREAD_START_ROUTINE lpStartAddress, //线程执行函数地址 _In_opt_ __drv_mfc创建线程简介
实际上可以这样简单的理解线程,它是CPU的调度单位.而一个线程是对应一个函数.所以别把一个线程想得太复杂,就只是执行个函数而已.只不过执行的时候是并行执行罢了.如果只是简单的几个线程不涉及使用共同的资源,没其他啥关联.就完全跟简单的执行一个函数类似.只是如果多个线私有内存的申请与释放
1.私有内存指的是物理页自己用,无法共享 2.同样一块内存被多个进程共享时,则为共享内存Map 一、申请内存的两种方式: 通过VirtualAlloc/VirtualAllocEx申请的:Private Memory //底层的实现完全一样 通过CreateFileMapping映射的:Mapped Memory 二、内存的申请与释放: LPVOID(转)Windows下C++多线程同步与互斥简单运用
1. 互斥量,Mutex [cpp] view plaincopy #include <Windows.h> #include <iostream> using namespace std; DWORD WINAPI Thread1(LPVOID lpParmeter); DWORD WINAPI Thread2(LPVOID lpParmeter); static HANDLE g_hMutex = INVALI