- 博客(5)
- 收藏
- 关注
原创 SEH反调试
SEH:函数原型_except_handler( struct _EXCEPTION_RECORD *ExceptionRecord,void * EstablisherFrame,struct _CONTEXT *ContextRecord,void * DispatcherContext);逆向工程489
2021-09-26 15:36:08 182
原创 Windows操作系统(一)
程序是只一个静态的指令序列。进程是一个容器。Windows进程的构成私有的虚拟地址空间、可执行程序、句柄表、访问令牌的安全环境、进程ID、线程。每个windows进程都有自己私有的内存空间,但是内核模式的操作系统和设备驱动程序代码共享同一个虚拟内存地址空间。虚拟内存中的每一页面都被 标记了处理器必须在什么访问模式下才可以读和写。系统空间中的页面只有在内核模式下才可以访问,而用户地址空间的所有页面都可以在用户模式下访问。只读页面(比如那些包含静态数据的页面)在任何模式下都是不可写的。此外,在支持不可
2021-08-11 15:56:11 226
转载 判断当前运行进程权限
判断当前运行进程权限// checkProcessAdmin.cpp : Defines the entry point for the console application.//#include <Windows.h>#include<stdio.h>void ShowProcessIntegrityLevel(){ HANDLE hToken; HANDLE hProcess; DWORD dwLengthNeeded; DWORD dwError = E
2021-08-05 08:49:35 261
原创 如何获取ssdt函数索引
cuckoo源码分析MapNtdllIntoMemory()主要作用在内存中加载一份ntdll.dll,然后获取导出目录表地址。PVOID MapNtdllIntoMemory(){ NTSTATUS status; HANDLE hSection; OBJECT_ATTRIBUTES objAttr; UNICODE_STRING pathFile; USHORT NumberOfSections; SECTION_IMAGE_INFORMATION sii = {0}; PVOID
2021-08-05 07:59:14 269
原创 2020-09-25
分析 加法 反汇编环境:vs 2017编译器分析软件:ollydebug首先先找到自己的模块#include<stdio.h>int add(int a, int b){ return a + b;}int main(){ int c = 0; c=add(1, 2); printf("%d", c); return 0;}1.加载程序先断到当前位置,回车2.进入到第一个CALL3.三个连续的call,往下数第三个4.最下面的call5.找到
2020-09-25 21:45:55 97
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人