首页
社区
课程
招聘
[旧帖] 为什么这个断点断不下来? 0.00雪花
发表于: 2012-3-2 09:42 6613

[旧帖] 为什么这个断点断不下来? 0.00雪花

2012-3-2 09:42
6613
用ollydbg调试时,想在0040A0D3处下断,却断不下来,自动退出了,请大家帮忙看看。

http://115.com/file/besax2kq

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 817
活跃值: (2068)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
    你根据什么认为这个程序一定会运行到 0040A0D3 ?

    在 00500805 下个断点试试,看看能否断下?
2012-3-2 11:34
0
雪    币: 484
活跃值: (269)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
呵呵,是想查找VENDOR_STRING相关的自定义函数(vendor defined checkout filters)的入口地址,0040A0D3处是个可能的位置.

我在00500805处断下了,但已经报license检查的结果了,不太清楚您在这里下断的目的?
2012-3-5 12:07
0
雪    币: 817
活跃值: (2068)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
显然,我是想告诉你,没有断下是因为程序根本就没有执行到你说的位置,而让你设另外的断点是告诉你,这个程序没有不让设断点的毛病。
2012-3-5 15:53
0
雪    币: 484
活跃值: (269)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
5
那能帮忙看看vendor defined checkout filters的入口地址在哪吗?谢谢啦!
2012-3-5 16:58
0
雪    币: 817
活跃值: (2068)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
    什么是“vendor defined checkout filters”不懂,你好像在说天书。
    一般像你这样问,是已经定位了某种著名的保护技术,那么,它是什么呢?
    如果你想求助,那就真诚点,把这个保护系统所涉及到的资源全部和盘托出,不要这么藏着掖着的。要知道,没人有义务帮你做这做那的,也没有人对这个问题好奇到非要求着你把它弄清楚的地步。
    一切都要靠你主动。
2012-3-5 18:57
0
雪    币: 484
活跃值: (269)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
7
呵呵,没有藏着掖着的意思,带“VENDOR_STRING"的license通常是带”vendor defined checkout filters“保护的(这个就是),”Amante4: More Advanced FlexLM tactics“的文章里有提到这项保护技术,那个估计的断点也是参考这篇文章猜测的。这个license保护形式上(比如VNEDOR_STRING的长度)一直有些变化,所以,还是想搞清楚这个自定义的filters函数是怎么工作的。(老的license keygen:   http://bbs.pediy.com/showthread.php?t=144851,有人帮忙修改当然好,不过论坛好像不鼓励直接破解,而是以学习交流方法为主,呵呵)

因为是商业软件,所以没有说的特别具体,有不到之处,请谅解,还请多多帮忙,谢谢!
2012-3-6 09:17
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
您好管理员,
我为什么不可以,请告诉我
谢谢
2012-3-6 14:50
0
雪    币: 817
活跃值: (2068)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼主的问题来自这里?

    http://www.woodmann.com/forum/showthread.php?14387-How-to-reverse-license-with-VENDOR_STRING

    难道纯属巧合?
  
    通过“蹲守”函数"lc_set_attr"入口(0x00523920)没有发现任何使用常数“LM_A_CHECKOUTFILTER”(0x2D) 设置“vendor defined checkout filter”函数入口的调用,基本可以排除楼主的疑问。

    另外,发现此程序的签名验证比较特别。以往碰到的程序毫无例外都是用许可文件中的签名直接验证,而此程序是将许可文件中的签名在经过一个非常复杂的变换后才进行验证(变换函数入口:0x0040A2E8)。这样,问题就来了,我们虽然可以直接得到用于验证的正确签名,却无法逆向推导出许可文件中对应的签名应该是什么样子。例如,在本例中,FEATURE SSS 的签名存在以下3种形式:

    签名1.  79C1974C84B9
    签名2.  1FE766621043
    签名3.  3235B72B582B

    签名1.通过注册机得到,也是此程序最终用作签名验证的正确样本;如果许可文件记载的是签名1,经过签名变换会得到签名2,最终的验证实际上要在签名1和签名2之间进行,显然是完全不可能匹配的;以签名1为变换目标,利用签名函数,通过暴力攻击,可以猜出(或者说凑出)签名3,许可文件记载的如果是签名3,经过签名变换后,可以得到签名1,验证就可以通过了。

    至于签名变换函数的算法,由于实在太长,而本人又实在太懒,不得不甘拜下风,还是留给高手们展示魅力和风采吧。
2012-3-7 19:07
0
雪    币: 484
活跃值: (269)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
10
这个链接我也查到过的。另外,“签名变换函数的算法”多年前已经有人解决了(http://bbs.pediy.com/showthread.php?t=144851处的附件就是),只是我的知识和能力还不够,没看懂是怎么弄的,不知道您能不能帮忙看下,如果VENDOR_STRING长度要改变的话,该怎么做呢?多谢啦:)
2012-3-8 09:25
0
雪    币: 817
活跃值: (2068)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
签名变换函数的算法”多年前已经有人解决了


    楼主说话真是轻巧,看来兴趣并非集中在技术上,那就请你自己慢慢玩吧,祝你好运!
2012-3-8 23:55
0
雪    币: 484
活跃值: (269)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
12
呵呵,您说的是,我也有发短信给你,不是没有花时间研究过,我也想从技术上完全弄明白,难度太大了,才来求助的。还是谢谢啦!
2012-3-9 09:02
0
游客
登录 | 注册 方可回帖
返回
//