自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sting的专栏 - Under the hood

互联网上新生活

  • 博客(59)
  • 资源 (7)
  • 收藏
  • 关注

原创 C++临时变量的另类应用:基于iostream的类型安全的log接口设计

几年前做的一个东西,现在专注于系统底层开发,C++的高级功能用的比较少了,写出来回忆回忆。在实际的应用开发中,log模块设计是必不可少的一部分,log模块设计的好坏直接影响到系统的性能和日后的维护。总的来说,log模块在功能上除了日志级别、时间和消息正文这些必须的信息外,最好还能记录日志产生时尽可能多的信息,比如线程ID、模块名称、源文件、代码行等。在log接口的设计上应该尽可能简化,以方便调用。

2006-11-15 23:27:00 3093 3

原创 Hacking Windows CE: 如何从线程ID获取线程名称

 在一个线程出现异常行为时,比如说CPU占用率过高,抛出异常等,你一定想知道这个线程是由哪个模块创建的。因此无论在哪个操作系统上,获取线程名称是诊断线程相关问题的重要一步。从线程ID获取线程名称通常的方法是,先获取该线程的入口地址,然后枚举进程内所有已加载模块,最后判断线程入口地址落在哪个加载模块范围内。枚举进程内已加载模块可用Win32标准的CreateToolhelp32Snapshot/

2006-11-11 21:26:00 6415 3

原创 推荐一篇介绍Visual C++对象模型的老文

看到一位朋友在博客里谈到C++的多重继承问题: 透过汇编另眼看世界之多继承下的虚函数函数调用。我也想说两句。从汇编的角度研究C++的实现真的是学习C++的一个很好的方法。要了解C++的对象模型,特别是多重继承下的对象模型,当然要看Stanley Lippman的“深度探索C++对象模型”。另外还有MSDN上的一篇文章,可能很多人都没注意到,讲的也很清楚。这里我向大家强烈推荐,虽然这是一篇发表在19

2006-11-10 20:28:00 1973

原创 暴雪和黑客的战争四:暴雪的杀手锏-The Warden

本来想写点儿别的东西。但是看来大家还是对外挂比较感兴趣,就接着再写写吧。1.10时期的成功,使得一些黑客不免自我得意,Mousepad甚至扬言,暴雪应该请他来做hacks检测。2005 年8月1号,暴雪正式发布1.11 patch,紧接着在9月13号又更新到1.11b,宣告了1.11时代的到来。从功能上来讲,1.11相对于1.10的改变,远远小于1.10相对于 1.09d的改变。最大

2006-11-10 18:43:00 6992 12

原创 [旧文存档]Introduction to Remote Run Library

也是2001年在vchelp发表的一篇相关文章。原文在这里。代码可以在vchelp下,不过比较旧。也可以直接向我要。做做这个library的原因是当时正热衷于玩代码远程注入。远程注入的代码编写的时候有很多限制,比如说必须关掉/GZ编译选项,不能使用全局/静态变量,远程运行的代码由于没有调试符号只能做汇编级调试,等等。因此做了这么一个可以把整个EXE模块远程注入到其他进程的东西。再次提醒,不要再

2006-11-10 00:30:00 6482 3

原创 旧文重贴,悼念我的第一个电子邮箱:在同一个进程空间运行两个程序

