社区
Windows Server
帖子详情
有谁知道 NT Loader 的结构吗?
Highway2000
2000-09-06 10:19:00
有 NTLDR 的源代码吗?
...全文
153
5
打赏
收藏
有谁知道 NT Loader 的结构吗?
有 NTLDR 的源代码吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
colarcui
2000-11-26
打赏
举报
回复
关注。
Highway2000
2000-11-26
打赏
举报
回复
感谢 SCUM!非常有用!不过好像没完啊?还有吗?请 email 过来!!
SCUM
2000-11-26
打赏
举报
回复
http://interchannel.8u8.com 上放了我收集的资料,你可以看看对你有没有帮助。
Highway2000
2000-09-25
打赏
举报
回复
工作过程也行!
Highway2000
2000-09-06
打赏
举报
回复
有人知道吗?
系统引导过程及硬盘分区
结构
论述
一般多系统引导程序(如Smart Boot Manager, BootStar, PQBoot等)都是将标准主引导记录替换成自己的引导程序,在运行系统启动程序之前让用户选择想要启动的分区.而某些系统自带的多系统引导程序(如 LILO,
NT
Loader
等)则可以将自己的引导程序放在系统所处分区的第一个扇区中,在Linux中即为两个扇区的SuperBlock. 注:以上步骤中使用的是标准的MBR,多系统引导程序的引导过程与此不同.
ExecuteAssembly:LoadInject .NET程序集由; 重用主机(spaw
nt
o)进程加载的CLR AppDomainManager,重载
Loader
.NET程序集PE DOS标头,取消链接.NET相关模块,绕过ETW + AMSI,避免通过
NT
静态系统调用(x64)进行EDR钩子并通过动态解析API(哈希)来隐藏导入)
描述: ExecuteAssembly是使用C / C ++构建的CS执行程序集的一种替代方法,它可用于通过以下方式加载/注入.NET程序集; 重用主机(spaw
nt
o)进程加载的CLR模块/ AppDomainManager,重载
Loader
/ .NET程序集PE DOS标头,取消链接.NET相关模块,绕过ETW + AMSI,避免通过
NT
静态系统调用(x64)进行EDR钩子并通过动态解析来隐藏导入通过superfasthash哈希算法的API。 TLDR(功能): 与CLR相关的模块与PEB数据
结构
断开链接。 (使用MS“ ListDLLs”实用程序而不是PH进行确认) 踩踏.NET Aseembly和Reflective DLL标头(MZ字节,e_lfanew,DOS标头,富文本格式,PE标头)。 使用静态硬编码的系统调用绕过EDR挂钩。 (仅x64支持,从WinXP到Wi
windows系统编程 源代码
[上一页 [下一页] 前言 Windows Driver Model(WDM)的根源可追溯到几年前一种叫做Windows for Workgroups 3.10的操作系统。那时候我们努力地支持无数不同的SCSI控制器,我长期地注意Windows
NT
开发组创建的小端口驱动程序类型。不久就认识到重新构造必要的映象加载器(image
loader
)和小端口驱动程序需要的执行环境比把这些小端口驱动程序重写成某些VXD形式的驱动程序并调试完毕所花费的努力要少得多。 不幸的是,Windows from Workgroups 3.10已经停止发行带有SCSI小端口支持的版本,主要是由于象ASPI(高级SCSI编程接口)这样的外围问题。然而,跨Windows和windows
NT
操作系统共享同样的驱动程序执行映象的基础是适当的并且可以在win95中见到,它(win95)可以与
NT
共享SCSI和NDIS小端口驱动程序二进制代码。 共享驱动程序模式的潜在意义是重大的。驱动程序开发人员感兴趣的是支持双平台,共享驱动模式能降低开发和调试的一半开消。对微软来说,共享模式意味着更容易地从win9x迁移到Windows2000或这个平台的未来版本。对最终用户来说,大量不同种类的稳定驱动程序可以在这个家族中的所有成员之间通用。 下一个(逻辑)步骤是 The next logical step, then, was to create a driver model with the ability to share general purpose drivers across both platforms. But what form should it take? Three requireme
nt
s were immediately obvious: it must be multiprocessor-capable, it must be processor-independe
nt
, and it must support Plug and Play (PnP). Fortunately, the Windows
NT
4.0 driver model met the first two requireme
nt
s, and it seemed clear that the next major release of Windows
NT
would support PnP as well. As a result, WDM can be considered a proper subset of what is now the Windows
NT
driver model. The pote
nt
ial benefits of a shared driver model can be realized today for many classes of devices, and choosing the WDM driver model will co
nt
inue to pay dividends in the future. For example, a correctly written WDM driver requires only a recompile before functioning in an
NT
64-bit environme
nt
prototype. WDM will co
nt
inue to evolve as new platforms and device classes are supported. Future versions of Windows 9x and Windows 2000 will co
nt
ain upwardly revised WDM execution environme
nt
s. Fortunately, WDM is designed to be "backward compatible," meaning that WDM drivers written according to the Windows 2000 DDK and designed to work for the i
nt
ended environme
nt
will co
nt
inue to work in a subseque
nt
WDM environme
nt
s. There is a lot to WDM, and in this book Walter does an excelle
nt
job in offering an in-depth tour of every aspect as well as the philosophy of the Windows Driver Model. Forrest Foltz 微软公司Windows开发体系
结构
设计者
softice 用户手册中文版
目录: 本手册的功能 读者对象 本手册的组织
结构
排版风格 如何使用本手册 其它相关文件 (外国人就是罗嗦,为了求全,只好随他了。) 第一章 欢迎使用SoftICE 产品概况 介绍SoftICE 介绍Symbol
Loader
如何得到客户服务 联系NuMega公司的技术支持中心 第二章 安装SoftICE 介绍 硬件和软件要求 SoftICE显示选择 安装之前 安装 安装之后 配置BOOT。INI以便在多处理器系统中支持单CPU 配置SoftICE在Windows 95下正确载入 通过串行口连接第二台计算机 解决显卡问题 第三章 SoftICE教程 介绍 载入SoftICE 构造GDIDEMO样本程序 装入GDIDEMO样本程序 控制SoftICE屏幕 通过源码跟踪和逐步调试 读本地数据 设定断点和目标断点 设定一个断点 设定STICKY断点 (此处不知STICKY作何解释。待我读到此处时大概会明白) 使用SoftICE命令行信息 使用符号和符号表 设定条件断点 设置BPX断点 编辑断点 设定读写内存断点 第四章 将代码装入SoftICE 调试的概念 准备调试程序 准备调试设备驱动程序和VxDs(虚拟设备驱动程序) 手工装入SoftICE 装入SoftICE for Windows 95 装入SoftICE for Windows
NT
构造带有调试信息的程序 使用Symbol
Loader
转换和载入文件 修改模块设定 修改通用设定 修改编译设定 修改调试设定 指定程序的源文件 删除符号表 在DOS命令行里使用Symbol
Loader
使用Symbol
Loader
的命令行工具 NMSYM命令行的语法 使用NMSYM来转换符号信息 使用NMSYM来装入模块和符号信息 使用NMSYM来装入或导出符号表 使用NMSYM卸载符号信息 使用NMSYM来保存历史记录 关于NMSYM的信息 第五章 SoftICE导航 介绍 呼出SoftICE窗口 启动时禁用SoftICE 使用SoftICE窗口 调整窗口大小 控制窗口 拷贝和粘贴数据 用鼠标输入命令 得到帮助 使用命令窗口 滚动窗口 键入命令 重呼命令 使用运行时宏 将命令窗口的历史缓存保存到文件 相关命令 控制代码窗口 读信息 在代码窗口键入命令 使用本地窗口 控制本地窗口 扩展和分解堆栈 相关命令 使用观察窗口 控制观察窗口 设定观察表达式 读信息 扩展和分解类型表达式 相关命令 使用寄存器窗口 控制寄存器窗口 读信息 编辑寄存器和标志位 相关命令 使用数据窗口 控制数据窗口 读信息 改变内存地址和格式 编辑内存 辅助表达式 相关命令 第六章 使用SoftICE 在跟踪错误时调试多个程序 跟踪错误 Ring-3 32位保护模式(Win32程序) Ring-0 驱动代码(内核模式设备驱动程序) Ring-3 16位保护模式(16位Win程序) 地址内容 使用I
NT
0x41 .DOT命令 理解从R-3到R-0的转变 第七章 使用断点 第八章 ----------------------------------------------------------- (...很累人那!今天就这些了吧.因为我也是读一些翻译一些,所以有些"向前引用 "的名词术语不
知道
要如何解释其意义.应该读完再翻译比较好...不过那个时候我 又开学了...呜...一点时间也没有了!) 第七章 使用断点 介绍 SoftICE所支持的断点类型 断点选项 执行断点 内存断点 中断断点 I/O断点 窗口消息断点 理解断点的含义 虚断点 设置断点活动 条件断点 条件断点计数功能 在条件表达式中使用本地变量 在条件断点里引用堆栈 参考 多重断点 所用时间 断点统计 在表达式中引用断点 维护断点 使用内嵌断点 第八章 使用表达式 表达式 操作符 操作符优先级 形成表达式 表达式类型 定制类型 取得符号的数值 间接使用符号 第九章 装入系统组件符号 装入由DLL和EXE文件导出的符号表 使用未命名的入口点
加密解密.技术内幕.chm
第1章 PE文件格式深入研究 1.1 PE文件格式格式纵览 1.1.1 区块(Section) 1.1.2 相对虚拟地址(Relative Virtual Addresses) 1.1.3 数据目录 1.1.4 输入函数(Importing Functions) 1.2 PE文件
结构
1.2.1 The MS-DOS头部 1.2.2 IMAGE_
NT
_HEADERS头部 1.2.3 区块表(The Section Table) 1.2.4 各种块(Sections)的描述 1.2.5 输出表 1.2.6 输出转向(Export Forwarding) 1.2.7 输入表 1.2.8 绑定输入(Bound import) 1.2.9 延迟装入数据(Delayload Data) 1.2.10 资源 1.2.11 基址重定位(Base Relocations) 1.2.12 调试目录(DebugDirectory) 1.2.13 NET头部 1.2.14 TLS初始化 1.2.15 程序异常数据 第2章 PE分析工具编写 2.1 文件格式检查 2.2 FileHeader和OptionalHeader内容的读取 2.3 得到数据目录(Data Dircetory)信息 2.4 得到块表(Sectio
nT
able)信息 2.5 得到输出表(ExportTable)信息 2.6 得到输入表(ImportTable)信息 第3章 Win32 调试API 3.1 Win32调试API原理 3.1.1 调试相关函数简要说明 3.1.2 调试事件 3.1.3 如何在调试时创建并跟踪一个进程 3.1.4 最主要的循环体 3.1.5 如何处理调试事件 3.1.6 线程环境详解 3.1.7 如何在另一个进程中注入代码 3.2 利用调试API编写脱壳机 3.2.1 tElock 0.98脱壳简介 3.2.2 脱壳机的编写 3.3 利用调试API制作内存补丁 3.3.1 跨进程内存存取机制 3.3.2 Debug API机制 第4章 Windows下的异常处理 4.1 基本概念 4.1.1 Windows下的软件异常 4.1.2 未公开的可靠吗 4.2
结构
化异常处理(SEH) 4.2.1 异常处理的基本过程 4.2.2 SEH的分类 4.2.3 相关API 4.2.4 SEH相关数据
结构
4.3 异常处理程序设计 4.3.1 顶层(top-level)异常处理 4.3.2 线程异常处理 4.3.3 异常处理的堆栈展开(Stack unwind) 4.3.4 异常处理程序设计中的几个注意事项: 4.4 SEH的简单应用 4.4.1 Win9x下利用SEH进ring0 4.4.2 利用SEH实现对自身的单步自跟踪 4.4.3 其它应用 4.5 系统背后的秘密 4.6 VC是如何封装系统提供的SEH机制的 4.6.1 扩展的EXCEPTION_REGISTRATION级相关
结构
4.6.2 数据
结构
组织 4.7 Windows XP下的向量化异常处理(VEH) 第5章 软件加密技术 5.1 反调试技术(A
nt
i-Debug) 5.1.1 句柄检测 5.1.2 SoftICE后门指令 5.1.3 i
nt
68子类型 5.1.4 ICECream子类型 5.1.5 判断
NT
ICE服务是否运行 5.1.6 I
NT
1 检测 5.1.7 利用UnhandledExceptionFilter检测 5.1.8 I
NT
41子类型 5.2 反跟踪技术(A
nt
i-Trace) 5.2.1 断点检测 5.2.2 利用SEH反跟踪 5.2.3 SMC技术实现 5.3 反加载技术(A
nt
i-
Loader
) 5.3.1 利用TEB检测 5.3.2 利用IsDebuggerPrese
nt
函数检测 5.3.3 检查父进程 5.4 反DUMP技术(A
nt
i-Dump) 5.5 文件完整性检验 5.5.1 CRC校验实现 5.5.2 校验和(Checksum) 5.5.3 内存映像校验 5.6 反监视技术(A
nt
i-Monitor) 5.6.1 窗口方法检测 5.6.2 句柄检测 5.7 反静态分析技术 5.7.1 扰乱汇编代码 5.7.2 花指令 5.7.3 信息隐藏 5.8 代码与数据结合技术 5.9 软件保护的若干忠告 第6章 加壳软件编写 6.1 外壳编写基础 6.1.1 判断文件是否是PE格式的EXE文件 6.1.2 文件基本数据的读入 6.1.3 额外数据保留 6.1.4 重定位数据的去除 6.1.5 文件的压缩 6.1.6 资源区块的处理 6.1.7 区块的融合 6.1.8 输入表的处理 6.1.9 外壳部分的编写 6.1.10 将外壳部分添加至原程序 6.1.10 小结 6.2 加壳程序综合运用的实例 6.2.1 程序简介 6.2.2 加壳子程序(WJQ_ShellBegin()) 6.2.3 PE外壳程序 6.2.4 加进A
nt
i技术 6.2.5 通过外壳修改被加壳PE 6.2.6 VC++调用汇编子程序 第7章 如何让壳与程序融为一体 7.1 序 7.1.1 为何需要壳和程序一体化 7.1.2 为阅读此章节需要的知识 7.1.3 基于此章节用的的例子程序说明 7.2 欺骗检查壳的工具 7.2.1 fi是如何检查壳的 7.2.2 欺骗fi 7.3 判断自己是否给脱壳了 7.3.1 判断文件尺寸 7.3.2 检查标记 7.3.3 外部检测(使用dll) 7.3.4 hook 相关的api(防止
loader
和调试api) 7.4 使用sdk把程序和壳溶为一体 7.4.1 sdk的意义 7.4.2 做一个带sdk的壳 7.5 后记:关于壳和程序的思考 第8章 Visual Basic 6 逆向工程 8.1 简介 8.2 P-code传奇 8.3 VB编译奥秘 8.4 VB与COM 8.5 VB可执行程序
结构
研究 8.6 VB程序事件解读 8.7 VB程序图形界面(GUI)解读 8.8 VB程序执行代码研究 8.9 我们的工具 8.10 VB程序保护篇 附录A 在Visual C++中使用内联汇编 附录B 在Visual Basic中使用汇编
Windows Server
6,850
社区成员
178,035
社区内容
发帖
与我相关
我的任务
Windows Server
Windows 2016/2012/2008/2003/2000/NT
复制链接
扫一扫
分享
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章