原文发表于百度空间,2008-7-26========================================================================== 继续研究PEB,这时候才发现之前写<从PEB获取内存中模块列表>一文时出现的错误.下面是一个结构: typedef struct _LDR_MODULE { LIST_ENTRY InLoadOrderModuleList; LIST_ENTRY InMemoryOrderModuleList; LIST_E…
原文发表于百度空间,2008-7-25========================================================================== PEB中的Ldr部分包含有当前进程所加载的模块信息.lkd> dt _pebntdll!_PEB   +0x000 InheritedAddressSpace : UChar   +0x001 ReadImageFileExecOptions : UChar   +0x002 BeingDebugged   …
原文发表于百度空间,2008-7-28========================================================================== 前面介绍了修改PEB中已加载模块的双链,来隐藏指定的模块.不过要对付这样隐藏,一个暴力搜索内存就够了. 实现思路如下:地址以一个页的大小为单位从0x00000000到0x7FFFFFFF遍历,检查是否具有PE特征.页的大小可以通过GetSystemInfo()得到,结果在SYSTEM_INFO结构的DWORD…
原文发表于百度空间,2008-7-26========================================================================== 用常用的几个杀毒工具看了下之前写的改映像路径的程序,发现原来非常有意思好几个工具都不能正确识别路径了,吼吼- 贴几个图上来: 狙剑: 安天的Atool: gmer(有一点小问题,在模块列表中显示不出来): Syscheck: WsysCheck: 360安全卫士: 还有不少进程工具估计好不到哪儿去.IceSwo…
原文发表于百度空间及看雪论坛,2010-01-10 看雪论坛地址:https://bbs.pediy.com/thread-104918.htm  代码及附件可到这里下载========================================================================== ring0调用ring3早已不是什么新鲜事,除了APC,我们知道还有KeUserModeCallback.其原型如下: NTSTATUS KeUserModeCallback (…
原文发表于百度空间,2009-07-14========================================================================== 标准的驱动与ring3的通信过程是这样的:驱动中创建设备,并为设备创建符号链接,ring3用CreateFile打开符号链接得到设备句柄,然后DeviceIoControl发送ControlCodeDeviceIoControl的内容被封装成IRP到达Device,Device其所属Driver的对应派遣例程…
原文发表于百度空间,2008-11-02========================================================================== 先定义一下用到的几个变量:char *hModule=NULL;//映射后的基址PIMAGE_OPTIONAL_HEADER pOptHeader;//扩展头PIMAGE_DATA_DIRECTORY pRelocTable=NULL;//指向重定位表PIMAGE_BASE_RELOCATION pReloc…
原文发表于百度空间及看雪论坛,2009-05-13 看雪论坛地址:https://bbs.pediy.com/thread-89708.htm========================================================================== 最近很忙,也很懒,发点以前写的东西吧~学习了一下古老的CsrssWalker,写点笔记~~在Csrss.exe中,保存着所有Win32子系统进程的进程信息,这些信息以链表的形式保存.正常情况下,每一个新创建的…
写在前面 在项目中经常用到解析url中参数的逻辑,今天先下载就自己封装了一个方法,方便以后使用的时候,信手拈来.当然这里给出的方法是针对常见的url参数类型的,对于重写url,或者路由格式的不考虑. c#方法 /// <summary> /// 获取url中参数 /// </summary> /// <param name="url">要解析的url</param> /// <param name="baseUrl&quo…
原文发表于百度空间,2008-7-24 当时对UNICODE_STRING的使用还有点问题,导致最终效果图中字符串被截断了========================================================================== 先从分析PEB开始吧.感觉分析这个东西,首先要把类型定义搞清楚,这个在Windbg里dt _PEB就可以了搞清楚定义主要是为了定位相关变量的偏移.PEB中的ProcessParameters部分就是进程的参数了,里面就有我们感兴…