前天偶然点开了我的网摘(以前一直不知道CSDN这个网摘是怎么回事),竟然发现里面保存了我在2001年写的这篇文章。于是翻了一遍,不想看到了后面留的email地址,勾起了我的伤感回忆。 fenny@163.net,这是我在互联网上申请的第一个email地址,那还是在1996年的时候,在学校的开放实验室里。记得Forest还拿这个名字打趣过我,说你怎么起了这么个名字,好歹也得叫个dollar什么的呀(

2006-11-10 00:18:00 13688 5

原创 如何把Windows CE安装文件下载到本地进行安装

今天不讲外挂,说点儿别的。前几天微软为了Windows CE 6.0的发布大张旗鼓,搞了个Virtual Launch Event。本来想着要去凑凑热闹的,结果忙着写外挂文章,给忘了。今天想起来要去下载CE6的Evaluation版研究研究,为未来的产品升级做准备。没想到这好几个G的东西,居然只能从网络安装,我这几十K的破网不知道要装到什么时候了。还好进行一番研究之后,我发现还是可以把所有安装文件

2006-11-08 17:59:00 13779 3

原创 暴雪和黑客的战争三:黑客的反击

暴雪在1.10补丁中加入hack检测机制,在某种程度上直接导致了原本和谐的D2X游戏黑客社群的分裂。一部分出于对检测机制的顾虑,停止更 新自己的作品,如d2hackit;另一部分则把他们的hack具有的反检测功能当成卖点开始收费,如d2maphack和d2jsp;还有一部分黑客出 于不满开始制作这些收费hacks的替代品,如d2hackmap,C3PO,d2bs等;甚至有些黑客出来破解这些收费ha

2006-11-07 20:07:00 13143 9

翻译 SpiderMonkey-让你的C++程序支持JavaScript脚本

译序有些网友对为什么D2JSP能运行JavaScript脚本程序感到奇怪,因此我翻译了这篇文章,原文在这里。这篇教程手把手教你如何利用SpiderMonkey创建一个能执行JavaScript脚本的C++程序,并让JavaScript脚本操纵你的C++程序的内部数据、操作。从这篇教程可以看到在SpiderMonkey引擎的帮助下,让C++程序支持JavaScript脚本是一件很容易的事,更棒的

2006-11-06 21:18:00 25029 4

原创 Hacking Diablo II之外挂实战教程:去除D2JSP试用版显示的Trial Version信息

前几天一个网友给我发消息请我帮他个忙。他的问题是,他正在使用的D2JSP是免费试用版,试用版在运行时会在游戏的所有游戏画面中央显示一行很大的“Trial Version”字样(见下图中的红圈),很烦人,他想去掉这行字。我想正好用此做个教程解释前面介绍过的hack工作原理,于是答应帮他看看。 我已经很久没有开BOT了,最后一次使用D2JSP还是2003年1.09d时期的事。根据我以前的理解

2006-11-05 12:00:00 10874 11

原创 WOW中的一种外挂设想,兼看老外骂人

自从魔兽世界公测的那一天起,无数玩家就在琢磨着如何骗过游戏的防作弊系统使用外挂。后面两幅图就是某位外国玩家给出的一种方案。 这位玩家的主要想法是在游戏的server端和client端之间插入一个agent。对server端,agent模拟client端的行为而对真正的client端agent又模拟server端的行为。这样agent可以截获、分析并甚至伪造数据包从而干预游戏行为;另外agent本

2006-11-04 22:56:00 6247 3

原创 使用163邮箱的朋友请换个邮箱地址给我写信

收到几位使用163邮箱朋友的email,发现我的gmail邮箱回复不了,请各位下次换个邮箱试试,谢谢。错误提示信息:Technical details of temporary failure:TEMP_FAILURE: Could not initiate SMTP conversation with any hosts:[mx.mail.163.split.netease.com. (50):

2006-11-04 17:33:00 4547

原创 暴雪和黑客的战争二:暴雪的第一击

暴雪在WOW开发的后期,终于能够腾出人手来升级持续了2年之久的D2X 1.09d。由于1.09d时期hacks泛滥,暴雪觉得有必要打击一下这种嚣张的气焰,于是加入了hacks检测机制,这就是在1.10时期经常提起的packet 64/65检测。何谓packet?packet即网络数据包,D2中服务器端和客户端之间的交互是通过互相发送packet进行的。D2中的packet又分为out-of

2006-11-04 16:33:00 4513 4

原创 Hacking Diablo II之外挂的工作原理

这一篇介绍外挂的工作原理。如果对外挂是怎么工作的没有一个大概的了解的话,那这一系列文章只能当故事看了。如下图所示,大方框表示Diablo II.exe的进程空间,框内左侧的虚线表示游戏的主线程循环。游戏主线程循环所做的工作大约有:绘制客户端画面、响应服务器端的命令,以及接收玩家的鼠标键盘输入等。框内右侧的小方框就是所谓的外挂程序(Injected DLL)。外挂要工作首先要加载到游戏进程空间,

2006-11-03 14:09:00 9633 3

原创 暴雪和黑客的战争一:外挂的幸福时光

如前一篇文章所说,D2X中hacks的发展大约可以分为三个阶段,即前1.10的发展成熟期,1.10的过渡期以及1.11的衰落期。一直到1.09d(1.10前的最后一个版本)为止,D2X中几乎没有作弊检测机制,这一时期是hacker们最幸福的时期。说没有是因为它没有专门的检测代码,而说几乎没有是因为它有些机制还是可以用来做作弊检测用途的。一处是它的自动升级机制。在战网上玩过的玩家都知道,每次连到战网

2006-11-01 23:37:00 5993 1

原创 Diablo II中的各种hacks

Game hacks,也就是通常所说的游戏作弊软件。在网络游戏时代,也许是因为针对传奇这类游戏的作弊软件大都利用WPE之类的抓包工具来制作,因此hacks又叫外挂。不过Diablo的hacks绝大多数是和游戏代码紧密结合在一起的,也许应该叫内挂才对。Diablo II LOD(以下简称D2X)中的hacks大概可分为exploit、bot和mod三大类。exploit即漏洞,就是利用游戏设计上的缺

2006-11-01 13:23:00 13478 16

原创 Hacking Diablo II之前言

前几天偶然逛到Rootkit,看到一篇文章讲WOW hacking, 里面谈到魔兽世界hacks的开发和anti-warden的一些技术,让我想起了我的Diablo II岁月。自从几年前开始hack Dialbo II以来,我做了不少现在回想起来很疯狂的事(比如说,曾经用C把一个程序从二进制完全还原了出来),在Diablo II的hacks制作上也积累了非常丰富的经验。国内的game ha

2006-11-01 13:17:00 4934 7

原创 关于MD5破解这件事

前 几天在论坛上看到有人在讨论MD5的破解,很多人对MD5的理解让我大跌眼镜:有人认为MD5是一种加密算法,有人认为由于无法从MD5 hash回复出明文,因此对其破解的研究毫无意义,甚至因此置疑王小云教授的成果毫无意义,真是让人遗憾。 因此今天决定说说MD5的破解,算是义务普及。有关MD5的描述请参考Wikipedia/MD5,这里就不多废话了。一般来说,对一个HASH算法的攻击可分三个级别:

2006-11-01 13:15:00 7618 3

原创 我的那些快捷键儿

VC 用的太熟的一个后果是看到有人用UltraEdit写VC程序时觉得不可理解。另一个后遗症是,我很喜欢用快捷键,熟悉了VC的这套快捷键后,用其他软件 的时候,如果快捷键设置和VC的习惯设置冲突就觉得很难受。比如说SoftIce,很久以前就开始用,至今还没习惯。下面说说我在使用VC IDE时经常用到的一些快捷键。CTRL+TAB:在IDE打开的文件间切换。我喜欢在IDE里同时打开很多文

2006-11-01 13:09:00 2539 5

Windows CE 6.0 BSP for VMWare

Windows CE 6.0 BSP for VMWare workstation。相关介绍请看我的博客:http://blog.csdn.net/singlerace

2008-05-30

Windows CE 6.0 kernel for VMWare 6 part 2

Windows CE 6.0 for VMWare workstation 6.0 虚拟机 part 2。相关介绍请看我的博客:http://blog.csdn.net/singlerace

2008-05-30

Windows CE 6.0 kernel for VMWare 6

Windows CE 6.0 for VMWare workstation 6.0 虚拟机。相关介绍请看我的博客:http://blog.csdn.net/singlerace

2008-05-30

Windows CE 5.0 Virtual Machine for VMWare

请看我博客里的说明:<br>http://blog.csdn.net/singlerace/archive/2006/12/11/1439048.aspx

2007-08-21

Windows CE BSP for VMWare

请看我博客里的说明:<br>http://blog.csdn.net/singlerace/archive/2006/12/11/1439048.aspx

2007-08-21

Remote Run Library (source code and binary)

请看我博客里的说明:<br>http://blog.csdn.net/singlerace/archive/2006/12/11/1439048.aspx

2007-08-21

Windows CE Remote Process Explorer

请看我博客里的说明:<br>http://blog.csdn.net/singlerace/archive/2006/12/11/1439048.aspx

2007-08-21

空空如也

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

TA关注的人

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