本套课在线学习视频(网盘地址,保存后即可免费观看):
https://pan.quark.cn/s/9c4597cb5d07
声明:所有发布内容来自网络,仅供用户学习交流测试网速使用,部分影片如有内嵌广告,请勿上当受骗。获取的所有内容请在24小时内删除,禁止非法恶意传播或商业用途。如有侵权,请联系删除,个人微信:ivu123ivu,防失联。
00:00 - 深入探讨VH中的异常处理与断点技术
本次课程中,主讲人首先回顾了VH的基础知识,包括VH的添加及处理流程。随后,重点介绍了VH中几种异常处理方式,涵盖了硬件断点、内存断点以及通过修改页表属性来产生异常的技巧。此外,还提及了使用特定指令(如ins 3)来设置断点,以及如何通过改变标志位来实现类似硬件断点的效果。这些技术旨在如何在执行过程中产生异常,并通过VH来接管这些异常,进而实现对程序流程的控制或分析。
04:14 - 深入探讨内存修改与调试技术
讨论重点在于如何通过修改内存中的字节来规避硬件调试器的检测,以及如何利用内存页属性的更改来实现特定的调试目的。首先,指出了修改内存字节可能被检测出来的风险,例如通过CRC校验或文件对比。随后,详细解释了通过更改内存页属性来避免执行某些代码区域,从而产生异常以便捕获和处理的方法。同时,讨论了在实际操作中遇到的问题,如内存页的大小限制和跨页问题,并提出了相应的解决方案。
12:14 - 解析32位和64位系统下进程处理方式
讨论了在64位系统下运行32位进程时的处理方法,包括复制页面和备份整个函数的策略。首先,讨论了简化处理方式,指出大多数情况下复制两到三个月的页面就足够了,因为很少遇到函数大小达到8K或16K的情况。接着,提出了如果需要更细致的控制,可以备份整个函数,从而确保不执行原函数,只执行备份的函数。此外,还讨论了处理跳转指令时需要注意的问题,比如向上跳转的情况,以及如何在复制页面时考虑到这些跳转。最后,提到了复制页面时要考虑到的细节问题,比如跨页问题和跳转方向。
18:21 - 深入探讨编程中的调试技巧与内存管理
讨论集中于如何在编程中使用调试技巧和内存管理方法。首先介绍了通过创建项目和应用控制台来弹出message box的基本操作,并通过循环不停弹出message box来模拟实际情况。进一步探讨了多线程调试选择和如何在进程中嵌入代码以hold住message box,同时涉及了对进程附加和内存访问的深入讨论。特别强调了对内存页面的读取权限判断,以及如何安全地进行内存操作,如申请内存、内存拷贝等。通过尝试和错误,展示了调试过程中的常见问题和解决策略。
33:58 - 保存函数和户口数据的讨论
讨论集中在如何保存特定模块、函数的原始页面以及相关配置页。强调了保存数据的重要性,并探讨了使用C++类进行保存的可能性。此外,还提到了维护这些数据时的注意事项,包括处理多个户口的情况和数据结构的选择。最后,讨论了异常处理中对执行错误的判断和处理,特别是如何确保异常地址在户口范围内,并相应调整EIP。
47:20 - 解决页内偏移和内存申请问题的讨论
讨论集中在如何正确计算和应用页内偏移,以及在内存操作中遇到的问题。首先明确了需要求解的是页内偏移而非模块偏移,并尝试通过加减操作来定位到正确的内存地址。随后,讨论转向了内存申请过程中可能遇到的错误,比如内存申请未成功导致的程序崩溃问题。过程中涉及对代码的调试,包括断点设置和变量检查,以定位和修复问题。最后,讨论了对代码进行的修改,包括对内存复制和地址计算逻辑的调整,以确保程序能够正确执行。
01:21:28 - 深入解析和处理函数劫持与参数修改
对话详细讨论了如何在32位系统中通过函数劫持处理参数问题,重点解释了如何针对性地分析和修改函数参数,以及如何处理函数的流程以实现特定需求。此外,还探讨了如何通过改变返回值、挂载依赖户口等方式隐藏操作痕迹,实现对函数更深层次的控制。
欢 迎 关 注
更多精彩内容关注下方公众号:逆向有你
个人微信:ivu123ivu
每日自动更新各类学习教程及工具下载合集
https://pan.quark.cn/s/8c91ccb5a474
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...