- 博客(14)
- 资源 (18)
- 收藏
- 关注
原创 error C2872: 'ULONG_PTR' : ambiguous symbol
错误:error C2872: 'ULONG_PTR' : ambiguous symbol 解决方法:在stdafx.h中加入 #ifndef ULONG_PTR #define ULONG_PTR unsigned long* #endif如果提示错误错误:error C2872: 'LONG_PTR' : am
2013-12-31 16:55:26 2198
转载 无法删除文件:无法读源文件或磁盘”
电脑里有一个文件夹,很奇怪的,鼠标放上去,显示“文件是空的”,每次删除都会提示“无法删除 文件:无法读源文件或磁盘”,删除不掉,真是麻烦。想了其他的办法,还是搞不定。后来,终于在花果山寨看到了解决办法,多谢。解决办法是这样的建立一个文本文件,写入下面的内容:DEL /F /A /Q \\?\%1RD /S /Q \\?\%1然后呢,把这个文件命名
2013-12-31 11:10:22 847
转载 如何HOOK桌面窗口消息
代码详见:http://download.csdn.net/detail/swanabin/6771465需求:截获桌面窗口鼠标单击事件,解析所选中的桌面 Item,并将解析后的 item 信息发送给主调程序,并将信息显示在一个窗口上面。如下图: 思路:1. 确定HOOK的类型。很明显,这一个进程外的HOOK,我们的应用程序DesktopCaptor2.
2013-12-26 11:49:30 5681 2
转载 批处理常用特殊符号
1、@ 命令行回显屏蔽符 2、% 批处理变量引导符 3、> 重定向符 4、>> 重定向符 5、&、 1、@ 命令行回显屏蔽符 2、% 批处理变量引导符 3、> 重定向符 4、>> 重定向符 5、&、 6、| 命令管道符 7、^ 转义字符 8、& 组合命令 9、&& 组合命令 10、|| 组合命令
2013-12-26 11:34:04 1637
转载 我的Hook学习笔记
一、基本概念: 钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。 钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,
2013-12-26 11:30:15 1048
转载 代码注入的三种方法
源码下载地址:如何将代码注入不同的进程地址空间,然后在该进程的上下文中执行注入的代码。本文将介绍三种方法:1、Windows 钩子 2、CreateRemoteThread 和 LoadLibrary 技术 ——进程间通信3、CreateRemoteThread 和WriteProcessMemory 技术 ——如何用该技术子类化远程控件 ——何时使用该技术
2013-12-26 11:24:20 4028
转载 CreateRemoteThread简单应用
要实现线程的远程注入必须使用Windows提供的CreateRemoteThread函数来创建一个远程线程该函数的原型如下:HANDLE CreateRemoteThread( HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTH
2013-12-26 11:16:55 947
转载 函数开始处的MOV EDI, EDI的作用
调试程序调试到系统库函数的代码时,总会发现系统函数都是从一条MOV EDI, EDI指令开始的,紧接着这条指令下面才是标准的建立函数局部栈的代码。对系统DLL比如ntdll.dll进行反汇编,可以发现它的每个导出函数都是如此,并且每个导出函数开始处的MOV EDI, EDI上面紧接着5条NOP指令。比如在WinDbg中查看TextOutA周围的代码: 0:000> u TextOutA-0x0
2013-12-25 10:59:15 7466
原创 eax,ebx,ecx,edx,esi,edi,ebp,esp寄存器的作用
eax,ebx,ecx,edx,esi,edi,ebp,esp寄存器的作用eax, ebx, ecx, edx, esi, edi, ebp, esp等都是X86汇编语言中CPU上的通用寄存器的名称,是32位的寄存器。如果用C语言来解释,可以把这些寄存器当作变量看待。比方说:addeax,-2 ; //可以认为是给变量eax加上-2这样的一个值。这些32位寄存器有多种用途,
2013-12-25 10:32:31 1416
转载 C++函数调用原理理解
空程序:int main(){00411360 push ebp ;压入ebp00411361 mov ebp,esp ;ebp = esp,保留esp,待函数调用完再恢复,因为函数调用中肯定会用到esp.00411363 sub esp,0C0h ;esp-=0C0h(192);为该函数留出临时存储区
2013-12-25 10:16:15 705
原创 WinDBG常用断点命令
WinDBG提供了多种设断点的命令:bp 命令是在某个地址 下断点, 可以 bp 0x7783FEB 也可以 bp MyApp!SomeFunction 。 对于后者,WinDBG 会自动找到MyApp!SomeFunction 对应的地址并设置断点。 但是使用bp的问题在于:1)当代码修改之后,函数地址改变,该断点仍然保持在相同位置,不一定继续有效; 2)WinDBG 不会把bp断点
2013-12-21 16:01:38 889
原创 利用bu命令下延迟断点
bu可以针对符号下断点.这里是用bu下延迟断点的意义在于即使目标驱动没有被加载,windbg也允许我们针对符号设置断点.当新加载驱动程序后,windbg就会检查驱动程序中是否包含了设置了延迟断点的函数.如果找到了,就把断点替换为地址形式,然后再设置断点kd> bu Sys!DriverEntry
2013-12-21 15:45:43 1001
原创 Windbg 查看SSDT表
SSDT HOOK 的原理其实非常简单,我们先实际看看KeServiceDescriptorTable是什么样的。 lkd> dd KeServiceDescriptorTable 8055ab80 804e3d20 00000000 0000011c 804d9f48 8055ab90 00000000 00000000 00000000 0000000
2013-12-21 11:25:24 3541
原创 fatal error U1087: cannot have : and :: dependents for same target Stop.
完成后编译,发现有错误 D:\WinDDK\7600.16385.1\bin\makefile.new(7117) : fatal error U1087: cannot have : and :: dependents for same target Stop. 一检查,原来是项目的路径中有空格,把项目弄到没有空格的路径里面去clear一下,再编译就解决。
2013-12-20 18:29:37 1466
dotnetfx_cleanup_tool
2015-07-23
error C4996
2015-07-11
解决rdlc报错 An error occurred during local report processing
2015-07-07
VC 常见编译错误.pdf
2015-02-13
ReloadKernel(重载内核全程分析)
2014-02-25
如何HOOK桌面窗口消息
2013-12-26
代码注入的三种方法
2013-12-26
Windows下DNS ID欺骗的原理与实现
2013-11-16
NDIS+IM防火墙安装文件和源代码
2013-07-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人