自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

点点灵犀

异想天开的程序猿

  • 博客(22)
  • 资源 (32)
  • 收藏
  • 关注

原创 windbg常用指令之四:虚拟内存操作指令

.dvalloc 申请虚拟内存.dvfree 释放虚拟内存.writemem 写内存到文件.readmem 读文件到内存!address 内存信息查看!vprot 看虚拟内存保护属性0:001> .dvalloc 1000Allocated 1000 bytes starting at 011500000:001> !vprot 01150000BaseAddr

2013-06-26 21:03:15 1805

原创 windows之 访问控制模型

当一个线程使用Open*打开一个内核对象时,会发生什么?有两种可能:1. 打开成功,拿到句柄2. 打开失败这不是废话么?!为啥打开失败呢?有两种可能:1. 当前线程不具有指定的特权2.  权限不足(由dwDesiredAccess参数指定权限)这个时候就引入了今天的主题:令牌(包含特权列表)和安全描述符(描述用户权限)。Tokentoken是什么?对

2013-06-10 19:52:48 2249

原创 windows之 会话、工作站、桌面、窗口之间的关系

一个系统可以同时登录多个用户(包括远程用户登录)一个用户拥有一个会话(远程用户被称为远程会话)一个会话拥有多个工作站和窗口。只能拥有一个交互式工作站(Winsta0)。一个会话拥有一系列私有的进程和模块:Csrss.exe、WinLogin.exe、Lsass.exe、win32k.sys一个会话拥有一个私有对象名字空间(\BaseNamedObjects),私有对象名字空间中的内核对象不能被其他

2013-06-08 22:31:25 2504

原创 获取进程token(令牌)和sd(安全描述符)

先找到windbg进程内核对象指针lkd> !process 0 0 windbg.exeUnable to read selector for PCR for processor 0PROCESS 8144c3a8 SessionId: 0 Cid: 02ac Peb: 7ffdb000 ParentCid: 0820 DirBase: 0c0c05a0 Objec

2013-06-06 18:00:16 4881

原创 windows 异常处理

写程序的时候避免不了出现异常或Bug,windows是怎么保证异常可以被try_catch,或者调试器捕获并处理的呢?如果异常不能被处理,windows会怎么做呢?这要从windows异常处理器说起。异常处理器顾名思义,专门处理各类异常的。异常处理器按照内核和用户模式分成了两类,处理过程不尽相同。内核模式异常处理内核调试器第一次处理该异常如果存在内核调试器,则交给它处理。如

2013-05-18 13:38:37 1776

原创 VSDebug、Ollydbg、WinDbg字符串条件断点设置方法

字符串断点在下断点时也是一个比较常用的功能。不过网上介绍字符串断点设置技巧的文章很少,有的也不准确。其实他们设置的方法整体来看比较简单。VSDebugVSDebug 微软VS自带调试器套件,对字符串断点的支持依然强大。Vs支持在断点条件中使用字符串比较函数。ASCII字符集字符串断点设置方法:strcmp(pzString, "DDLX_CHAR") ==

2013-04-28 20:39:55 2852

原创 windbg之使用!list指令遍历双向链表

windows内核中大量的数据结构使用了双向链表。如果能查看每个链表的元素,甚是美哉。windbg就给我们提供了这么好用的功能。!list命令是一个用来查看链表的命令,该功能非常强大并且易于使用。下面我们就用例子来看一下!list命令的用法使用!list遍历活动进程的进程Id和进程名活动进程链表节点在EPROCESS中德偏移 +0x088 ActiveProcess

2013-04-27 23:38:29 2257

原创 xp与win7中_OBJECT_HEADER的区别,_OBJECT_TYPE获取方法

在win7中 _OBJECT_HEADER变化比较大。不能直接取出_OBJECT_TYPE对象,而是使用对象在ObTypeIndexTable中的索引来引用_OBJECT_TYPE。下面使用windbg来掩饰xp和win7获取_OBJECT_TYPE的方法。xp系统获取方法使用!object查看一个文件对象信息lkd> !object 8914b2c0Object: 8914

2013-04-26 23:44:07 2757

原创 尽量不要使用TerminateThread与SuspendThread

强制杀死或挂起线程会导致线程正在获取的锁资源无法释放;如果正在操作一块公共内存,可能会导致公共内存被破坏。详细请见:http://blog.csdn.net/magictong/article/details/6304439

2013-04-24 21:15:27 1732

原创 windbg 常用命令介绍(三)

.attach 附加一个进程0:000> .attach -b 0n2168Attach will occur on next execution0:000> g.detach 取消调试当前进程1:001> .detach /nDetachedg 继续执行0:004> g //或按快捷键F5无条件中断(不是指令)Ctrl+Break.restart重新

2013-04-23 05:06:21 1452

原创 windbg 常用命令介绍(二)

