自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学习随笔

如果你厌倦了眼前的一切,要么离开,要么改变它

  • 博客(23)
  • 资源 (8)
  • 收藏
  • 关注

翻译 开发自己的NSZombie

zombies是一种很有效的调试内存问题的技术。我之前讨论过关于zombies的实现, 今天我们将从头开始由浅入深的自建一个zombie。

2015-01-31 18:34:10 2174

原创 Windows 进程APC学习笔记

学习Windows进程,APC肯定少不了啦。PS:由于本人才疏智浅,本文仅为个人学习笔记,如有错误,希望大牛不吝赐教。下面是我学习APC的一点笔记。1、什么是APCAPC就是异步过程调用的所写。据说PE格式DLL映像的装入和动态连接就是由ntdll.dll中的

2011-09-01 00:16:06 2252

原创 记录两个函数

直接贴WRK的源码吧,包括注释NTSTATUSIoGetDeviceObjectPointer(    IN PUNICODE_STRING ObjectName,    IN ACCESS_MASK DesiredAccess,    OUT PFILE_O

2011-08-29 22:55:03 498

原创 Windows LPC

昨天心血来潮看了下LPC,查了些资料,发现涉及到的东西真不少,先记录下吧,研究清楚了再继续。LPC通信的基本步骤大概如下:1. NtCreatePort 来创建一个命名端口,这个端口叫连接端口。2.服务器通过NtListenPort来监听这个连接端口以获得新的通信请求

2011-08-24 01:27:28 2634

原创 一年啦

与其每天碌碌无为,不如好好做点事,好好看点书,好好看点代码。切忌浮躁。路漫漫。

2011-08-02 01:22:31 363

原创 windbg调试内核函数线程间切换问题

<br /><br />问题:在用windbg+vmare做内核调试的时候,会出现多线程切换的情况,导致调试一个线程的时候F10几下以后就不再是同一个线程了,这样很大程度上影响了正常的调试。<br /> <br />解决方法:1、可以通过对进程或线程下断点:bp /p Eprocess  Address  bp /t Ethread Address,我一般都用的这种<br />  2、可以利用脚本,这种方法我也没用过,主要是不懂windbg脚本<br />  3、最后一种也是比较笨的一种方法,就是在跳转处下

2011-04-05 22:52:00 1981

转载 Windows驱动启动类型

<br />StartType=start-codeSpecifies when to start the driver as one of the following numerical values, expressed either in decimal or, as shown here, in hexadecimal notation.0x0 (SERVICE_BOOT_START)Indicates a driver started by the operating system loader.

2011-03-31 01:02:00 1712

转载 利用VA实现VS编写WDK代码高亮和自动提示功能

<br /><br />习惯了VS写代码的同学们肯定对Visual Assist X不会陌生。暂且让我们讲其称之为VAX插件吧。那么,默认情况下,VAX是不支持DDK/WDK代码高亮和职能提示的。不提示也就罢了,还会在函数和关键字下面画波浪线,给人的视觉效果很不好。其实,可以很简单的实现VAX支持DDK/WDK高亮。<br />首先,打开VS,选择VAX的Options,然后选择Projects下面的C/C++ Directories,在Platform下面选择Custom,然后点击新建文件夹的图标添加DD

2011-03-23 01:54:00 1027

转载 总结下windbg的常用命令

1.启动1)直接调试: gdb program [core]cdb program or cdb -z DumpFile2)attach方式gdb attach pidcdb -pn ExeName or cdb -p pid2.显示堆栈GDB: btCDB: k堆栈命令堆栈命令都是K开头k 使用K命令进行栈回溯kL 和上面一样,只是省略了源代码段 L 一定要大写kb L 还是回溯,显示前3个参数(只是机械的按ebp+8,ebp+0xC,ebp+0x10取三字值,不判断),L意思和上面一样。kp;kP 把参

2011-02-21 01:36:00 1381

转载 【转帖】一个函数通解WINDOWS原理.

标 题: 【原创】一个函数通解WINDOWS原理.作 者: qiyewenjie时 间: 2010-10-10,19:00:39链 接: http://bbs.pediy.com/showthread.php?t=121973PS:感谢qiyewenjie这么详细的分析这是本人第一篇论文,称不上什么技术论文,都是关于windows xp的一些理论知识。由于学习编程没多久,本篇都是参考网上资料,MSDN,并结合自己的理解写下,本人知识有限,难免会有很多错误和不全面的地方,大牛们勿笑话...,虽然这些东西在网上

2011-02-10 17:08:00 1071

原创 最近

最近有点乱,可能是长假过后的后遗症吧。新的一年开始了,该好好奋斗了,为自己加加油。有空来这也写点东西。路漫漫其修远兮

2011-02-10 15:47:00 316

原创 SSDT HOOK中的几个宏

SSDT HOOK中的几个宏#define GetSystemFunc(FuncName) KeServiceDescriptorTable.ServiceTableBase[*(PULONG)((PUCHAR)FuncName+1)]#define GetIndex(_Function) *(PULONG)((PUCHAR)_Function+1)#define HookOn(_Old, _New)  /       (PVOID) InterlockedExchange( (PLONG) &Mapped

2010-08-09 00:20:00 799

转载 (转)反调试技术

转自:http://zhidao.baidu.com/question/97839146.html1.程序窗口句柄检测原理:用FindWindow函数查找具有相同窗口类名和标题的窗口,如果找到就说明有OD在运行//********************************************//通过查找窗口类名来实现检测OllyDBG//********************************************function AntiLoader():Boolean;constOl

