上一页 1 2 3 4 5 6 7 ··· 14 下一页
摘要: PE文件的组成头部DOS头(兼容老版本系统而保留的)NT头文件头扩展头数据目录表导出表 : 用于保存dll中的导出符号导入表 : 用于保存本模块所使用的其它模块的符号在程序中调用导出函数的时候,形成汇编句式:call [IAT]重定位表 : 支持随机加载基址区段头.text : 用于保存可执行的代码.data : 用于全局变量/对象的初始数据.rdata : 用于保存常量数据区段数据ELF文件组成... 阅读全文
posted @ 2019-09-05 09:13 ltyandy 阅读(259) 评论(0) 推荐(0) 编辑
摘要: vimtutorvimtutor (小写的)进入学习教程,这是英文版本的vimtutor zh_CN这个进入是中文版本的:set nu (冒号 set nu)显示行号hjkl 光标左下上右移动,w下个单词,b上个单词:q! (冒号q感叹号)不保存退出 x 删除指定位置字母小写i进入编辑,esc退出,从光标当前位置开始添加 大写I行首a进入编辑,esc退出,从光标右边开始添加,大写A行尾控制台输入 ... 阅读全文
posted @ 2019-09-04 00:56 ltyandy 阅读(315) 评论(0) 推荐(1) 编辑
摘要: 修改更新源源-是一些软件列表,以及软件所对应的下载地址 不同的系统版本有不同的源. 最好使用国内的源. 保存源列表的文件是: /etc/apt/sources.list更新源sudo apt-get update sudo - 以管理员身份运行 apt-get 是一个工具的名字, 软件包管理器 update 是工具的一个命令行选项, 表示 要根据 /etc/apt/sources.list文件中 ... 阅读全文
posted @ 2019-09-03 13:41 ltyandy 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 内核重载需求的产生在内核中有很多HOOK, 例如:KiFastCallEntry, SSDT,IDT,OBJECT HOOK,甚至是内核API的内联HOOK , 有些HOOK很容易找到,并还原, 有些HOOK就很难找到. 在某些时候(例如一个病毒HOOK了int3中断,这样调试器就无法得到断点事件),清除HOOK是一种反反调试的技术. 也是防护与反防护的技术. —总之内核层的对抗非常的激烈, 为了... 阅读全文
posted @ 2019-08-31 16:21 ltyandy 阅读(1484) 评论(1) 推荐(4) 编辑
摘要: SSDT概述通过08内核编程HOOK_KiFastCall.md可以知道,用户层的函数调用都会进入到0环, 0环将服务函数的地址实现保存在SSDT表中. KiFastCallEntry函数会使用调用号找到函数的参数个数表和函数地址表, 并将用户栈的参数拷贝到内核栈,最后调用了系统服务表中的函数.SSDT HOOK的原理很简单: 找到SSDT,将对应的函数地址进行替换,就完成HOOK了.在进行HOO... 阅读全文
posted @ 2019-08-31 16:14 ltyandy 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 系统调用用户层的API调用最终都需要进入到0环,其功能才能够实现:上图描述的就是整个windows操作系统的体系结构. Kernel32.dll, user32.dll 等所有用户层DLL它们在调用API时,最终都会调用到ntdll.dll中. ntdll.dll是系统内核代码的存根部分,这个存根部分的代码非常的简单: 函数内部的逻辑都是一致的:将一个数值保存到eax调用一个相同的函数:edx ,... 阅读全文
posted @ 2019-08-31 16:12 ltyandy 阅读(495) 评论(0) 推荐(0) 编辑
摘要: windwos的对象管理器windwos操作系统虽然是以C来编写的,但也使用了面向对象的思想. windwos的内核主要有: 执行体, 微内核,HAL三层. 对象管理器是执行体重的组件. 主要管理执行体对象. windwos对象管理器的目的是:为执行体的数据结构提供一种统一而又可扩展的定义和控制机制.提供统一的安全访问机制.在无须修改已有系统代码的情况下, 加入新的对象类型.提供一组标准的API来... 阅读全文
posted @ 2019-08-30 15:49 ltyandy 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 文件操作文件操作函数在内容中使用的ZwXXXX系列,下面是函数一览表函数名功能ZwCreateFile打开文件ZwReadFile读取文件内容ZwWriteFile将数据写入文件ZwQueryInformationFile查询文件信息ZwDeleteFile删除文件ZwClose关闭文件打开/创建文件在内核中打开文件比较繁琐, 该函数使用了比较多的API:要打开的文件路径必须设置在OBJECT_A... 阅读全文
posted @ 2019-08-30 00:29 ltyandy 阅读(541) 评论(0) 推荐(0) 编辑
摘要: 内核层#include ​#define CTRL_CODE1 CTL_CODE(FILE_DEVICE_UNKNOWN, 0x801, METHOD_IN_DIRECT, FILE_ANY_ACCESS)#define CTRL_CODE2 CTL_CODE(FILE_DEVICE_UNKNOWN, 0x802, METHOD_BUFFERED, FILE_ANY_ACCESS)#define ... 阅读全文
posted @ 2019-08-30 00:27 ltyandy 阅读(698) 评论(0) 推荐(1) 编辑
摘要: 中断门#include #include ​// 在学习保护模式的时候,务必使用单核单线程的虚拟机,因为// 保护模式中接触到的 GDT IDT 等是以核心位单位的。​// 我们可以使用一个 6 字节的缓冲区保存 GDT 的内容 unsigned char gdt[6] = { 0 };​// 这是一个需要 R0 权限才能正确执行的代码_declspec(naked) void r0(){ ... 阅读全文
posted @ 2019-08-28 20:43 ltyandy 阅读(580) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 14 下一页