
翻译/心得、总结
文章平均质量分 81
Kendiv
这个作者很懒,什么都没留下…
展开
-
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(补充:PDB格式)(3)
第一章 Windows 2000对调试技术的支持翻译:Kendiv ( fcczj@263.net )更新:Tuesday, May 03, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 CodeView子节(CodeView Subsections)CodeView是微软自己的调试信息格式。随着微软C/C++编译器和链接器的发展它也经历了很多变化。有些Cod翻译 2005-05-21 04:43:00 · 3527 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(补充:PDB格式)(2)
第一章 Windows 2000对调试技术的支持翻译:Kendiv ( fcczj@263.net )更新:Tuesday, May 03, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 .dbg文件的内部结构Windows NT 4.0组件的符号化信息均保存在扩展名为.dbg的文件中。如果假设符号文件所在的根目录为:d:/winnt/symbols,则组件f翻译 2005-05-21 04:40:00 · 3442 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(补充:PDB格式)(1)
第一章 Windows 2000对调试技术的支持翻译:Kendiv ( fcczj@263.net )更新:Tuesday, May 03, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 枚举符号 毫不留情的批判完psapi.dll后,现在是说些好话的时候了。psapi.dll可能比较失败,但另一方面,imagehlp.dll却十分完美! 我曾深入研究这翻译 2005-05-21 04:37:00 · 4063 阅读 · 5 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(7)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Sunday, May 15, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 访问未导出的符号为什么我们要允许应用程序执行本该内核驱动程序完成的操作?我们能将应用程序的能力增强到内核驱动程序也无法达到的程度吗?我们可以调用既没有文档化也没有导出的内部函数吗?这听起来有些翻译 2005-05-15 02:29:00 · 2868 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(3)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Friday, May 06, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 将系统模块和驱动程序加载到内存中NtQuerySystemInformation()是Windows 2000系统编程中主要API函数之一,几乎所有内建的管理工具都使用了该函数,但是你不会在D翻译 2005-05-06 15:58:00 · 3731 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(2)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Friday, May 13, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。在运行时链接到系统模块在实现了基本的内核调用接口之后,接下来的问题是将符号化的函数名解析为线性地址,这一地址时CALL指令所需要的(见列表6-2)。这一步很重要,因为你不能确定内核API函数的入翻译 2005-05-05 06:06:00 · 3009 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(7)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Friday, April 29, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 一个简单的Hook协议读取程序为了帮助你编写自己的API Hook Client程序,我给出了一个简单的示例行的程序,该程序可以读取Hook协议缓冲区中的数据并在控制台窗口中显示。通过按下P翻译 2005-04-29 16:51:00 · 2651 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(6)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Thursday, April 28, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 IOCTL函数 SPY_IO_HOOK_REMOVEIOCTL函数SPY_IO_HOOK_REMOVE函数和SPY_IO_HOOK_INSTALL很相似,只不过它执行与SPY_IO_H翻译 2005-04-28 18:20:00 · 2468 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(5)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Tuesday, April 19, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 在用户模式下控制API Hooks运行在用户模式的Spy客户端可通过一组IOCTL函数来控制API Hook机制及其生成的协议。这一组函数的名字都以SPY_IO_HOOK_开始,在第四章已翻译 2005-04-19 15:48:00 · 2678 阅读 · 6 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第七章(3)
第七章 Windows 2000的对象管理翻译:Kendiv( fcczj@263.net )更新:Sunday, May 22, 2005声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。进程和线程对象或许最吸引人同时也是最复杂的Windows 2000对象就是进程、线程对象了。这些对象通常是软件开发人员必须处理的顶层对象。一个内核模式组件总是运行在某个线程的上下文中,而一个线翻译 2005-05-22 23:04:00 · 4407 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第七章(4)
第七章 Windows 2000的对象管理翻译:Kendiv( fcczj@263.net )更新:Sunday, May 22, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 线程和进程环境块你可能会很困惑:KTHREAD和EPROCESS结构中的Teb和Peb成员有什么实际价值?Teb,指向一个线程环境块(TEB),见列表7-18。TEB的第一部分是线程信息块翻译 2005-05-23 23:44:00 · 4128 阅读 · 8 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(补充:PDB格式)(4)
第一章 Windows 2000对调试技术的支持翻译:Kendiv ( fcczj@263.net )更新:Wednesday, May 25, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 .pdb文件的内部结构在安装完Windows 20000符号文件之后,你会发现最明显的不同是每个模块都有与其相关的两个符号文件:一个扩展名为.dbg,新增加的那个文件的扩展名翻译 2005-05-25 23:37:00 · 5758 阅读 · 38 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第七章(2)
第七章 Windows 2000的对象管理翻译:Kendiv( fcczj@263.net )更新:Sunday, May 22, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。OBJECT_TYPE结构在前面讨论对象表头字段时,总是涉及到“类型对象”或OBJECT_TYPE结构,那么现在就让我们开始讨论它们。正式的来讲,一个类型对象是一种特殊类型的对象,它可以是一翻译 2005-05-22 01:32:00 · 4255 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第七章(1)
第七章 Windows 2000的对象管理翻译:Kendiv( fcczj@263.net )更新:Thursday, May 19, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 在Windows 2000内部几乎没有什么比它的对象还有趣。如果可以像观看行星表面一样查看操作系统的内存空间,那么对象看起来就像活在行星上的生物。存在着多种类型的对象,有大有小,有复杂翻译 2005-05-20 23:37:00 · 3785 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(6)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Saturday, May 14, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 实现内核API 的Thunks其实,可替代简单内核API函数的基本框架已经存在。我称其为“Thunks”,这是Windows行话中常见的一个术语,它代表一小段代码,这段代码是一个前端函数,翻译 2005-05-14 20:04:00 · 4002 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(5)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Friday, May 13, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 将调用接口封装为DLL尽管w2k_spy.sys已经导出了针对内核函数的IOCTL调用接口,但该接口在使用时多少有些不太方便。如果你想调用一个简单的函数,如MmGetPhysicalAddre翻译 2005-05-13 23:16:00 · 3036 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(1)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Tuesday, May 03, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 在第二章,我解释了Windows 2000是如何通过中断门机制,来允许用户模式下的程序调用其内核API函数的一个子集----Native API的。第四、五章中提到的程序依赖于设备I/O控制翻译 2005-05-03 15:59:00 · 3207 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第六章(4)
第六章 在用户模式下调用内核API函数翻译:Kendiv( fcczj@263.net )更新:Friday, May 06, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 通往用户模式的桥梁现在,内核调用接口的演化已经缓慢的到达了终点----至少已经涉及内核模式(kernel-mode)。让我们总结一下到目前为止,我们已经获得了什么:l 名为Sp翻译 2005-05-06 20:27:00 · 3444 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(4)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Tuesday, April 12, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 管理句柄要特别注意的是:SpyHookProtocol()函数仅在它内部包含SpyWriteFilter()函数的条件语句返回TRUE时,才会记录API函数调用。这种行为是为了减少Hook翻译 2005-04-12 01:34:00 · 3045 阅读 · 3 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(3)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Thursday, March 24, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 本书设计的hook机制的最大特色就是它是完全数据驱动的(data-driven)。只需简单的增加一个新的API符号表,该hook dispatcher就可适应Windows 2000翻译 2005-03-24 20:32:00 · 2646 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(2)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Thursday, February 24, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 汇编语言的救援行动通用解决方案的主要障碍是C语言的典型参数传递机制。就像你知道的,C通常在调用函数的入口点之前会将函数参数传递到CPU堆栈中。根据函数需翻译 2005-02-24 06:38:00 · 3277 阅读 · 6 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第三章(3)
第三章 编写内核模式驱动程序翻译:Kendiv( fcczj@263.net )更新:Thursday, February 10, 2005声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 设备I/O控制就像在本章开头的简介中提到的,在本书中,我们不会构建某一具体硬件的驱动程序。替代的是,我们将利用功能强大的内核驱动程序来研究Windows 2000的秘翻译 2005-02-10 00:16:00 · 2718 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第三章(2)
第三章 编写内核模式驱动程序翻译:Kendiv(fcczj@263.net)更新:Tuesday, February 08, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。作为补充这里给出DrvInfo.h的内容:// __________________________________________________________翻译 2005-02-08 04:55:00 · 3355 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第三章(1)
第三章 编写内核模式驱动程序翻译:Kendiv( fcczj@263.net )更新:Monday, February 07, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。在下一章中,我们会经常访问那些仅在内核模式下才有效的系统资源。大量的示例代码都被设计为内核驱动例程(Kernel-mode driver routine)。因此,需要有关开发翻译 2005-02-07 22:49:00 · 5886 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第二章(1)
第二章 The Windows 2000 Native API翻译:Kendiv(fcczj@263.net)更新:Saturday, January 29, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。本章对于Windows 2000 Native API的讨论,主要集中在这些API和系统模块之间的关系,将重点介绍Windows 2000采用翻译 2005-01-31 22:26:00 · 4593 阅读 · 2 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 附录B(表B-1)
附录 B内核API函数(Kernel API Functions) 附录B包含在第二章讨论的系统模块:win32k.sys、ntdll.dll和ntoskrnl.exe导出的函数列表。N/A表示不支持(Not Available)。 表B-1. Windows 2000 Native API 函数名称INT 2ehNtdll.翻译 2005-02-01 04:38:00 · 3327 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(3)
第一章 Windows 2000对调试技术的支持翻译:Kendiv(fcczj@263.net)更新:Monday, January 17, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。枚举系统模块和驱动(Drivers)psapi.dll可以返回当前内存中的内核模块。这本是非常简单的工作。psapi.dll的EnumDeviceDrive翻译 2005-01-17 18:09:00 · 2502 阅读 · 2 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(2)
第一章 Windows 2000对调试技术的支持翻译:Kendiv(fcczj@263.net)更新:Friday, January 18, 2005声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 内核调试器的命令尽管调试器的命令已经注意了易记性,但有时总是难以回忆起它们。因此,我把它们都整理到了附录A中。表A-1是其快速参考。这个表是调试器的help翻译 2005-01-14 20:18:00 · 2971 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第一章(1)
第一章 Windows 2000对调试技术的支持翻译:Kendiv(fcczj@263.net)更新:Friday, January 14, 2005本书的主页:http://www.orgon.com/w2k_internals/本书电子版的下载地址:http://www.volynkin.com/references.htm声明:转载请注明出处,并保证文章的完整性,本人保留译文的翻译 2005-01-12 23:34:00 · 5574 阅读 · 7 评论 -
Flex2.5用户手册(二)
Flex2.5用户手册(二)Flex可识别的输入文件格式(用于描述要生成的扫描器)Flex的输入文件包括如下的三个部分,通过%%分隔开,如下所示: 定义 %% 规则 %% 用户代码 定义段包括简单的名字声明,和为简化扫描器的描述而进行的宏定义,还有起始条件的声明,关于起始条件稍后将介绍。 定义名称的形式如下:名称原创 2003-10-25 22:28:00 · 3822 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第三章(4)
第三章 编写内核模式驱动程序翻译:Kendiv( fcczj@263.net )更新:Thursday, February 10, 2005声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 表3-4列出了定义于列表3-8中的函数,同时还给出了简短的介绍。其中的一些函数的名字,如w2kServiceStart()和w2kServiceControl()和SC管理器翻译 2005-02-10 00:27:00 · 2683 阅读 · 6 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第二章(2)
第二章 The Windows 2000 Native API翻译:Kendiv(fcczj@263.net)更新:Friday, February 04, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。Windows 2000运行时库Nt*()和Zw*()函数构成了Native API的基本部分,但并不是主要部分,还有一部分代码位于ntdl翻译 2005-02-06 13:41:00 · 4747 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(6)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv( fcczj@263.net )更新:Sunday, February 17, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 IOCTL函数SPY_IO_PDE_ARRAYSPY_IO_PDE_ARRAY是另一个普通的函数,它只是简单的把整个页目录(开始于地址0xC0翻译 2005-02-18 00:39:00 · 2770 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(4)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv (fcczj@263.net )更新:Sunday, February 17, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 尽管Spy设备使用可缓冲的I/O,但它还是会检查输入/输出缓冲区的有效性。因为客户端程序传入的数据可能比所需的少或者提供的缓冲区不够容纳输出数据。翻译 2005-02-16 09:55:00 · 2731 阅读 · 3 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(1)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv( fcczj@263.net )更新:Sunday, February 14, 2005声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 内存管理对于操作系统来说是非常重要的。本章将全面的纵览Windows 2000的内存管理机制以及4GB线性地址空间的结构。针对此部分内容,将解释Intel翻译 2005-02-13 00:59:00 · 2884 阅读 · 3 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(7)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv( fcczj@263.net )更新:Tuesday, February 22, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 内存Dump工具----本书示例程序现在你已经学完了复杂和让人困惑的内存Spy设备的IOCTL函数的代码,你可能想看这些函数运行起来是什么样翻译 2005-02-19 06:28:00 · 2777 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(5)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv( fcczj@263.net )更新:Sunday, February 17, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 IOCTL函数SPY_IO_INTERRUPTSPY_IO_INTERRUP类似于SPY_IO_SEGEMT,不过该函数仅影响存储在系统中断描翻译 2005-02-18 00:35:00 · 2906 阅读 · 1 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(3)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv (fcczj@263.net )更新:Sunday, February 17, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 Memory Spy Device示例微软对Windows NT和2000说的最多的就是它们是安全的操作系统。它们不但在网络环境中加入了用户验翻译 2005-02-16 09:46:00 · 2951 阅读 · 3 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第四章(2)
第四章 探索Windows 2000的内存管理机制翻译:Kendiv( fcczj@263.net )更新:Sunday, February 14, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。数据结构本章随后的示例代码的某些部分将涉及底层的内存管理机制,在前面我们已快速浏览了该机制内部的大致轮廓。为了方便,我用C语言定义了几个数据结构。这翻译 2005-02-14 10:44:00 · 2403 阅读 · 0 评论 -
《Undocumented Windows 2000 Secrets》翻译 --- 第五章(1)
第五章 监控Native API调用翻译:Kendiv( fcczj@263.net )更新:Thursday, February 24, 2005 声明:转载请注明出处,并保证文章的完整性,本人保留译文的所有权利。 拦截系统调用在任何时候都是程序员们的最爱。这种大众化爱好的动机也是多种多样的:代码性能测试(Code Profiling)和优化,逆向工程,用户活动记录等等翻译 2005-02-22 08:40:00 · 3819 阅读 · 0 评论