- 博客(23)
- 资源 (35)
- 问答 (1)
- 收藏
- 关注
原创 读PE文件的3大结构体_PE文件加载器
#include"stdio.h"#include"stdlib.h"#include"windows.h"int main(){ IMAGE_DOS_HEADER imafe_dos_header;//dos头 IMAGE_NT_HEADERS image_nt_headers;//pe头 IMAGE_SECTION_HEADER *image_section_header;//区
2017-02-06 11:16:14 351
转载 文件指针详解,SetFilePointerEx设置和查询文件指针
1. 文件指针我们大概已经知道该如何创建或者打开一个文件,用CreateFile函数可以轻松做到,还不了解的小伙伴,请穿越到http://www.cnblogs.com/bigsponge/articles/4936599.htmlCreateFile函数会使系统创建一个文件内核对象来管理对文件的操作。在这个内核对象内部有一个文件指针,这是我们今天的主角。文件指针究竟是什么?文件指针是一个
2017-02-06 09:09:39 3421 1
原创 最后一次异常法_操作笔记
最后一次异常法首先要把Alt+o 调试设置 把忽略 所有异常的 √都取消掉因为 要让异常出现按SHIFT+F9 让异常出现 数几次 直到软件异常这些异常就是壳的代码 断在最后一次异常 教程显示SE处理程序 有可能是SE句柄 反正是SE开头的 右键反汇编窗口跟随断下 se这里 后单步跟踪 注意向上的跳转- Jmp ebp 如果是-好 没有上 没有下 通常
2017-02-05 23:49:05 999
转载 最后一次异常的原理和走出异常的方法及IAT的修复问题。
对于最后一次异常,在脱壳中用得挺多,但是对于为什么它能脱壳,以前还是有点疑问的。。。首先,对于这种方法,我想应该从壳的角度出发来说说,壳通过某种方法,在程序运行之前,拿到控制权,怎么样拿到它的控制权呢?我想:应该是 INT 3 , 当然还有一些其他的方法,想一些 调试器的函数, SDK 和 WDK 里面可以去查到的,最近开始设计一些驱动方面的东西,才知道ring 0 , 是多么的强大,哦,
2017-02-05 23:42:25 923 1
转载 动态链接库和静态链接库
1、含义区别1、静态链接库只包含:lib文件;动态链接库包含:lib文件和dll文件,静态链接库中不能再包含其他的动态链接库或者静态库,而在动态链接库中还可以再包含其他的动态或静态链接库。此外他们都会用到定义了函数和相关数据结构的.h头文件,其中:.h头文件是编译时必须的,lib是链接时需要的,dll是运行时需要的。 2.静态链接库的lib是静态编译出来的(obj文件的集合
2017-02-05 09:14:49 216
转载 模块与进程的关系
来自以下内容的整理:CSDN论坛的模块与进程之间是什么关系?模块句柄和进程句柄的区别?1、win32环境中,一个进程代表一个正在运行的应用程序,或说代表一个应用程序的实例,而一个线程代表进程里代码的一条执行线路。进程本身是惰性而不执行任何代码的,每个进程至少有一个主线程,由主线程在进程的环境里执行代码。当然,也可以有多个线程。所以其实在win32下进程与
2017-02-05 09:13:00 960
原创 用户层加载驱动 卸载驱动源码
#include CString s1 = TEXT("MyDriver1.sys"); //lpServiceNameCString s2 = TEXT("C:\\MyDriver1.sys");//lpPathNameBOOL CMFCApplication1Dlg::jiazaiqudong(LPCTSTR lpServiceName, LPCTSTR lpPathName)//加载驱
2017-02-04 07:18:42 781
转载 应用层 加载驱动 和 卸载驱动代码
BOOL LoadDriver(char* lpszDriverName,char* lpszDriverPath){ char szDriverImagePath[256] = {0}; //得到完整的驱动路径 GetFullPathName(lpszDriverPath, 256, szDriverImagePath, NULL); BOOL bRet =
2017-02-04 06:41:45 499
转载 资源加载操作_FindResource_LoadResource_LockResource
FindResource是一个计算机函数。该函数确定指定模块中指定类型和名称的资源所在位置。参数编辑hModule:处理包含资源的可执行文件的模块。NULL值则指定模块句柄指向操作系统通常情况下创建最近过程的相关位图文件。lpName:指定资源名称。若想了解更多的信息,请参见注意部分。lpType:指定资源类型。若想了解更多的信息,请参见注意部分。作为标准资源类型。这个参数的含义同Enu
2017-02-04 06:01:05 4083
转载 MFC将任意文件放入资源中调用
将一个版本的程序包含到另一个版本(母体)里面,母体在运行的时候,判断是不是自己需要的版本,如果是,那么就运行,如果不是,那么释放出包含的那个版本的程序,然后运行释放出来的程序。 这样就没有必要将两个程序捆绑到一起,只是把一个程序当作那个母体程序的资源包含到母体程序里面 新建了一个mfc工程,然后在查看资源的地方,选择添加资源,会出现一个对话框,一 个打开文件对话框,这里选择打开一个exe文
2017-02-04 05:38:06 3197
转载 VC++编程构建DLL动态链接库建立与测试调用
各位亲爱的朋友:我们又在第11款VIP课程相会了,那么,这节课,我将与您分享VC++编程构建DLL动态链接库建立与测试调用。编程思路:编程的话您只需要编写一次,了解到编写的效果,以后想要这种功能效果都是这么编写。对编写的代码越熟悉,就越容易延伸它与修改它。具体编写技巧:动态链接库英文为DLL,是Dynamic Link Library 的缩写形式DLL不是可执行文件。MFC
2017-02-04 03:40:57 303
原创 脱壳_两次断点法找oep
两次断点法调试之前od要设置 选项 调试设置(alt+o)异常 把这些东西全都打上√全都忽略 忽略所有异常点 alt+m 或点M找到我们的exe要找到与程序名字相同的段 程序领空属于程序本身的段 在程序的代码地址下断在.rsrc 数据输入表 下F2断点 然后 再按shift+f9 (Shift+F9 忽略异常运行)第二次断点 还选M (快捷键alt
2017-02-03 21:33:45 489
原创 脱壳_单步跟踪找oep
单步跟踪 注意哪个call跑飞了 哪个call向上的向上跳的 就要选中下行 F4运行到所选 关键要看跳转已经实现了选中下行 F4看到popad 就代表出栈 注意到oep了注意call 跑飞了 再次进入这个call
2017-02-03 11:46:33 354
原创 脱壳_esp定律操作
esp定律有Pushad Call ASPack_2.0101300A 走到这行 esp是红色的 只有esp是红色的 选中esp 在数据窗口中跟随 然后选中 000DFF64地址后的hex数据 只要是这个地址开头后的10000个都行选中右键 断点 硬件访问 选byte word dword三个选哪个都行 f9 运行 跑起来 断下
2017-02-03 10:53:10 769
转载 脱壳_esp定律原理
本帖最后由 zf616545 于 2014-10-2 22:14 编辑ESP定律算是我们在脱壳当中最常使用的方法之一,也特别适合像我一样的新手!而今天文章说的是ESP脱壳的原理和分析!只有知道原理了,我们的技术才能走得列远!一.准备知识在我们开始讨论ESP定律之前,我先给你讲解一下一些简单的汇编知识。1.call这个命令是访问子程序的一个汇编基本指令。也许你说,这个我早就知道了!别
2017-02-03 10:47:07 2169
转载 PE文件结构详解--可执行文件头
了解一个文件的格式,最应该首先了解的就是这个文件的文件头的含义,因为几乎所有的文件格式,重要的信息都包含在头部,顺着头部的信息,可以引导系统解析整个文件。所以,我们先来认识一下PE文件的头部格式。还记得上篇里的那个图吗?DOS头和NT头就是PE文件中两个重要的文件头。一、DOS头DOS头的作用是兼容MS-DOS操作系统中的可执行文件,对于32位PE文件来说,DOS所
2017-02-03 08:01:56 271
转载 赞!VC++编程学会使用D与R版通用调试输出功能,方便排错。
19.赞!VC++编程学会使用D与R版通用调试输出功能,方便排错。各位亲爱的朋友:我们又在第11款VIP课程相会了,那么,这节课,我将与您分享VC++编程学会使用D与R版通用调试输出功能,方便排错。编程思路:编程的话您只需要编写一次,了解到编写的效果,以后想要这种功能效果都是这么编写。对编写的代码越熟悉,就越容易延伸它与修改它。具体编写技巧:借箭源码:18.赞!VC++编程创建远程线程式
2017-02-02 23:57:09 345
转载 赞!VC++编程创建远程线程式调用CALL_VirtualAllocEx_WriteProcessMemory_CreateRemoteThread_WaitForSingleObject
16赞!VC++编程创建远程线程式调用CALL。借箭源码:14.解密!远程CALL调用代码实现原理。VirtualAllocEx 在指定进程里申请一块内存LPVOID WINAPI VirtualAllocEx( __in HANDLE hProcess, //进程句柄 __in_opt LPVOID lpAddress, //指定分配的内存地址 N
2017-02-02 22:19:17 2006
转载 CreateRemoteThread_远程CALL调用代码实现原理。
各位亲爱的朋友:我们又在第11款VIP课程相会了,那么,这节课,我将与您分享远程CALL调用代码实现原理。编程思路:编程的话您只需要编写一次,了解到编写的效果,以后想要这种功能效果都是这么编写。对编写的代码越熟悉,就越容易延伸它与修改它。具体编写技巧:源码借箭:13.赞!VC++如何调试出代码异常错误地方。CreateRemoteThread 创建一个在其它进程地址空间中运行的线程HA
2017-02-02 07:02:58 2542
转载 居合斩!一个简单的技术轻松多思路找使用背包物品CALL。
各位亲爱的朋友:我们又在第11款VIP课程相会了,那么,这节课,我将与您分享一个简单的技术轻松多思路找使用背包物品CALL。通杀思路:找使用背包物品CALL以下思路突破口:1.通过封包API函数:bp send bp WSASend bp sendto bp WSASendto OD下断截获堆栈alt+k里返回数据。2.通过OD背包格内存地址下断,背包格有物品大于0,没一般0,游戏里使用背
2017-02-02 05:30:34 2284
转载 赞!VC++如何调试出代码异常错误地方_try_except(1)抛出异常
各位亲爱的朋友:我们又在第11款VIP课程相会了,那么,这节课,我将与您分享VC++如何调试出代码异常错误地方。编程思路:编程的话您只需要编写一次,了解到编写的效果,以后想要这种功能效果都是这么编写。对编写的代码越熟悉,就越容易延伸它与修改它。具体编写技巧:借箭:12.赞!VC++内联汇编编程学习。异常处理功能:让程序更稳定。 __try { } __except(1) {
2017-02-02 02:35:57 1504
转载 监控应用层通信_hook_kifastcallentry(系统服务调用)
#include"ntddk.h"#pragma pack(1) //写这个内存以一字节对齐 如果不写是以4字节的对齐的 typedef struct ServiceDescriptorEntry {//这个结构就是为了管理这个数组而来的 内核api所在的数组 才有这个结构的 这个是ssdt unsigned int *ServiceTableBase;//就是ServiceT
2017-02-02 00:36:23 882
转载 inlinehook_ssdt的ntopenkey函数的任意位置
#include"ntddk.h"#pragma pack(1) //写这个内存以一字节对齐 如果不写是以4字节的对齐的 typedef struct ServiceDescriptorEntry {//这个结构就是为了管理这个数组而来的 内核api所在的数组 才有这个结构的 这个是ssdt unsigned int *ServiceTableBase;//就是ServiceTable
2017-02-01 00:22:34 832
Visual C++编程与项目开发
2017-06-25
MFCWindows程序设计
2017-06-24
Windows驱动开发技术详解
2017-06-19
Windows设备驱动程序WDF开发及源码
2017-06-19
寒江独钓——Windows内核安全编程(随书光盘)源码
2017-06-09
《Windows内核原理与实现》书内工具
2018-10-03
汇编语言_基于x86处理器第7版_中文高清完整版PDF_带索引书签 2本
2018-08-02
SymbolTypeViewer_1_0_0_6最新版
2018-07-25
SymbolTypeViewer_符号连接
2017-10-29
MoonLight Engine 1365.4.0.34 ML Engine (CE修改版)
2017-08-01
WDF驱动加载卸载工具
2017-07-12
WDM设备驱动程序开发(第2版)附书光盘
2017-07-10
WinPcap 4.1.3_最新可用版
2017-06-30
IRPTrace.rar 破解版_100%能用
2017-06-29
wdf驱动怎么安装?? 求助
2017-07-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人