2010-07-07 19:12:00 439

转载 花指令介绍

本文作者:sodme本文出处:http://blog.csdn.net/sodme声明:本文可以不经作者同意任意转载、复制、引用。但任何对本文的引用,均须注明本文的作者、出处以及本行声明信息。可能很多人都听说过花指令,但限于平时的开发所限,可能较少接触到。日前,跟同事讨论了一些有关花指令的问题,现将自己的体会总结一下。这篇文章将讨论以下问题:一、什么是花指令?它的原理是什么?二、在什么

2010-04-28 15:21:00 969

原创 createremotethread()远程注入dll

上一篇文章是转载的,主要是为了尝试远程注入dll。其实方法很多,好像《Windows核心编程》上有讲。我来讲讲自己用过的方法吧。大概说来就是运用createremotethread()来远程创建一个线程,然后利用线程的绑定函数来loadLibrary()一个dll,如果想在dll中做些操作的话,可以在dllmain()中的DLL_PROCESS_ATTACH case中去做一些操作。注意,

2010-04-15 22:46:00 1023

转载 createremotethread讲解(转)

要实现线程的远程注入必须使用Windows提供的CreateRemoteThread函数来创建一个远程线程该函数的原型如下:HANDLE CreateRemoteThread(     HANDLE hProcess,     LPSECURITY_ATTRIBUTES lpThreadAttributes,     SIZE_T dwStackSize,     LPTHREAD_START_R

2010-04-14 21:05:00 822

转载 Windows应用程序启动函数

Windows应用程序必须有一个在程序启动时调用的进入入口函数。可以使用的函数有四个:main()wmain()winmain()wwinmain()函数的具体定义可以查阅MSDN。但是在使用VC++编译连接程序的时候,IDE还会在入口函数之前加一个文件启动函数。与上面相对应的启动函数是mainCRTStartup()wmainCRTSartup()winm

2010-04-09 12:41:00 660

转载 关于Hook (转)

关于Hook 一、基本概念:    钩子(Hook),是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。    钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗

2010-04-01 17:21:00 371

转载 VC++连接错误2001 error LNK2001: unresolved external symbol _WinMain@16

VC++链接错误: error LNK2001: unresolved external symbol _WinMain@16(转)2009-09-16 10:39学习VC++时经常会遇到链接错误LNK2001,该错误非常讨厌,因为对于编程者来说,最好改的错误莫过于编译错误,而一般说来发生连接错误时,编译都已通过。产生连接错误的原因非常多,尤其LNK2001错误,常常使人不明其所以然。如果不深入地

2010-04-01 13:47:00 796

转载 MOVSX说明:带符号扩展传送指令

MOVSX说明:带符号扩展传送指令  符号扩展的意思是,当计算机存储某一个有符号数时,符号位位于该数的第一位,所以,当扩展一个负数的时候需要将扩展的高位全赋为1.对于正数而言,符号扩展和零扩展MOVZX是一样的,将扩展的高位全赋为0.   例子:MOV BL,80H          MOVSX AX,BL   AX == 0FF80H    可能初学者奇怪80H不是正数吗?FF怎么来的?看下

2010-04-01 13:47:00 1792

转载 汇编中Enter和Leave指令(转)

Enter的作用相当==push ebp和mov ebp,esp这后面两句大家很熟悉吧?函数开始一般都是这两句Leave的作用相当==mov esp,ebp和pop ebp而这后面这两句也很常见,函数调用完后一般的用到以上的Enter和leave的作用分别函数开始和结束

2010-04-01 13:46:00 552

原创 VC编译优化设置

VC- Project Setting-Debug-Project Option语法解释 优化-  /O1 最小化空间 minimize space /Op[-] 改善浮点数一致性 improve floating-pt consistency /O2 最大化速度 maximize speed /Os  优选代码空间  favor code space /Oa 假设没有别名 assume

2010-03-24 13:50:00 393

原创 VC中如何产生 Release 版本二进制文件对应的 PDB 文件(转)

在 Visual C++ 6.0 中的方法:打开 Visual C++ 6.0 的 Workspace 文件(*.dsw); 进入 Project 菜单,选择 Settings 菜单项 (Project->Settings),打开项目设置对话框; 在 “Settings for”列表中选择项目的 Release 配置; 单击“C/C++”标签; 在“Category”下拉列

2010-03-24 13:48:00 2317

java程序员面试宝典java程序员面试宝典

java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典java程序员面试宝典

2009-09-21

迅雷笔试题迅雷笔试题

迅雷笔试题 迅雷笔试题 迅雷笔试题 迅雷笔试题 迅雷笔试题

2009-09-21

人月神话(中文版,软件开发必看)

物超所值物超所值物超所值物超所值物超所值物超所值物超所值物超所值

2009-03-24

微软的软件开发(PDF)

学习微软的开发理念,相当不错,物超所值,物超所值物超所值物超所值物超所值物超所值物超所值物超所值

2009-03-24

高质量C++编程指南

高质量C++编程指南,相当值得下载,物超所值,物超所值物超所值物超所值物超所值。

2009-03-24

编码的奥秘(程序员必备)

编码的奥秘一本程序员必备的书,教你如何写出高效的代码,值得一看

2008-11-17

像计算机科学家一样思考 java

像计算机科学家一样思考 java 除了程序员面试宝典,程序员必看的一本书

2008-11-17

空空如也

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

TA关注的人

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