07 2015 档案
摘要:xxxNTSTATUS NTAPI RtlpWin32NTNameToNtPathName_U ( IN PUNICODE_STRING DosPath, OUT PUNICOD...
阅读全文
摘要:ring0下的安全拷贝BOOLEAN SafeCopyMemory(PVOID pDestination, PVOID pSourceAddress, SIZE_T SizeOfCopy){ PMDL pMdl = NULL; PVOID pSafeAddress = NULL; ...
阅读全文
摘要:结构体中的联合体typedef struct _HANDLE_TABLE_ENTRY{ union { PVOID Object; ULONG ObAttributes; PHANDLE_TABLE_ENTRY_INFO Info...
阅读全文
摘要:原帖:nmake下一些错误的解决办法最近编译工程用到了windows下nmake工具,遇到了很多的问题,在网上苦寻答案,终于得到解决。现在把遇到的问题及解决办法写下来,希望给大家一些帮助。1.NMAKE:fatal error U1077.“cl.exe” return code0xc0000135...
阅读全文
摘要:原帖:程序崩溃时自动记录minidump的c++类封装了一个C++类,当程序意外崩溃的时候可以生成dump文件,以便确定错误原因。头文件://crash_dumper_w32.h#ifndef _CRASH_DUMPER_H_#define _CRASH_DUMPER_H_#include clas...
阅读全文
摘要:原帖:windows服务卸载之后重新安装提示“指定的服务已标记为删除”个人解决办法一般是重启...当我在windows的cmd下卸载evtsysevtsys -u 再次安装时evtsys.exe -i -h 192.168.32.12 -p 514提示“指定的服务已标记为删除”,进入服务管理界面 E...
阅读全文
摘要:原帖关于SSDT HOOK取消内存写保护的问题有些人说不去掉也不会蓝屏,照样能HOOK成功确实,我当时也是这样过。。。不过拿给别人机器一测试就蓝了网上找到了MJ给出的答案:当使用大页面映射内核文件时,代码段和数据段在一块儿,所以页必须是可写的,这种情况下直接改是没有问题的HKEY_LOCAL_MAC...
阅读全文
摘要:原帖驱动开发中使用安全字符串函数一、前言大量的系统安全问题是由于薄弱的缓冲处理以及由此产生的缓冲区溢出造成的,而薄弱的缓冲区处理常常与字符串操作相关。c/c++语言运行库提供的标准字符串操作函数(strcpy, strcat, sprintf等)不能阻止在超出字符串尾端的写入。基于Windows X...
阅读全文
摘要:* Windows内核下操作字符串!*/#include #include #define BUFFER_SIZE 1024VOID DriverUnload(IN PDRIVER_OBJECT pDriverObject){ KdPrint(("DriverUnload Load...\n...
阅读全文
摘要:原帖:阴沟里翻船之KeSetEventKeSetEvent是个使用频率很高的内核支持函数,但经常使用未必意味着确实了解它。上周就曾遇到一件怪事,系统线程在调用KeSetEvent后线程IRQL竟然从PASSIVE_LEVEL提升至DISPATCH_LEVEL,以至后续的操作出错:Bug Check ...
阅读全文
摘要:内核使用C++方式编程时声明PsGetProcessId出现这个问题(WDK8.1)解决方法是在前边加上NTKERNELAPI这个宏,如下://我是在C++里边,C不用加上extern "C"extern "C" NTKERNELAPI HANDLE PsGetProcessId( __in PEP...
阅读全文
摘要:#include "stdafx.h"#include "stdlib.h"#include #include #include int main(int argc, char* argv[]){ BYTE shellcode[12]="\x66\xB8\x01\x20\x66\xBA\x04...
阅读全文
摘要:VC6.0生成文件的种类和作用DSW:全称是Developer Studio Workspace,最高级别的配置文件,记录了整个工作空间的配置信息,她是一个纯文本的文件,在vc创建新项目的时候自动生成DSP:全称是Developer Studio Project,也是一个配置文件,不过她记录的是一个...
阅读全文
摘要:___security_cookie机制,防止栈溢出从研究底层和汇编以来,已经多次接触到“栈溢出”这个名词了。这次在汇编码中看到了个不明就里的 ___security_cookie ,查了下,原来是编译器的安全检查机制。转载一篇文章:首先,security cookie并不是windows系统自带的...
阅读全文
摘要:主要是编译器的选项中,将warning视作error,所以就报错了,可以通过修改编译选项来设置,但是这里不这样做,通过#pragma来控制如上图,warning号是C4189,真正的号码是4189,所以加上如下语句即可#pragma warning(disable:4189)如果有多个警告,则在括号...
阅读全文
摘要:原帖地址将Windbg路径下的symsrv.yes 拷贝到ida 的安装目录,重新分析ntoskrnl.exe, 加载本地的符号表添加环境变量 变量名:_NT_SYMBOL_PATH变量值:SRV*{$Path}*http://msdl.microsoft.com/download/symbols...
阅读全文
摘要:原帖地址分配粒度:表示每次请求内存的时候最小给分配多少,比如32位操作系统基本上每次分配的是64K大小。分页大小:表示的是页面的大小,32位操作系统是4K是内存管理的最小单位。例如:假设你要请求6k = 4K + 2K的空间,操作系统会一次分配64K的空间放着,又因为内存最小操作单位是4K,所以实际...
阅读全文
摘要:开发的软件可以通过按钮创建子窗体,在win7下测试正常,在winXP下崩溃。于是搜到以下帖子,没有讲到直接解决方法,因为貌似没有直接解决的方式。通过里边的设置可以捕获异常,然后再分析代码。原帖地址'First-chance exception' usually means an exception ...
阅读全文
摘要:事件对象同步//CreateEvent设置自定的,并且初始有信号#include#includeDWORD WINAPI ThreadProc1( LPVOID lpParameter );DWORD ...
阅读全文
摘要:原帖地址:StretchBlt函数和BitBlt函数的用法StretchBlt和BitBlt都用在双缓冲视图中,用来显示一幅图像一、StretchBlt函数从源矩形中复制一个位图到目标矩形,必要时按目标设备设置的模式进行图像的拉伸或压缩。也即是将内存中的位图拷贝到屏幕上,并且可以根据屏幕画图区的大小...
阅读全文
摘要:对话框的OnPaint()和OnEraseBkgnd()消息的理解一个对话框重写OnPaint()和OnEraseBkgnd(),执行发现OnEraseBkgnd()比OnPaint()执行的次数多很多,但是执行OnPaint()前一定会执行OnEraseBkgnd()。项目中用GDI双缓冲,绘制对...
阅读全文
摘要:原地址:MFC中png格式图片贴图的实现学vc,正在做五子棋,五子棋中的图片格式都是bmp格式的,所以贴图用CBitmap可以很简单的实现。刚开始也没有在意那么多,今天刚把五子棋做完就兴冲冲的把代码和release版本的exe文件发给我的指导老师看,发现我的文件相当大,所以指导老师给我指出了bmp格...
阅读全文