寒江独钓 - 谭文

寒江独钓

谭文

出版时间

2009-05-31

ISBN

9787121087967

评分

★★★★★
书籍介绍

本书从Windows内核编程出发,全面系统地介绍了串口、键盘、磁盘、文件系统、网络等相关的Windows内核模块的编程技术,以及基于这些技术实现的输入密码保护、防毒引擎、文件加密、网络嗅探、网络防火墙等信息安全软件的核心组件的具体编程。主要知识重点包括:Windows串口与键盘过滤驱动、Windows虚拟存储设备与存储设备过滤驱动、Windows文件系统过滤驱动、文件系统透明加密/解密驱动、Windows各类网络驱动(包括TDI过滤驱动及3类NDIS驱动),以及最新的WDF驱动开发模型。有助于读者熟悉Windows内核驱动的体系结构,并精通信息安全类的内核编程技术。本书的大部分代码具有广泛的兼容性,适合从Windows 2000一直到目前最新的Windows 7 Beta版。

本书适合大专院校计算机系的学生、普通Windows程序员、Windows内核程序员、信息安全行业的程序员,以及希望了解Windows系统底层知识的计算机编程爱好者使用。阅读本书,需要读者有C语言、数据结构、操作系统和计算机网络的基础知识。

谭文,C程序员。1980年生于湖南。2002年毕业于西安交通大学自动控制系。毕业后一直从事各类系统底层软件的开发设计工作;目前在英特尔在上海紫竹科技园的研发中心参与不同平台二进制指令动态翻译系统的项目开发。爱好聊天、发帖。曾著有《天书夜读——从汇编语言到Windows内核编程》一书。编写本书的第1~3,7,8,10~12章,并统稿全书。

杨潇,C程序员。1981年生于陕西。2006年毕业于西安交通大学自动控制研究所。一直从事各类系统软硬件接口部分的开发设计工作;目前在Comodo北京研发中心任职,负责各类Windows/Linux相关驱动的开发。爱好音乐、旅游和摄影。负责编写本书的第5,6章。

邵坚磊,前执业医生,现C、汇编程序员。1976年生于上海,毕业于上海交通大学计算机系,具有临床医学和计算机专业的双学位。长期致力于x86体系架构与Window...

(展开全部)

AI导读
核心看点
  • 系统讲解Windows内核驱动开发环境搭建与调试技巧
  • 深入剖析串口、键盘、磁盘、网络等核心模块编程
  • 结合实例详解密码保护、防毒引擎、防火墙等安全组件
适合谁读
  • 计算机专业学生及希望了解系统底层知识的编程爱好者
  • 从事Windows内核编程及信息安全行业的开发人员
  • 具备C语言、操作系统基础,想进阶安全编程的程序员
读前提醒
  • 需具备C语言、数据结构、操作系统及网络基础知识
  • 建议先阅读基础驱动书籍,否则直接上手可能感到吃力
  • 书中代码需配合WDK环境编译,部分配置需手动调整
读者共识
  • 作为入门书比直接啃官方文档更实用,条理清晰易上手
  • 侧重安全实战,对理解Windows底层机制有极高参考价值
  • 部分代码需微调才能运行,且作者对某些原理讲解较简略

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "请注意,因为大部分windows驱动程序都是内核驱动(kernel Driver),所以本书不区分“驱动编程”和“内核编程”,也不区分“内核模块”和“驱动程序”。这两个词汇都是指编译出扩展名为.sys的可执行文件 windows内核编程和用户应用程序编程有很多不同的地方"
  • "跟应用程序使用开发包SDK一样,内核编程使用WDK。WDK已经自带所有需要的头文件,库,C/C++语言及汇编语言的编译器和链接器,所以完全可以不用安装VS的情况下进行编程。DDK已成为历史了"
  • "编辑一个名为first.c的源文件,在进行内核编程的时候,必须查看WDK所自带的文档(跟MSDN一个道理),在文档里面,查询函数是否存在,使用环境要求及输入/输出"
  • "因为不是应用程序编程,所以所有win32 API都不能使用,部分C Runtime函数也不能用(某些还是可以用的),文档里面说明的函数都可以用。这些函数称为内核API"
  • "DriverEntry是每个内核模块的入口,加载这个模块时被系统进程System调用一次,如果没有设置DriverUnload函数指针,则这个模块一旦加载永远不能卸载了"
  • "把first.c保存在此目录下,在此目录下必须增加两个文件,以便WDK的build工具可以build它 ,其中一个文件名字必须为makefile(文件无扩展类型)"
  • "编译出来,不能双击执行,要用专门的安装工具,有很多,推荐srvinstw.exe"
  • "打开srvinstw.exe,选择安装服务,然后next,然后选择本地计算机,next,输入first(名称不一定要和文件名相同,可以随意输入,别一串乱打,不能和已存在的服务冲突,还要你记住名字,)。输入sys文件路径,只能手工,别单击浏览按钮,选择“设备驱动”,“NT驱动器目标名”不需要输入任何内容,然后next,选择启动类型一定要选择“手动”,方便调试,可以在所需要的时间进行启动和停止"
