自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

商少

切勿好高骛远,患得患失

  • 博客(11)
  • 资源 (11)
  • 收藏
  • 关注

原创 SEH 进阶(2)

上一篇我们自己手动了解了编译器SHE 的机构,下面我们来学习一下其结构体定义以及如何借用这样的结构构建一个完整的SHE 结构。首先我们来看加入系统的SHE 链表的结构:typedef struct _EXTEND_EXCEPTION_RECORD_{ //Stdandard ESP in frame; //PEXCEPTIO

2017-04-28 21:46:13 627

原创 SEH 进阶(1)

SHE进阶了解了上一篇的文章之后,我们写一个简单的例子来验证我们的想法,并学习新的知识。不同的编译器提供的增强版本SHE 可能不同,但是它们都是基于windows 底层SHE 的。我们使用Win10 1703 + VS2010 生成X86 Rlease 程序来验证已经学过的知识,后面使用XP x86 7600 来学习编译器版本的SHE。编译如下程序#define WIN32_LEA

2017-04-23 19:12:27 1576

原创 SEH 入门

SEH 机制Structedexception handling 结构化异常处理的简称。这里介绍的异常处理并不是我们通常看到的__try__catch 语句,而是操作系统提供的一种异常机制。通过这种称为SHE 的机制,用户可以通过定义注册自己的异常处理函数以在异常出现的时候有机会执行自己的代码,决定程序流程。我们平时直观看到的异常处理机制都是编译器建立在windows SHE 基础之上的一

2017-04-21 09:55:47 667

原创 小记录

#include #include void Func2(inttemp){ temp++;}int Func3(intiTemp,int iTemp1){ return iTemp1+iTemp;}int Func1(intparam1,int param2){ Func2(param2); return Func3(1,param1);

2017-04-17 23:51:25 131

原创 Drag And Drop 进阶

Drag And Drop 进阶上一篇文章我们介绍了基本的Drag And Drop 编程和其运行机制。为了我们的初衷,自动往打开的explorer 管理窗口发送我们的文件,我们应该想到,如果采用静态的枚举当前所有窗口然后进行独立的操作的话,新生成的资源管理器窗口无法被操作。因此,我们应该想一种方法,即使是新生成的窗口也会运行我们的代码。答案是:窗口钩子。窗口钩子简介SetWi

2017-04-17 15:34:32 796

原创 Drag Drop 入门介绍

鼠标拖拽简介初衷完成一个给打开的QQ窗口自动发送文件的程序。使用在资源管理器中进行拖拽操作,没有键盘操作的话。不同分区间默认为拷贝,同分区间默认为move操作。如果加上键盘操作,则会规定操作的类型如下:Shift       moveCtrl                    copyAlt             link另外:Drag系统文件

2017-04-17 10:01:55 3787

原创 枚举窗口的两种方法(自己实现 AND API)

#include <Windows.h>#include <stdio.h>// 枚举特定类窗口的所有子窗口,或者特定标题等等void EnumWindows(HWND hParent,LPCSTR szTargetClassName){ // 这种方法获得的窗口可能已经销毁了 CHAR szClass[0x100]; HWND hChild = GetWi...

2017-04-10 16:58:28 2349

原创 IAT注入

IAT 注入 的主要思路就是在PE 中增加一个节,然后将导入表拷贝到当前的节中,在导入表后面增加一个新的导入项,并将导入表重定向到当前的表中。一般情况下,我们的节头到段的真正的开始位置是有一定的空闲区域的。下图为我们的示例程序SimpleEXE.exe的节头,可以看出来,我们的第一个段的起始文件偏移为0x400虽然IMAGE_OPTIONAL_HEADER32. SizeOfHea

2017-04-08 11:17:59 1656

原创 MemoryModule阅读与PE文件解析(五)----导出表

上一篇我们介绍了TLS。下面来看关于函数入口函数: // get entry point of loaded library   if(result->headers->OptionalHeader.AddressOfEntryPoint != 0) {       if (result->isDLL) {            DllEntryProc DllEntry

2017-04-06 12:47:55 878

原创 MemoryModule阅读与PE文件解析(四)---深入理解TLS

下面的操作是关于TLS 和 PE 入口点函数的,首先,了解什么是TLS。TLS 是线程局部存储的简称,这种机制的特殊之处就在于,线程相关。对于普通的变量来说,如果它是全局或静态的,那么如果多线程程序同时访问可能会造成逻辑问题,TLS提供了一种简便的方法来实现线程访问与该线程相关联的全局或静态变量的方法。TLS 分为静态和动态动态TLS如下图所示:PEB 中有一个

2017-04-05 21:13:03 1900 2

原创 MemoryModule阅读与PE文件解析(三)

前面我们提到一个函数 CopySections ,该函数将文件中的段拷贝到我们申请的内存中,并按照内存页面的大小进行对齐。拷贝过程中设置了每个段的PhysicalAddress的值为该段的虚拟地址,用于后面的操作。要理解这个段,首先应该理解_IMAGE_SECTION_HEADER 中  的联合体union {            DWORD   PhysicalAddress;

2017-04-04 21:04:05 861

ffmpeg avframe to jpeg

ffmpeg avframe to jpeg

2022-07-06

ffmpeg 4.4 sdl2 音频播放器

ffmpeg 4.4 sdl2 音频播放器

2022-02-19

ffmpeg 4.4 player with rgb24 bitmap

ffmpeg 4.4 player with rgb24 bitmap

2022-02-14

ffmpeg sdl2.0 rgb24 player

ffmpeg 4.4 + sdl 2.0 rgb24 格式播放器

2022-02-13

ffmpeg demo,将输入文件中的视频流转换为单帧ppm 文件rgb24格式

ffmpeg demo,将输入文件中的视频流转换为单帧ppm 文件rgb24格式

2022-02-08

进程创建监控

Ring3+Ring0 控制进程创建

2017-07-31

APC注入实现代码

纯Ring0 + Ring3 交互

2017-07-30

WhoUseMe-查看谁占用了我的文件

Win7-64-bit

2017-07-30

获得鼠标下资源管理器路径(Demo)

2017-02-26

获得鼠标下资源管理器路径

2017-02-25

当前鼠标下的文件夹(桌面)路径

当前鼠标下的文件夹(桌面)路径

2017-02-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除