2016年5月1日

Windows xp 重载内核(使用Irp进行文件操作)

摘要: 一、前言 最近在阅读A盾代码A盾电脑防护(原名 3600safe)anti-rootkit开放源代码,有兴趣的可以去看雪论坛下载,本文代码摘自其中的重载内核。 二、实现步骤 1.ZwQuerySystemInformation大法获得系统模块信息 NtosKrnl.exe 这里第一模块名称是根据单核 阅读全文

posted @ 2016-05-01 09:45 ciyze0101 阅读(1602) 评论(0) 推荐(0) 编辑

2016年4月25日

Windows x86 x64使用SetThreadContext注入shellcode的方式加载DLL

摘要: 一、前言 注入DLL的方式有很多,在R3就有远程线程CreateRemoteThread、SetWindowsHookEx、QueueUserApc、SetThreadContext 在R0可以使用apc或者使用KeUserModeCallBack 关于本文是在32位和64位下使用SetThread 阅读全文

posted @ 2016-04-25 20:33 ciyze0101 阅读(3797) 评论(0) 推荐(1) 编辑

2016年4月17日

虚函数表与虚表钩子

摘要: 0x01、前言 对C++ 了解的人都应该知道虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来实现的。简称为V-Table。在这个表中,主是要一个类的虚函数的地址表,这张表解决了继承、覆盖的问题,保证其容真实反应实际的函数。这样,在有虚函数的类的实例中这个表 阅读全文

posted @ 2016-04-17 12:59 ciyze0101 阅读(1847) 评论(0) 推荐(0) 编辑

2016年4月10日

Win7 x86内核调试学习

摘要: 参考 这两天对某P双机调试的学习及成果 ,非常好的一篇分析贴。 本文在Win7 x86下的分析,在虚拟机中以/DEBUG模式启动TP游戏,系统会自动重启。 0x01 内核调试全局变量 根据软件调试第十八章,windows启动过程中会调用两次KdInitSystem()函数 第一次调用KdInitSy 阅读全文

posted @ 2016-04-10 18:28 ciyze0101 阅读(2347) 评论(0) 推荐(0) 编辑

2016年4月9日

Linux增加系统调用

摘要: 使用Ubuntu14.04,内核从3.19.0替换成3.19.2,成功添加系统调用 一、www.kernel.org上下载内核,我下载的版本是3.19.2,并解压到/usr/src/目录 超级管理员权限 将内核源码拷贝到 /usr/src 目录,mv是移动指令,cp是拷贝指令 将内核文件解压缩 ta 阅读全文

posted @ 2016-04-09 15:10 ciyze0101 阅读(157) 评论(0) 推荐(0) 编辑

2016年4月4日

深入学习APC

摘要: 0x01 前言 APCs(Asynchronous Procedure Calls), 在NT中,有两种类型的APCs:用户模式和内核模式。用户APCs运行在用户模式下目标线程当前上下文中,并且需要从目标线程得到许可来运行。特别是,用户模式的APCs需要目标线程处在alertable等待状态才能被成 阅读全文

posted @ 2016-04-04 22:55 ciyze0101 阅读(4412) 评论(1) 推荐(1) 编辑

2016年4月3日

Windows xp下IDT Hook和GDT的学习

摘要: 一、前言 对于IDT第一次的认知是int 2e ,在系统调用的时候原来R3进入R0的方式就是通过int 2e自陷进入内核,然后进入KiSystemService函数,在根据系统服务调用号调用系统服务函数。而2e就是IDT(系统中断描述符表)中的索引位2e的项,而KiSystemService就是该项 阅读全文

posted @ 2016-04-03 20:47 ciyze0101 阅读(1533) 评论(0) 推荐(0) 编辑

2016年4月2日

简易调试器的实现(硬件断点)

摘要: 一、前言 上篇链接 简易调试器的实现(一) 先说一下上次对于软件断点CC还原的位置,int 3断点,属于陷阱类异常,恢复的地方应该是发生异常指令的下一条指令,但是我们在收到信息的时候FirstChance的时候是下一条,在第二次的时候却是断点发生的地方。最近看了下<软件调试>得到了解释 首先写个小程 阅读全文

posted @ 2016-04-02 23:12 ciyze0101 阅读(2289) 评论(0) 推荐(0) 编辑

2016年3月23日

Windows内核对象之进程、文件、注册表对象的ObjectHook的学习

摘要: 0x01 OBJECT_HEADER结构 这是对象的数据结构的形态,其中OBJECT_HEADER的结构如下 typedef struct _OBJECT_HEADER { LONBG PointerCount; union { LONG HandleCount; volatile PVOID Ne 阅读全文

posted @ 2016-03-23 20:18 ciyze0101 阅读(1048) 评论(0) 推荐(0) 编辑

2016年3月22日

ZwQueryVirtualMemory暴力枚举进程模块

摘要: 0x01 前言 常用的枚举模块的方法是在PEB中的三条链来枚举模块。 这里记录另一种通过ZwQueryVirtualMemory暴力枚举模块的方法。 0x02 使用ZwQueryVirtualMemory暴力枚举模块 NTSTATUS NtQueryVirtualMemory(HANDLE Proc 阅读全文

posted @ 2016-03-22 17:31 ciyze0101 阅读(7844) 评论(0) 推荐(0) 编辑

导航