SEH技术

SEH技术结构化异常处理 StructuredEx SEH 是 Windows 操作系统处理程序错误或异常的技术 SEH 是 Windows 操作系统的一种系统机制 与特定的程序设计语言无关 外壳程序里大量地使用了 SEH 如果不了解 SEH 将会使你跟踪十分困难 由于 Ollydbg 对 SEH 处理异常灵活 因此脱壳用 Ollydbg 会大大提高效率 附 CONTEXT 结构环境

结构化异常处理(StructuredExceptionHandling,SEH)是Windows操作系统处理程序错误或异常的技术

。SEH是Windows操作系统的一种系统机制,与特定的程序设计语言无关。

外壳程序里大量地使用了SEH,如果不了解SEH,将会使你跟踪十分困难。

由于Ollydbg 对SEH处理异常灵活,因此脱壳用Ollydbg会大大提高效率。

附CONTEXT结构环境:

 

 

[工具]flyod1.10

[目的]学习SEH的手法,另书中是用SoftICE调试的,看起来不习惯.根据原文内容重新整理一下,便于和我一样的菜鸟们一起学习.

今天下决心,好好学习,这是就算是个开始吧!感觉学明白的确很不容易!

[注释]?–为不能理解的地方,请大侠们指点一下.学习过程中,有理解错误的地方,肯请大侠们多多指教.

[练习对象]加密与加密二版第10章,光盘配套的练习软件:seh.exeseh2.exe

[writer] ytcswb 2005.2.1 感谢看学及论坛的大侠们为我们提供这么好的学习资料。

1.例子seh.exe学习:

在看看EXCEPTION_RECORD结构:

我们重点看看0012FCF0+B8=12FDA8

继续跟踪:

继续跟到这段代码里:

[总结]

//读取线性地址0,产生异常

//执行后,windows检查到异常,执行线程马上被中段,从用户模式转到内核模式

//控制权交到操作系统的异常调试程序(exceptiondispatcher),由它负责找到

//处理这个异常的方法,即所有应用程序的异常最终都是由windwos来处理的,

//那么同一个版本的windows就有固定的异常处理代码.跟踪seh保护的程序时,以此为切入点,可以轻而一举地找到关键!

2.例子seh2.exe学习:

发生异常,就来到这里:

 

 

看堆栈:

[附录]跟踪到异常处理回调函数的过程:

注:windowsxp-sp1平台.只要是同样平台,就可以按下面步骤,来到系统的异常处理回调函数.

熟悉一下这段代码,应该有好处,当发生异常时,可以快速找到那个callecx异常处理回调函数,从而找到程序自己的异常处理代码。

代码[1]

代码[2]

代码[3]

代码[4]

代码[6]

代码[8]

代码[9]

代码[10]—–这段代码,任何程序只要执行了exitprocess都会看到!留个印象吧!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217310.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午9:52
下一篇 2026年3月18日 上午9:52


相关推荐

  • 列存储、行存储之间的关系和比较

    列存储、行存储之间的关系和比较目录(?)[-]一定义定义优点场合发展史二sysbaseiq列存储介绍列存储数据压缩索引LowFast索引 Bit-Wise索引HighGroup索引Word索引Compare索引Join索引TimeAnalytic索引三行列存储比较基于行的储存基于列的存储四列存储数据查询中的连接策略选择方法引言相关工作定义连接策略

    2022年7月14日
    23
  • 【系统架构设计师】第一章:操作系统(1.2.2) 信号量与pv操作

    【系统架构设计师】第一章:操作系统(1.2.2) 信号量与pv操作本篇帖子继续上篇。有兴趣可以点击链接进行查看以前写过的文章。【系统架构设计师】第一章:操作系统(1.2.2)参考教材:《系统架构设计师考试全程指导(第二版)》《系统架构设计师教程》1.2.2信号量与pv操作pv操作指的是两个:p操作和v操作。有时候我们的进程在工作的时候,需要同时配合来干多件事情。比如,我们规定一个进程用来写入数据,另一个进程用来读取数据。很显然,这连个进程是不能互相干扰的…

    2022年7月15日
    24
  • pac模式与全局模式哪个好_直连模式pac模式全局模式

    pac模式与全局模式哪个好_直连模式pac模式全局模式区别一:使用流量多少不一样。PAC模式:节省流量。全局模式:流量消耗较多。区别二:运行速度快慢不一样。PAC模式:国内网站依旧走本地网络,速度快,绝大部分国外网站都走代理,速度也快。。全局模式:所有网站都走代理,访问国内网站速度变慢。区别三:访问网站覆盖面不一样。PAC模式:少部分国外网站不走代理,无法起到加速效果,甚至无法访问。全局模式:可访问全球所有网站。区别四:运行原理不一样。PAC模式:所有http/socks数据经过…

    2022年10月19日
    5
  • pycharm怎样改成中文教程

    pycharm怎样改成中文教程相信 pycharm 不会改成中文是一件很头疼的事情 特别是对一些新手来说下面放教程 点击 File 点击 Settings 在 settings 中找到 Chinese simplified 点击 install 然后就变成中文了

    2026年3月27日
    2
  • JMeter学习笔记–JMeter执行顺序规则

    JMeter学习笔记–JMeter执行顺序规则

    2021年9月2日
    76
  • 在最长的距离二叉树结点

    在最长的距离二叉树结点

    2022年1月10日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号