2006年02月
讨论一种新的文件系统过滤驱动模型,所谓的微过滤器(minfiter)。阅读全文>
发表于 @ 2006年02月27日 08:43:00|评论(loading...)|编辑
文章介绍了反病毒引擎中普遍开用的实时监控机制的实现原理,虽然文章比较老了,但是还是很有价值的。阅读全文>
发表于 @ 2006年02月04日 17:40:00|评论(loading...)|编辑
利用SoftICE在系统Boot阶段对内核驱动程序进行源码级的调试方法,我本人已经利用这个方法有效的实现了这一目标。阅读全文>
发表于 @ 2006年02月04日 17:33:00|评论(loading...)|编辑
Windows下驱动程序开发者基本都需要构建一个内核调试环境,这篇短文描述了本人在建立这样一个环境时的一点心得,希望有用。阅读全文>
发表于 @ 2006年02月04日 17:08:00|评论(loading...)|编辑
在开发Windows驱动程序的时候,我们可以采用SoftICE或者WinDBG等内核调试器来调试驱动程序中存在的Bug,但是如果这些驱动程序发布出去,在客户现场出现蓝屏或者直接重启的现象,这时候如果想找到其中存在的问题就十分麻烦了,这时候Windows的崩溃转储信息就能够帮助我们了解系统崩溃时的系统状况。通过这种方法,本人的实践证明是十分有效的。阅读全文>
发表于 @ 2006年02月04日 16:52:00|评论(loading...)|编辑
看看Windows的Cache是如何运作的,Cache大幅度提高了Windows系统的效率。阅读全文>
发表于 @ 2006年02月04日 13:09:00|评论(loading...)|编辑
写这个文章的初衷是想知道究竟一个读写文件的irp都是怎样被处理的..... 阅读全文>
发表于 @ 2006年02月04日 13:06:00|评论(loading...)|编辑
NTFS是Windows NT引入的新型文件系统,它具有许多新特性。本文旨在探索NTFS的底层结构,所叙述的也仅是文件在NTFS卷上的分布。阅读全文>
发表于 @ 2006年02月04日 13:03:00|评论(loading...)|编辑
这是一篇转自驱动开发网论坛的中英文对照翻译的文章,介绍了在IRP_MJ_CREATE例程当中处理IRP重入现象的解决方法,值得推荐。阅读全文>
发表于 @ 2006年02月04日 12:54:00|评论(loading...)|编辑
在书写windows系统下的文件系统过滤驱动程序时,我们往往需要实现查询一下待处理文件的信息,然后决定做何处理,为了实现这个小目标,可以调用Windows Native API函数ZwQueryInformationFile并提供希望查询的文件信息类的名字及结构即可。阅读全文>
发表于 @ 2006年02月04日 12:46:00|评论(loading...)|编辑
写过Windows下的文件系统过滤驱动程序,对FASTFAT和NTFS有一点了解,回过头来再看看Linux的EXT2文件系统是怎么回事儿吧。阅读全文>
发表于 @ 2006年02月04日 12:27:00|评论(loading...)|编辑
libpcap 是 unix/linux 平台下的网络数据包捕获函数包,大多数网络监控软件都以它为基础。Libpcap 可以在绝大多数类 unix 平台下工作,本文分析了 libpcap 在 linux 下的源代码实现,其中重点是 linux 的底层包捕获机制和过滤器设置方式,同时也简要的讨论了 libpcap 使用的包过滤机制 BPF。阅读全文>
发表于 @ 2006年02月03日 22:28:00|评论(loading...)|编辑
介绍了在Linux 上找出并解决程序错误的主要方法,不过这里没有介绍memprof,ElectricFence以及valgrind,我在实际的工作当中最喜欢使用valgrind,它十分强大,可惜没有写过使用笔记,以后补上吧。阅读全文>
发表于 @ 2006年02月03日 22:14:00|评论(loading...)|编辑
作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。 阅读全文>
发表于 @ 2006年02月03日 22:10:00|评论(loading...)|编辑
shell是用户和Linux操作系统之间的接口。Linux中有多种shell,其中缺省使用的是Bash。
本章讲述了shell的工作原理,shell的种类,shell的一般操作及Bash的特性。 阅读全文>
发表于 @ 2006年02月03日 22:07:00|评论(loading...)|编辑
每个 Linux 程序都是一个可执行文件,它含有操作码列表,CPU 将执行这些操作码来完成特定的操作。例如,ls 命令是由 /bin/ls 文件提供的,该文件含有机器指令的列表,在屏幕上显示当前目录中文件的列表时需要使用这些机器指令。几乎每个程序的行为都可以通过修改其配置文件来按照您的偏好或需要去定制。 阅读全文>
发表于 @ 2006年02月03日 22:05:00|评论(loading...)|编辑
Fragroute攻击工具曾经是很多NIDS产品的杀手,能够欺骗绝大部分基于单包+字符串匹配的入侵检测系统,不过对于那些利用全状态协议分析的产品来说就没有那么灵了。阅读全文>
发表于 @ 2006年02月02日 21:34:00|评论(loading...)|编辑
第一篇在网上出现的关于内核零拷贝技术的中文论文,通过这篇文章以及对Linux内核NAPI技术的分析,我开发出了自己的基于零拷贝的NIDS系统,效果相当不错。阅读全文>
发表于 @ 2006年02月02日 21:26:00|评论(loading...)|编辑
当网卡接收到一个数据包到达时,以中断的方式通知内核接收这个数据包,这能够大大提高系统的运行效率,然而在处理大流量数据时,试验证明,系统效率瓶颈就在处理中断上,而此时一个很自然的想法就是采用polling方式处理数据。阅读全文>
发表于 @ 2006年02月02日 21:23:00|评论(loading...)|编辑
以前分析Linux内核2.6版源码以及阅读《Linux内核2.4版源代码分析大全》一书时写的读书笔记,主要想了解一下Linux2.6内核的进程调度机制。阅读全文>
发表于 @ 2006年02月02日 21:11:00|评论(loading...)|编辑
LIDS是Linux下的入侵检测和防护系统,它增强了内核的安全性,它在内核中实现了参考监听模式以及强制访问控制(Mandatory Access Control)模式。不过这篇文章相对较老,是我以前做NIDS时收集的资料,最新的2.6内核已经将其编入标准内核当中了,有时间的话编译进内核试试。
阅读全文>
发表于 @ 2006年02月02日 20:56:00|评论(loading...)|编辑
snort是一个轻量级的入侵检测系统,它具有实时数据流量分析和日志Ip网络数据包的能力,能够进行协议分析,对内容搜索/匹配。它能够检测各种不同的攻击方式,对攻击进行实时警报。此外,Snort具有很好的扩展性和可移植性。最新的2.x版,检测效率有了大幅度的提高,因此,snort系统是开发网络入侵检测系统的最好教材。阅读全文>
发表于 @ 2006年02月02日 20:51:00|评论(loading...)|编辑