b 断点命令bp/bu/bm 软件断点bp 设置一个普通断点bu 设置一个未决的断点,如果该断点所在模块还没加载,使用该指令bm 对多个符号下断点0:000> bp kernel32!LoadlibraryA0:000> bp kernel32!LoadlibraryA+50:000> bu kernel32!LoadlibraryW0:000> ~2 bp kernel

2013-04-23 04:38:27 2029

原创 windbg 常用命令介绍(一)

加载符号.symfix 设置符号路径0:000> .symfix c:\symbols.sympath 查看设置的符号路径0:000> .sympathSymbol search path is: srv*Expanded Symbol search path is: SRV*c:\symbols*http://msdl.microsoft.com/download/sym

2013-04-23 03:01:46 3397

原创 PE文件结构处理经验总结

这个是我原先发在看雪上的一个帖子。本文不是讲解Pe文件格式的,而是对Pe格式编程时遇到的问题的记录和总结。如果对Pe文件不是很熟悉,请先查阅其他人写的PE文章。  该贴是我在写加壳工具的时候遇到问题的总结。记录下来,供以后温习,希望对各位也有一定帮助。  由于本人接触该方面时间不长,免不了存在失误之处,敬请拍砖。    1. IMAGE_DOS_HEADER

2013-04-21 22:22:26 1263

原创 反外挂系统设计方案

该方案是参考多家反外挂系统,加上自己对反外挂了解整理而来。整个方案包含了反外挂系统中常见的所有功能。 4.    系统框架设计方案本系统基于C/S结构设计,包含服务器端和客户端两大部分。服务器端主要负责策略定制与实施,并控制客户端的行为。客户端主要负责具体的安全保护。如外挂扫描,防盗号,防修改游戏内存等。下面是对各个部分负责的功能的描述:4.1.    服务器端

2013-04-21 22:12:39 2859

原创 windows调试器之windbg

windbg是微软开发的一套调试器中的组件。windbg由于其丰富的命令和对windows的原生支持还有其易用性,是其他其他调试器望尘莫及的。不过,如果你只是想通过源码调试应用层程序,应该首选vc调试器。windbg特色功能:1. 支持应用层程序调试(可以源码调试)2. 支持内核层调试。如调试驱动和操作系统3. 支持远程调试4. 分析dump文件5. 查看本地操作系

2013-04-21 21:37:12 1247

原创 windows调试器之Visual C++

visual c++ 是visual studio中的一个组件。windows下开发C++是一个首选工具。这个工具强大了,每个人都知道哈哈我打算给大家介绍一些windows下常用的调试器:visual c++ollydbgwindbgvisual c++作为我们的开发工具,当做调试器当然也不逊色,那他与别的调试器相比有哪些优劣点呢?visual c++调试器

2013-04-21 19:22:22 2250

原创 windows之启动过程(二)

这是widnows启动过程系列文章第二篇,看第一篇,请点击windows之启动过程(一)6. Ntoskrnl.exe 的KiSystemStartup,执行阶段0初始化 初始化主处理器初始化各个组件,包括Hal初始化(HalInitSystem)执行体初始化(ExInitSystem)内存初始化(MmInitSystem)对

2013-04-21 15:42:24 1795

原创 windows之启动过程(一)

windows的启动过程一直是我比较感兴趣的。下面看一下他是怎么启动的。1. BIOS 加电自检(包括枚举设备,初始化显卡等。这时可以进入BIOS内进行一些主板设置,如修改主板时间、设置从USB启动等)2. BIOS 选择一个启动设备,执行主引导记录(MBR)。 MBR是一个设备的第一个扇区,包含引导代码和分区数据。最多支持4个分区数据,如果你把系统

2013-04-21 14:55:23 1480 4

原创 windows消息之PostMessage和SendMessage的内部实现

PostMessage和SendMessage是常用的发送消息函数。那两者有什么区别呢?大家都知道PostMessage是向一个窗口Post一个消息,并且不再关注该消息是否被处理。SendMessage是向窗口发送完消息后,会一直等着该窗口把消息处理完成。那下面的问题你能回答么1. PostMessage向自身线程窗口发消息与向非自身线程窗口发消息实现方法一样么?2. Send

2013-04-16 23:12:51 4066 1

原创 CreateProcess 内部实现

