摘要: 蓝屏分析蓝屏(Blue Screen)是Windows中用于提示严重的系统级报错的一种方式。蓝屏一旦出现,Windows系统便宣告终止,只有重新启动才能恢复到桌面环境,所以蓝屏又被称为蓝屏终止(Blue Screen Of Death),简称为BSOD。通过系统的“启动和故障恢复”设置,可以在系统发生错误或崩溃时自动将系统的状态从内存转储到磁盘文件中。Windows系统定义了3种不同的系统转储文件。l 完整转储(Complete memory dump)包含产生转储时物理内存中的所有数据,其文件大小通常比物理内存的容量还要大,默认位置为%SystemRoot%\MEMO在RY.DMP。l 内核 阅读全文
posted @ 2011-07-18 17:16 博文视点(北京)官方博客 阅读(313) 评论(0) 推荐(0) 编辑
摘要: DEP机制的保护原理溢出攻击的根源在于现代计算机对数据和代码没有明确区分这一先天缺陷,就目前来看重新去设计计算机体系结构基本上是不可能的,我们只能靠向前兼容的修补来减少溢出带来的损害,DEP(数据执行保护,DataExecution Prevention)就是用来弥补计算机对数据和代码混淆这一天然缺陷的。DEP的基本原理是将数据所在内存页标识为不可执行,当程序溢出成功转入shellcode时,程序会尝试在数据页面上执行指令,此时CPU就会抛出异常,而不是去执行恶意指令。如图12.1.1所示。DEP 的主要作用是阻止数据页(如默认的堆页、各种堆栈页以及内存池页)执行代码。微软从Windows X 阅读全文
posted @ 2011-07-18 17:07 博文视点(北京)官方博客 阅读(567) 评论(0) 推荐(0) 编辑
摘要: 010脚本编写入门学过C/C++的您会发现010 Editor的文件解析脚本(即010脚本)看起来跟C/C++的结构体定义比较相似。然而文件解析脚本不是结构体,而是一个自上而下执行的程序,所以它可以使用if、for、while等语句。在010脚本中,声明的每个变量都对应着文件的相应字节。比如以下声明:char header[4];int numRecords;这意味着,文件的首4个字节将会映射到字符数组header中,下4个字节则会映射到整型变量numRecords中,并最终显示在解析结果中。然而,在编写010脚本时可能会遇到这种情况:需要定义一些变量,但是这些变量并不对应着文件中的任何字节, 阅读全文
posted @ 2011-07-18 14:35 博文视点(北京)官方博客 阅读(252) 评论(0) 推荐(0) 编辑