作者简介
谭文,C程序员。1980年生于湖南。2002年毕业于西安交通大学自动控制系。毕业后一直从事各类系统底层软件的开发设计工作;目前在英特尔在上海紫竹科技园的研发中心参与不同平台二进制指令动态翻译系统的项目开发。爱好聊天、发帖。曾著有《天书夜读——从汇编语言到Windows内核编程》一书。编写本书的第1~3,7,8,10~12章,并统稿全书。 杨潇,C程序员。1981年生于陕西。2006年毕业于西安交通大学自动控制研究所。一直从事各类系统软硬件接口部分的开发设计工作;目前在Comodo北京研发中心任职,负责各类Windows/Linux相关驱动的开发。爱好音乐、旅游和摄影。负责编写本书的第5,6章。 邵坚磊,前执业医生,现C、汇编程序员。1976年生于上海,毕业于上海交通大学计算机系,具有临床医学和计算机专业的双学位。长期致力于x86体系架构与Windows系统底层技术的研究与相关开发工作;目前在NEC-AS上海研发中心主持信息防泄密软件的Windows内核驱动的开发工作。是著名的反rootkit工具DarkSpy的作者之一。曾与谭文合著《天书夜读——从汇编语言到Windows内核编程》。爱好网游。编写本书的第4章。 其他有贡献的作者: 卢冠豪,C程序员。1981年生于中国台湾。毕业于辅仁大学资讯工程学系。长期从事C、C++、网络与通信程序设计的工作;参与过“端点安全”、“资产管理”、“网络流量分析”等项目的开发与维护;擅长Windows项目开发。平时爱好吸收与科技电脑有关的新知识。受邀编写本书的第9章。 张佩,C程序员,1982年生于江苏扬中,毕业于苏州大学。近三四年来,一直从事底层软件开发工作,乐此不疲。因偶然的机会,在NEC-AS公司加入了Infocage安全软件开发项目组,从此与底层驱动开发结缘。现工作于上海一家公司,服务于美国Avid公司音频驱动项目。此人好读书,好写文章,好交朋友。为人善,与人交善,诚善人也。受邀编写本书的第13章。 其他有贡献者: 杨瑾,西安交通大学在读博士生。在参与导师的项目过程中,因技术的需要阅读了本书的原稿,修改了书中的许多细节错误与纰漏,并按照本书介绍的步骤,编译、安装和测试了本书源码光盘上的部分代码。是本书最主要的审校者。 张帆,1980年生于北京,毕业于北京理工大学电子工程系。目前在赛门铁克北京的研发中心从事信息安全方面的工作;著名畅销书《Windows驱动开发技术详解》的作者。阅读了全书的原稿,并给出了许多指导性的意见,并为本书作序。 张银奎,国内著名的调试专家。目前和本书作者谭文在同一研发中心工作,著有《软件调试》一书。阅读了本书的全部原稿,修改了书中多处细节,给本书作者许多指导性的意见,并参与了本书的命名。 马勇,驱动开发网的站长,国内知名的文件系统驱动专家。“驱网核心技术丛书”的组织和策划者之一,阅读了全书的原稿,并给出了许多指导性的意见。
目录
第1章 内核上机指导 1
1.1 下载和使用WDK 2
1.1.1 下载安装WDK 2
1.1.2 编写第一个C文件 3
1.1.3 编译一个工程 5

显示全部
用户评论
至少我们搞定了,然后再去学原理
还行,内核开发的繁琐性在本书中被条理化,蛮不错的
代码的罗列堆积
很好的入门书,比直接看WDK的代码实用的多,但很多东西直接照着作可能行不通。需要稍微改改才行。
8错8错,入门中……
好多年前读过的....学习的不错资料。现在发现,作者就是身边同事
不喜欢
原理,本质的内容少
讲一些 windows debug 和 hack 的方法,有点玄学很多经验,不过我已经不亲 windows 了
Z-Library
收藏