windows编程
文章平均质量分 70
ToringZZZ
坚定的行走在技术的道路上
展开
-
PE文件详解1——PE文件头部解析
参考书籍:《WindowsPE文件权威指南》MSDN中winnt.h是PE文件定义的最终决定者。EXE文件与DLL文件之间的区别完全是语义上的,二者PE结构完全相同。唯一区别用一个字段标示处这个文件是exe还是dll。许多DLL扩展,如OCX控件,控制面板等都是DLL,它们有一样的实体。64位的Windows只是对PE格式做了一些简单的修饰,新格式叫PE32+。没有新的结构加进去,其余原创 2016-06-27 11:24:05 · 2998 阅读 · 0 评论 -
TLS(线程局部存储)以及基于TLS技术的反调试技术
基于TLS回调的反调试技术介绍原创 2017-03-12 17:20:42 · 649 阅读 · 0 评论 -
配置Sublime Text3编译汇编并高亮代码
Sublime设置汇编编译以及汇编代码高亮。原创 2017-03-20 20:29:54 · 9350 阅读 · 1 评论 -
进程的默认堆与自建堆
进程的默认堆与自建堆相关问题原创 2017-03-05 13:26:27 · 654 阅读 · 0 评论 -
更改PE文件加载动态库
更改PE文件,加载Dll原创 2017-03-08 19:46:28 · 1776 阅读 · 0 评论 -
获得目标进程PEB,并获得进程各种信息
Ring3层获得目标进程PEB结构原创 2017-02-14 11:39:24 · 5671 阅读 · 0 评论 -
编程实现执行CMD命令-用照片查看器打开图片
在C++中执行cmd指令的两种方法:方法1:rundll32.exe C:\\Windows\\System32\\shimgvw.dll,ImageView_Fullscreen D:\\Image\\ScreenShot.png方法2:WinExec("rundll32.exe C:\\Windows\\System32\\shimgvw.dll,ImageView_Fullscreen原创 2017-02-10 13:16:03 · 8587 阅读 · 2 评论 -
进程间通讯(五)--共享内存(文件映射)
进程间通讯之共享内存原创 2017-02-16 22:21:25 · 396 阅读 · 0 评论 -
进程间通讯(四)--剪切板
进程间通讯之剪切板操作原创 2017-02-16 21:24:39 · 403 阅读 · 0 评论 -
进程间通讯(三)--套接字
进程间通讯之套接字编程原创 2017-02-16 18:21:42 · 335 阅读 · 0 评论 -
进程间通讯(二)--管道
进程间通讯,命名管道和匿名管道的实现原创 2017-02-16 14:25:06 · 334 阅读 · 0 评论 -
进程间通讯(一)--邮件槽
进程间通讯之邮槽的实现。原创 2017-02-16 14:10:53 · 1627 阅读 · 0 评论 -
Ring 3层枚举进程的四种方法
1.CreateToolhelp32Snapshot()。这一种是比较常见的,利用进程快照进行枚举进程,主要利用CreateToolhelp32Snapshot()、Process32First()和 Process32Next()三个函数。下面直接上代码:// CreateToolhelp32Snapshot.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h原创 2017-01-08 21:16:13 · 6409 阅读 · 0 评论 -
注入(4)--消息钩子注入(SetWindowsHookEX)
SetWindowsHookEx函数是微软提供给程序开发人员进行消息拦截的一个API。不过,他的功能不仅可以用作消息拦截,还可以进行DLL注入。SetWindowsHookEx原型声明如下:WINUSERAPIHHOOKWINAPISetWindowsHookExW( _In_ int idHook, _In_ HOOKPROC lpfn, _In_opt_ HI原创 2016-10-02 23:36:57 · 18771 阅读 · 2 评论 -
注入(3)--远程线程注入(CreateRemoteThread)
// CreatRemoteThread.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include using namespace std;enum TargetType{ WOW_86, WOW_64, WOW_ERROR};BOOL EnableDebugPrivil原创 2016-09-28 20:01:34 · 719 阅读 · 0 评论 -
注入(2)--APC(Asynchronous Procedure Call)注入(异步过程调用)
APC(Asynchronous Procedure Call,异步过程调用)是在一个特定线程环境下被异步执行的函数,分为用户模式APC和内核模式APC。每个线程都有一个APC队列。在用户模式下,当线程调用SleepEx、WaitForSingleObjectEx等进入"Alterable WaitStatus"状态(可警告的等待状态)的时候,系统会遍历该进程的APC队列,然后按照先进先出的顺序来原创 2016-10-02 00:02:11 · 680 阅读 · 0 评论 -
注入(1)--注册表注入
在Windows NT/2000/XP/3000操作系统中,当需要加载user32.dll的程序启动时,user32.dll会加载注册表键HKEY_LOCAL_MACHINE\Software\Microsoft\windowsNT\CurrentVresion\Windows\AppInit_Dlls下边列出的所有模块,所以,可以将外挂模块写在AppInit_Dlls键下,待程序启动后,再将痕迹原创 2016-10-02 00:05:24 · 916 阅读 · 0 评论 -
注入(5)---导入表注入(HookINT)
导入表是WindowsPE文件中的一组数据结构,可执行程序(即EXE文件)被加载到地址空间后,每个导入的DLL模块都有一个对应的导入表,PE加载器会根据导入表来加载进程需要的其他DLL模块。导入表的数据结构如下:typedef struct _IMAGE_IMPORT_DESCRIPTOR { union { DWORD Characteristics;原创 2016-10-13 00:26:13 · 2924 阅读 · 0 评论 -
反调试技术(一)--静态反调试
静态反调试技术以及反调试破解技术原创 2017-03-13 18:42:56 · 2284 阅读 · 0 评论