Exetools

Exetools (https://forum.exetools.com/index.php)
-   General Discussion (https://forum.exetools.com/forumdisplay.php?f=2)
-   -   flexlm and VENDOR_KEY5 (https://forum.exetools.com/showthread.php?t=10124)

swork3 09-01-2006 01:27

flexlm and VENDOR_KEY5
 
hi, i searched around but i have not found an answer, i have an app useing
flexlm 9.x, i followed some tutorial and found VENDOR_KEY1-4 and vc.data[0]
and vc.data[1] (the time() and xor table thing) i got ENCRYPTION_SEED1 and 2,
i tested that 3 times - got the same seed1 and 2, so that is correct.
Now the thing i do not understand fully, is VENDOR_KEY5 generated out of
key1-4 and vendor? or how can i find that? thanks

CrackZ 09-01-2006 04:56

Hiya,

I have released today the source code to Nolan Blenders Lmkg which will allow anyone to generate FLEXlm vendor keys and CRO keys for any vendor name up to v9, (trivial modification of the constants should also enable generation of v10 keys as well but I'll leave that as an exercise ;-) ).

It is available at hxxp://www.woodmann.com/crackz/FLEXlm/Lmkg.zip

Regards

CrackZ.

xpman 09-01-2006 05:53

Great!!! I wait it for long long time.

I want to know "CRO_KEY1 & CRO_KEY2" is also available for long license key?

Thanks.

swlepus 09-01-2006 08:31

To CrackZ.

Is there any hint for the var1 and var2 constant in nbl_keygen() ?
Are them just a rand number?

BR,

hanzi 09-04-2006 08:22

thanks CrackZ.
That is a useful tool for Flex. I'll try it

Git 09-04-2006 19:33

Quote:

Originally Posted by swlepus
Is there any hint for the var1 and var2 constant in nbl_keygen() ?
Are them just a rand number?

Search for glseed here.

Git

swlepus 09-05-2006 09:31

Quote:

Originally Posted by Git
Search for glseed here.

Git

Thanks Git,

I found these val comes from l_key.c from SDK source.
But is there any way to get them from binary such as a deamon?
I mean how can I get the glseed via a lmgrd.exe or some other binary file.

Git 09-05-2006 18:59

Probably, but you don't need to. The two values are unique to a flexlm version and the same for everybody.

Git

swork3 12-08-2006 20:19

is it possible that some customer has old keys and migrated them to a new version so that the output of lmkg is wrong (only for this specific case)?
thanks

FoxB 12-09-2006 14:03

4swork3:
As example, Synopsys range of daemon's have additional encryption over lc_set_attr(lm_job, LM_A_USER_CRYPT_FILTER_GEN,(LM_A_VAL_TYPE)user_crypt_filter_gen)

user_crypt_filter_gen() is your additional target.

WBR

ps: u can contact me by PM.

atomix 03-06-2007 20:36

Quote:

Originally Posted by CrackZ
It is available at hxxp://www.woodmann.com/crackz/FLEXlm/Lmkg.zip

Regards
CrackZ.

Thanks, but it seems I am too late for it and no mirrors are available atm. :(
I was and still am really curious to have a look at the source code as lmkg is definitely a very useful tool.

farzadfarzad 03-06-2007 21:28

2 Attachment(s)
@atomix
here u are

JMI 03-07-2007 01:40

CrackZ' site will be back soon. We are having some ongoing problems with our server and ISP for Woodmann.com and may have to move to another ISP to get them resolved. We still have all the materials and they will be back up as soon as we can get these issues sorted out.

Regards,

atomix 03-13-2007 19:19

Thanks farzadfarzad, please check your PM for the source code requested.

JMI, that's great news - can't wait to see it back online. Keep up the excellent work! :)

JMI 03-14-2007 02:54

Woodmann is already back online. See my Announcement in the Announcement Forum for the way to reach it until the DNS servers spin up with the new ISP.

Regards,

yalcm 05-08-2007 18:28

Quote:

Now the thing i do not understand fully, is VENDOR_KEY5 generated out of
key1-4 and vendor? or how can i find that? thanks
yes, it is derived from key1-4. Its function is used to hide the encode seeds1-2 before version 7.0. But it is now (after version 7.0) useless. The new role is replaced by a dynamic derived number from vendor name, timer, salt,...etc. That dynamic number once before stored inside somewhere of the job structure. Now it moves into an extended area but still inside the job structure. To recover that encode seeds1-2, norland's tutor is still the best up to now. Go to Crackz site to search for it.

Keys1-4 and vendor name are used to derived an original plain key in which stores the keys expired date, supported functions enabled, supported hw-dongles types, and the keys1-4 integrity checksum.

crokeys1-2(trlkeys1-2) are only used for enabling TRL options and the integrity checksum of itself. It has nothing to do with the SIGNx generation.

arlequim 02-08-2009 21:34

to get ES1 ES2 VK5 is really easy, you dont need any tools, just locate the l_sg() function where the seeds are uncovered

Code:

00417043  |. 8D8D 80FDFFFF  LEA ECX,DWORD PTR SS:[EBP-280]
00417049  |. 51            PUSH ECX                                ; /Arg3
0041704A  |. 8B95 6CFDFFFF  MOV EDX,DWORD PTR SS:[EBP-294]          ; |
00417050  |. 81C2 0C030000  ADD EDX,30C                              ; |
00417056  |. 52            PUSH EDX                                ; |Arg2
00417057  |. 8B85 6CFDFFFF  MOV EAX,DWORD PTR SS:[EBP-294]          ; |
0041705D  |. 50            PUSH EAX                                ; |Arg1
0041705E  |. E8 27040100    CALL thinkflx.0042748A                  ;  <-- Call l_sg() \thinkflx.0042748A
00417063  |. 83C4 0C        ADD ESP,0C
00417066  |. 81BD 84FDFFFF >CMP DWORD PTR SS:[EBP-27C],87654321
00417070  |. 74 0C          JE SHORT thinkflx.0041707E
00417072  |. 81BD 88FDFFFF >CMP DWORD PTR SS:[EBP-278],12345678

after the call you can locate in [ebp-27c] and [ebp-278] ES1 and ES2, and inside the procedure the correct value of VK5

arlequim 02-09-2009 03:59

Quote:

Originally Posted by swork3 (Post 52662)
hi, i searched around but i have not found an answer, i have an app useing
flexlm 9.x, i followed some tutorial and found VENDOR_KEY1-4 and vc.data[0]
and vc.data[1] (the time() and xor table thing) i got ENCRYPTION_SEED1 and 2,
i tested that 3 times - got the same seed1 and 2, so that is correct.
Now the thing i do not understand fully, is VENDOR_KEY5 generated out of
key1-4 and vendor? or how can i find that? thanks

You dont need any tools to find out ES1 ES2 and VK5. Just locate the l_sg() procedure as you can see here:

Code:

00417043  |. 8D8D 80FDFFFF  LEA ECX,DWORD PTR SS:[EBP-280]
00417049  |. 51            PUSH ECX                               
0041704A  |. 8B95 6CFDFFFF  MOV EDX,DWORD PTR SS:[EBP-294]         
00417050  |. 81C2 0C030000  ADD EDX,30C                             
00417056  |. 52            PUSH EDX                               
00417057  |. 8B85 6CFDFFFF  MOV EAX,DWORD PTR SS:[EBP-294]         
0041705D  |. 50            PUSH EAX                               
0041705E  |. E8 27040100    CALL xxx.0042748A                 
00417063  |. 83C4 0C        ADD ESP,0C
00417066  |. 81BD 84FDFFFF >CMP DWORD PTR SS:[EBP-27C],87654321
00417070  |. 74 0C          JE SHORT xxx.0041707E
00417072  |. 81BD 88FDFFFF >CMP DWORD PTR SS:[EBP-278],12345678

inside 0042748A
...
00427563  |. 3355 F4        XOR EDX,DWORD PTR SS:[EBP-C]
00427566  |. 3355 E0        XOR EDX,DWORD PTR SS:[EBP-20]
00427569  |. 3355 E4        XOR EDX,DWORD PTR SS:[EBP-1C]
0042756C  |. 8B4D 10        MOV ECX,DWORD PTR SS:[EBP+10]
0042756F  |. 8B41 04        MOV EAX,DWORD PTR DS:[ECX+4]
00427572  |. 33C2          XOR EAX,EDX -> ES1 xored by VK5 = real ES1
...
00427596  |. 334D F4        XOR ECX,DWORD PTR SS:[EBP-C]
00427599  |. 334D E0        XOR ECX,DWORD PTR SS:[EBP-20]
0042759C  |. 334D E4        XOR ECX,DWORD PTR SS:[EBP-1C]
0042759F  |. 8B45 10        MOV EAX,DWORD PTR SS:[EBP+10]
004275A2  |. 8B50 08        MOV EDX,DWORD PTR DS:[EAX+8]
004275A5  |. 33D1          XOR EDX,ECX -> ES2 xored by VK5 = real ES2



All times are GMT +8. The time now is 00:43.

Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX