首页
社区
课程
招聘
[原创]去FLEXLM/NET ECC标志,强行12位SIGN验证
发表于: 2009-2-17 13:50 25894

[原创]去FLEXLM/NET ECC标志,强行12位SIGN验证

2009-2-17 13:50
25894

#define LM_PUBKEYS                3
#define LM_MAXPUBKEYSIZ                40
#define LM_MAXSIGNS                4   /* SIGN=, SIGN2=, SIGN3=, SIGN4= */
#define LM_MAX_BEH_VER                4

typedef struct _pubkeyinfo
        {
                int pubkeysize[LM_PUBKEYS];
                unsigned char pubkey[LM_PUBKEYS][LM_MAXPUBKEYSIZ];
                int (*pubkey_fptr)();
                int strength;
                int sign_level;
        } LM_VENDORCODE_PUBKEYINFO;

typedef struct _vendorcode
        {
                short type;          
                unsigned long data[2];
                unsigned long keys[4];
                short flexlm_version;
                short flexlm_revision;
                char flexlm_patch[2];
                char behavior_ver[LM_MAX_BEH_VER + 1];
                unsigned long trlkeys[2];
                int signs;
                int strength;
                int sign_level;
                LM_VENDORCODE_PUBKEYINFO pubkeyinfo[LM_MAXSIGNS];
        } VENDORCODE;

....................

static unsigned int l_2078index = 16; //0x10, 静态存储

....................

Static int l_n36_buf
        (
                char *buf;
                VENDORCODE *v;
                unsigned int l_buf_13;
                unsigned char *l_ctr_17;
                unsigned int l_8indexes;
                unsigned int *l_18index;
                char *buf2
        );
{
   ......................

        //第一处Flag的位置
        if (l_18index) *l_18index = 1;

   .............................

        //第二处Flag的位置
        if (l_4counters == 0) v->pubkeyinfo[0].pubkeysize[0] += (l_2078index << 0);

   ................................

}

对应如下近似代码(每个程序有差别):

第一处Flag的位置
cmp     [ebp+arg_14], 0
jz      short loc_xxxx
mov     eax, [ebp+arg_14]
mov     dword ptr [eax], 1 //有的程序为2

第二处Flag的位置
cmp     ds:?l_4counters@?1??l_counters_1@@9@9, 0 ; `l_counters_1'::`2'::l_4counters
jnz     short loc_xxxx
mov     eax, [ebp+Dst]
mov     ecx, [eax+3Ch]
add     ecx, _l_2078index //找到静态存储位置:0x10-->0x00
mov     edx, [ebp+Dst]
mov     [edx+3Ch], ecx


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 7
支持
分享
最新回复 (31)
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
贴出补丁文件,也是通用版本。
注意必须是NTFS分区才可以!

去掉文件只读属性。
上传的附件:
2009-2-17 14:30
0
雪    币: 102
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
今天你放出了两个不错的patcher,对ecc可是大大的贡献啊。

以前大部分人都是手工去patch
2009-2-17 14:43
0
雪    币: 324
活跃值: (172)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
是啊,是啊。这样就省了以后每个程序自己去找了。。。

不过验证了一下,似乎有些程序破的不完全啊。进一步研究中。。。
2009-2-18 11:16
0
雪    币: 671
活跃值: (2940)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
手动找这些地方是最安全的
2009-2-19 11:12
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
什么程序?发给我看看?

有问题在所难免,需要调试!~~~
2009-2-19 19:03
0
雪    币: 194
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
能不能把代码共享一下,这样大家可以共同完善程序啊。
2009-2-19 21:23
0
雪    币: 324
活跃值: (172)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不知道是不是每个dll文件都有问题。

2009-2-20 17:33
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
好像是不完全。我也试过。
2009-2-26 11:11
0
雪    币: 194
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
下下来试试。。
2009-3-1 08:56
0
雪    币: 522
活跃值: (4821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
请问,跟踪代码,如何快速定位这2处ECC标志的代码呢?

有无通用的标志呢?
2009-3-25 22:57
0
雪    币: 522
活跃值: (4821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
今天显示过期了,楼主怎么还加时间限制呢?
上传的附件:
2009-4-1 20:41
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
更新了~~~~~~
2009-4-7 00:32
0
雪    币: 324
活跃值: (172)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
楼主是不是也把那个通用补丁更新一下?
2009-4-7 09:34
0
雪    币: 191
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
楼主搞什么名堂?上一版本好使但是到期了,这一版本根本不好使!
2009-4-7 17:01
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
晕死。怎么不好使?
2009-4-7 19:29
0
雪    币: 191
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
新版patch后license又通不过了,我把主程序发到你邮箱了,你给看看。
2009-4-8 12:38
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
你理解错了吧?这个flag patch,不是l_pubkey_verify patch

我看了你的lic,sign是120位的

这个需要12位的sign

另外请把你的守护神mveld.exe发给我
2009-4-8 20:01
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
根本没有用处,我查了一下,明明有ECC,但是补丁就打不上。
2009-4-10 09:31
0
雪    币: 134
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
鄙视一下,楼主连什么叫共享软件都没搞清楚。
2009-4-10 15:14
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
晕死,搞清楚又能怎样?

有问题请说问题。不好你可以不用。
2009-4-10 16:55
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
把你的问题说一下?
说实话,水平有限,你可以把程序法给我看看,不要全部的,一个有ecc的exe或dll即可。

用这个补丁必须满足三个条件:
1、保证是ntfs文件系统,这个作为补丁标示要用到的;
2、文件要去掉只读属性;
3、必须为x32的exe或dll程序。
2009-4-10 17:01
0
雪    币: 135
活跃值: (191)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
这个补丁效率有些低啊!不如上一个版本的冬冬。望搂主参考!

不管效果如何,谢谢楼主!

最传统的办法往往最有效。找_l_pubkey_verify(),补丁!
2009-4-10 17:43
0
雪    币: 107
活跃值: (200)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
增加了输出,效率当然降低了。
2009-4-10 19:13
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
25
他们好像是说你不应该锁日期
2009-4-10 19:26
0
游客
登录 | 注册 方可回帖
返回
//