存档

2011年12月 的存档

扇区、磁道、柱面和簇的介绍

2011年12月27日 4 条评论

一直以来对这几个概念非常模糊,最近看RamDisk(感觉WDF和WDM差距好大啊),就认真的看了下概念,嘿嘿。首先可以想象成一跟由很多圆形盘片组成的圆柱体。
磁道:Track,可以理解为一个圆形盘片由许许多多的同心圆组成,每一个同心圆可以认为是一个磁道。(硬盘是一个高速旋转的东西,当磁盘旋转时,磁头若保持在一个位置上不动,则磁头会在磁盘表面划出一个圆形轨迹,这些圆形轨迹就叫做磁道)
扇区:Sector,可以联想到“扇形区域”,磁盘上的每个磁道被等分为若干个弧段,这些弧段便是磁盘的扇区,每个扇区的[……]

继续阅读

分类: Windows开发 标签: , ,

IO_STACK_LOCATION与IRP的一点笔记

2011年12月24日 2 条评论

IO_STACK_LOCATION和IRP算是驱动中两个很基础的东西,为了理解这两个东西,找了一点资料。
1. IRP可以看成是Win32窗口程序中的消息(Message),DEVICE_OBJECT可以看成是Win32窗口程序中的窗口(Window)
2. 任何内核模式程序在创建一个IRP时,同时还创建了一个与之关联的IO_STACK_LOCATION结构数组:数组中的每个堆栈单元都对应一个将处理该IRP的驱动程序。
IRP的头部有一个当前IO_STACK_LOCATION的数组索引,同时也有[……]

继续阅读

驱动读写方式(缓冲区读写与直接读写)

2011年12月20日 没有评论

应用程序和驱动程序交互数据需要指定数据的交互方式,通过设置DEVICE_OBJECT的Flags成员来标志。有DO_BUFFERED_IO、DO_DIRECT_IO或者0
DO_BUFFERED_IO:一般用于比较简单且不追求效率情况下的解决方案,把应用层(Ring3层)中内存空间中的缓冲数据拷贝到内核空间。IRP的AssociatedIrp.SystemBuffer成员指向内核中的缓冲区。
DO_DIRECT_IO:把应用层的地址空间映射到内核空间,这需要在页表中增加一个映射。当然这不需要程[……]

继续阅读

IRQL科普

2011年12月19日 没有评论

IRQL是Interrupt ReQuest Level,中断请求级别。处理器在一个IRQL上执行线程代码。IRQL是帮助决定线程如何被中断的。在同一处理器上,线程只能被更高级别IRQL的线程能中断。每个处理器都有自己的中断IRQL。常见的IRQL级别有四个:Passive、APC、 Dispatch、DIRQL。
PASSIVE_LEVEL
IRQL最低级别,没有被屏蔽的中断,线程执行用户模式,可以访问分页内存。
APC_LEVEL
只有APC级别的中断被屏蔽,可以访问分页内存。当有APC发生[……]

继续阅读

分类: Windows驱动开发 标签: ,

MFC/Win32 SDK从资源释放文件代码

2011年12月14日 没有评论

准备把一些比较常用的代码放到博客上做一个备份,方便自己日后快速查找。我给这些文章都加一个标签——“代码仓库”。今天贴上来的代码是从资源施放文件的函数,也就是先把一些文件(格式不限)以资源的方式加入到Win32/MFC的工程里面,然后通过代码动态释放,这种做法的好处是可以把很多文件集中在一起,方便用户使用;当然,病毒也经常使用这种技术,释放DLL、SYS之类的。

如果要防止安全软件误报,最好还是先做一个简单的加密,比如异或一个BYTE、增加或减少一个常数之类的,这个还是不加了,要不就显得臃肿了。[……]

淘宝货到付款骗局

2011年12月8日 10 条评论

在乌云上看到的,后来搜了一下,发现网上早有人爆料这样的骗局了,因为我个人没有遇见过,觉得有上当的可能性,所以也在看完之后过来和大家分享一下。
诈骗的大概流程如下:
1. 吸引买家
骗子卖家首先利用低价吸引买家。
2.货到付款
买家拍下商品后,骗子联系买家编造种种理由要求买家选择货到付款模式。
3. 下线货到付款,线上不发货绕过淘宝信用评价机制
卖家通过货到付款,使用仿造的假货通过快递货到付款业务收到买家的钱。而淘宝网上订单一直保持在“等待卖家发货”状态。而“等待卖家发货”状态下,用户是不能评价,也不能维权的。
这样就形成了实际利用淘宝完成了交易,但网上状态是未完成交易,买家无法评价和维权,也就完美的绕过了淘宝的信用评价机制。
这种状态下唯一的维权方式是消费者热线,但淘宝消费者热线非工作时间禁止呼叫,工作时间永远占线。[……]

VMWare搭建驱动双机调试环境

2011年12月7日 2 条评论

一、虚拟机设置
以XP为例,因为XP相对Vista/Win7要小巧玲珑许多,安装方便,占用的空间也少,而且配置更加简单。在“文件夹选项”中设置显示隐藏文件和显示系统文件,打开系统盘(比如C盘),找到Boot.ini,去掉这个文件的只读属性,用记事本打开Boot.ini,大概的内容如下
二、VMWare设置
关闭虚拟机,来到VMWare之后选择对应的虚拟机,对齐进行设置。选择“Commands”栏中的“Edit Virtual Machine Settings”,单击“Add”按钮增加一个串口,也就是Serial Port,单击下一步,选择“Output to named pipe”,之后进行相应的设置
三、Windbg设置
给Windbg创建一个快捷方式,设置一下这个快捷方式的属性:在快捷方式的目标后面增加一些命令,我这里是:”C:\Program Files\Debugging Tools for Windows (x86)\windbg.exe” -b -k com:port=\\.\pipe\com_1,baud=115200,pipe[……]

Regular Expressions Cheat Sheet(正则表达式速查卡片)

2011年12月4日 2 条评论

一个关于正则表达式的小卡片,上面记录了正则表达式的一些常见规则,感觉很不错,收藏一下 [em005] 。

此卡片官方页面为:http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet/

转存一份PDF和PNG图片到博客,下载地址:本站PDF下载(推荐) Dbank打包下载

突然感觉DBank很坑爹,不知道从什么时候开始下载必须要登录了,做大了就耍流氓了,竟然还有弹窗广告[……]

分类: Python 标签: ,

SFX自动脱壳

2011年12月2日 2 条评论

OD还有这么一个功能,以前一直不知道。虽然步骤很简单,但是原理网上却不见有讨论,似乎只能脱一些压缩壳。
使用SFX自动脱壳法脱壳的常见步骤:

  1. 将OD设置为忽略所有异常;
  2. 在OD的“调试选项”对话框的“SFX”选项卡中选择“字节模式跟踪实际入口”选项并确定;
  3. 将待脱壳程序载入OD,待程序载入完成后,会直接停在OEP处。

测试了一下ASPACK,结果可行,OD会自动停留在OEP!本次脱壳完成后记得把OD的SFX设置改回去!

0100739D . 6A 70 push [……]

继续阅读

分类: 逆向调试 标签: , ,