*ReactOS学习笔记*CreateProcess 内部实现调用CreateProcessW   调用CreateProcessInternalW      参数检查      获取进程文件路径      调用BasepMapFile映射文件(内部调用NtCreateSection)      判断是否是一个DLL文件      判断子系统类型(只能是

2013-02-19 18:15:57 2825

原创 杀死一个远程进程的方法

<br />最近在写一个对进程操作的工具。经过参考别人的思路和自己的总结,掌握了在Windows下对进程的一些处理方法。<br />现,撰写此文,一来留着备以后参考,二来也希望广大网友给出更好的建议和思路,谢谢。<br />话不多说,开始上代码。<br /> <br />第一个杀死一个进程的方法,就是向该进程发送关闭消息。<br />该方法只能在要杀死的进程有窗口的时候使用。如果没有窗口,则该方法无效!<br />#define DDLX_TEXT_MAX_SIZE 1024int ddlx_cmn:

2010-06-27 13:03:00 2191

原创 vc2005/2008编写的软件无法在其他机子上运行问题的解决方案

 前段时间用VC++2008写了一些小程序,在其他机器上却无法运行。提示:                “由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能纠正这个问题。”我本以为装上vc++2008运行库可以解决该问题,但装上之后没一点效果。后来就在网上搜了解决该问题的解决方案,网上有很多,我一个一个试过之后,还是无法解决该问题。经过我的查找后,发现是别的机器上少了

2009-09-09 16:04:00 969

WINDBG参考手册V0.6

windbg用的人很少,通常被用作内核调试器。 这对于windbg来说,确实大大限制了windbg的功能发挥。 因为工作的关系,楼主常常需要远程调试和到客户现场排查问题。需要一款顺手的调试器。VC由于太大,安装也麻烦,不能每次都给给客户安装一个VC,OD是 一款很好的用户态调试器,但是对pdb支持的不好,当要排查一些问题(如内存泄露、堆栈溢出、死锁)等问题时,显得力不从心。最后wdb成了我的得力助 手。 用了一段时间后,发现wdb太强大了,除了不具有反调试功能和界面不太好看外,完全可以胜任各种疑难杂症的排查和调试。 wdb没人用,无外乎如下几点: 1. 界面不友好 2. 命令行操作 3. 命令繁杂,对新手是个考验 4. 没有加亮显示 5. 不具有反调试功能 界面不友好是对OD而言,当然与VC相比也很逊色。命令行操作其实是他的一大特色,也是其最为出彩的地方。我前段时间看到看雪已经有wdb加亮插件放出,用了一下,很好用 写作本文目的 1. 感受一下windbg的魅力 2. 介绍各种命令的用法(不是对帮助文档的翻译,告诉你命令在什么时候怎么用) 3. 介绍使用wdb排查像访问异常、缓冲区溢出、死锁、内存泄露、句柄泄露等思路和方法 PS: 1. 我是使用wdb时间不长,经验不足,有描述不正确和不足的地方请指正 2. 本文楼主也是边学边写,最后形成一个wdb参考资料文档。也是为了方便自己以后查阅 3. 本文持续更新。主要包含命令详解篇和应用实战篇,并持续发布chm格式文档

2014-01-09

PeViewer0.9.3 Pe文件分析器0.9.3版

分析PE文件的工具。 PeViewer 0.9.3版支持的功能: 1. 对一个符合PE结构的文件进行分析 2. 对任何进程的一块符合PE结构的内存块进行分析 3. 当前能够对对数据目录中的导出表,导入表,重定位表进行分析 4. 右键支持更多操作

2010-08-14

PE文件分析器源代码

该软件是由点点灵犀工作室开发的名称为:PEViewer(PE文件查看器)软件。版本:0.9。 该压缩包中包含该软件的源代码,你可以任意修改。 该软件是用来分析PE文件结构的工具,可以分析出PE文件的各个头部,导入表,导出表。 =============================================================================================== === 特别提醒: 在【导入表】,【导出表】支持鼠标双击消息。双击时显示的是函数列表。 ======== =============================================================================================== 如果你发现BUG,或有更好的意见和建议,欢迎与我交流。 Email:sunyikuyu@163.com。 QQ: 935130808

2010-05-04

vc++9.0编写的 运动的小球 程序和源码

功能简述: 1. 调整小球的半径 2. 调整小球的运动角度 3. 调整小球的单位移动距离 4. 调整屏幕刷新频率 5. 暂停/继续 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 贪吃蛇 程序和源码

功能简述: 1. 吃到食物后身体增加一段,速度加快 2. 吃到自己的身体游戏结束 3. 隐藏/显示程序窗体 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 日历 程序和源码

功能简述: 1. 整点报时 2. 随时报时 3. 顶置窗体 4. 向上缩起窗体(如QQ) 5. 迷你/标准模式转换 6. 添加任务、删除任务、修改任务、任务提醒 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 迷宫 程序和源码

功能简述: 1. 显示/隐藏提示路线 2. 自由选关卡 3. 隐藏/显示程序窗体 *注* 自主实现递归实现自动寻路算法 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 连连看 程序和源码

功能简述: 1. 6种龟缩法 2. 提示功能 3. 开启/关闭背景音 4. 显示消去路线 5. 自由选择关卡 6. 暂停/继续 7. 隐藏/显示窗体 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 科学多功能计算器 程序和源码

功能简述: 1. 二进制、八进制、十进制、十六进制之间的相互转换 2. 数字分组 3. ASCII码对照表 4. 阶乘、幂、三角函数、对数等的运算 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 俄罗斯方块 程序和源码

功能简述: 1.开启/关闭网格 2.调节级别 3.显示下一个方块 4.暂停/继续 5.隐藏/显示 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

VC++9.0编写的 N皇后算法演示 程序和源码

功能说明: N皇后算法的运算过程用图形的方式显示。 本压缩包包含编译好的exe可运行文件和源代码。可以重新编译和修改。 本程序在Microsoft Visual C++ 2008 Express Edition编译并调试通过。 想运行本程序需要您的机器上装有.Net Framework 2.0(或以上版本) 和 VC2008_x86运行库。 作者: 点点灵犀 Q Q: 383394019 (有什么疑问和建议可以加我QQ号进行联系)

2009-11-22

vc2005/2008编写的软件无法在其他机子上运行问题的解决方案

可以修复由 Microsoft Visual C++ 8.0(CRT项目和MFC项目的Debug版) 和 Microsoft Visual Studio 9.0(CRT项目的Debug版) 编写的软件在其他机器上运行时出现的 “由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能纠正这个问题。” 这样的问题。

2009-09-08

JAVA 编写的 模拟时钟 源码

有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-08

java 编写的 时间显示屏 源码

可以像 荧屏一样显示。自己做数字的样式。 有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-08

java 编写的 日历 实现源码

有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-08

java 编写的 迷宫 游戏源码

实现了寻路方法(递归实现) 有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-05

java 编写的 连连看 游戏源码

实现了 龟缩方法。 有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-05

java 编写的 时间+日历挂件 实现源码

功能说明: 1. 能够显示现在时间和日历 2. 可以查看某一天的信息 3. 窗体能够移动[当移动复选框被打勾时] 4. 窗体能够与屏幕顶端粘合 5. 窗体与顶端粘合后,鼠标离开此窗体,窗体会自动隐藏[当移动复选框被打勾时] 6. 如果窗体被隐藏,当鼠标移动到窗体露出部分时,窗体会完整弹出 7. 窗体能被顶置[当顶置复选框被打勾时] 8. 窗体能被底置[当底置复选框被打勾时]

2009-09-05

Java 编写的 画俄罗斯方块 游戏源码

用画图的方法在面板上画出。 有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-05

java 实现的 贪吃蛇 游戏源码

有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-05

java 编写的 俄罗斯方块 游戏源码

有疑问或意见和建议请联系我: QQ:383394019 QQ邮箱:383394019@qq.com

2009-09-05

【错误】java 编写的 时间显示屏 源码

【错误文件】上传出错,只传了.class文件。请下载另外一个“同名”文件。

2009-09-05

【错误】java 编写的 时间+日历挂件 实现源码

【错误文件】上传出错,只传了编译好的可执行文件,不包含源代码。请下载另外一个“同名”文件。

2009-09-05

【错误】java 编写的 日历 实现源码

【错误文件】上传出错,只传了编译好的可执行文件,不包含源代码。请下载另外一个“同名”文件。

2009-09-05

【错误】JAVA 编写的 模拟时钟 源码

【错误文件】上传出错,只传了编译好的可执行文件,不包含源代码。请下载另外一个“同名”文件。

2009-09-05

【错误】JAVA编写的 迷宫 游戏源码

【错误文件】上传出错,只传了编译好的可执行文件,不包含源代码。请下载另外一个“同名”文件。

2009-09-05

【错误】JAVA 编写的 连连看 游戏源码

【错误文件】上传出错,只传了编译好的可执行文件,不包含源代码。请下载另外一个“同名”文件。

2009-09-05

JAVA多功能计算器

JAVA多功能计算器说明: 可以进行16,10,8,2进制之间的相互转换,并且各种进制都能进行运算…… 各种功能在文件中有详细的说明。 每一个类都有详细的注释。 有迷惑可以联系我。

2009-06-18

学生成绩管理系统 C语言

功能介绍: 1.可以(重新)建立数据库和(重新)打开已建立好的数据库。 2.用学号查询数据。 3.用名字查询数据。 4.用学号查询修改数据并保存。 5.删除数据。 6.插入数据。 7.总成绩从高到低排序【建立好数据库是用学号的大小排序的】。 8.用屏幕输出数据。 9.把数据库保存成文件。 ……

2009-06-18

N皇后的用数组的简单C语言实现

用递归些的一个简洁易懂的用数组实现的N皇后算法。 不明白请留言~YY<C Code>

2009-04-13

迷宫算法用数组简单C实现

用检测数组中的结点值来检测能否通过。如不能通过则回溯到上一个结点。本算法是用递归实现的。简洁易懂YY<C Code>

2009-04-13

空空如也

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

TA关注的人

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