导航

[zt]license key Developer Access Key 解决方案*2

Posted on 2008-08-05 19:45  Hahappyppy  阅读(1697)  评论(0编辑  收藏  举报

Copyright @ 200803陈武,chentaoyu@sohu.comhttp://www.cnblogs.com/evan

本文遵从 GNU GPL 版权协议,任何组织或个人在引用、转载或修改此文档时,敬请保留版权信息及注明出处。

警告:仅限IDES学习、研究使用。严禁商业使用。后果自负。

 

关健字:SAP license key

       SAP Developer Access Key

                  license key破解

                  Access Key破解

                SAP算号器

       ZAPGUI算号器

                  ZAPGUI.EXE使用帮助说明

一、Key生成器。



步骤说明:
必须生成新的 LICENSE KEY之后才能生成ACCESS KEY

SAP SYSTEM ID = SID, 3 chars
CUSTOMER KEY = hardware key, 11 chars
INSTALLATION NO = installation, 10 digits
EXPIRATION DATE = yyyymmdd, usually "99991231"
LICENSE KEY = license key, 24 chars

1. 新建用户。必须使用具有SAP_ALL权限的用户,如以我的用户为DEV为例;
2,用SAP_ALL权限的用户(如DEV)登录,运行事务 SLICENSE 或通过菜单打开,路径:“工具→系统管理→系统管理→SLICENSE - SAP许可”(打开窗口3);
3,按F6或者按Install New License弹开安装新LCENSE的窗口(窗口2);
4,运行zapgui.exe(窗口1),输入参数,点instal按钮,生成License key,result项即为生成的key;
参考下图,按箭头方向输入值,先红先后蓝色,看不懂文字也看不懂图的就不要再问我了!

License number:   空,不填
User/Object: DEV
SAP Version: 4.7(填写对应的版本号,如4.6D等)
Customer Key: 窗口2的 hardware key的值
Installation number: 0000000001,或任意,长度10位
SID: 窗口2的SAP Ssytem值
YYYYMMDD: 窗口2的Expires On值,"99991231"

5,窗口2中Inst. Number: 填入0000000001 ;key:填入窗口1中result项的值;
6,重新起SAP Service .可能不必重起吧,忘了测试这一步,如果你看不到第七步的Install Number时重启就是必须的;
7,在System -> Status 中可以看到你的Install Number。初始显INITIAL,现在变成了:0000000001  ;
8,运行SE38 ,新建一个Z Program 点击Create,这是会弹窗口要求输入ACCESS KEY;
9,运行 ZAPGUI 输入 User Name , Install Number , 点击Developer按钮,得到result中的AccessKey。

License number: 0000000001(取得license key时只有这一项未填,现在填上,必须与Installation numbe项一至)
User/Object: DEV
SAP Version: 4.7
Customer Key: 窗口2的 hardware key的值
Installation number:0000000001
SID: 窗口2的SAP Ssytem值
YYYYMMDD: 窗口2的Expires On值

总结: 第一次用算号器时不得其法,搞不清各项应该输入什么值,也曾咨询过网友,必须要有customer key才行,我怎么知道这个KEY是什么东西?是网上申请的?还是系统里已经有自己不知道查看方法?在未来得及保存原始图片的情况,TRY,破解了。文中 的这一张图足够给大家参考了。

  感谢编写zapgui.exe的大牛,关于这个工具相关的传说,这里就不说了,大家一起感谢他吧。zapgui.exe应该也能用于其他版本的SAP的LICENSE Key 和 Access Key。或许参数还有其他的填写方法,请大家多尝试整理!

 

EMAIL:chentaoyu@sohu.com

二、破解[zt]


原贴地址:http://blog.163.com/right___boy@126/blog/static/231981842007121317905

原来网上只有粗略的介绍,但是对初学者而言都有些困难,很多只是一个大体的逻辑,并没有详细的步骤,费了半天劲终于搞定了,特写下来留念,有可能有些概念不对,以后随着了解的深入会陆续修正。

一:去掉权限判断文件LSKEYF00的只读属性:

1,Tcode处输入SE30回车(Tcode处就是指登陆sap后界面上放的可输入框)。

2,按F6(Tips&Tricks)(这里2,3步是以IDES4.7c为标准的,如果你用的4.6,按f6后会出现一个列表,随便选一个进入,会出现一个分为左右的程序显示框,先把左右的程序全部删除掉,然后参照第三步继续。ecc6.0与本4.7基本相同)

3,在右边写下面一段程序,

Update PROGDIR set edtx = ''

Where

name = 'LSKEYF00'

And

state = 'A'.

4,F8执行,这时文件LSKEYF00的Editor lock就会打开,也就是说将这个文件更改为可以编辑。等于windows下面取消只读权限。

二:在权限判断文件里面加上断点,阻断权限判断。

5,返回到起始页面,Tcode输入SE38回车。

6,程序输入LSKEYF00。

7,点display(显示)。

8,找到 JUMP_THE_WALL 块,
然后在这块中找到下面这段

CALL 'GET_DEVELOPER_KEY' ID 'NAME' FIELD 'ABCDEFGHIJKL'
ID 'CUSTID' FIELD '1234567890'
ID 'KEY' FIELD DUMMY_KEY.

9,把光标放在dummy_key后面.点击页面上的红色stop(ecc6.0里面没有红色stop,但是有两个“添加断点”,选第二个吧,第一个没有试),在这里添加一个断点,此时上面的最后一行会变为黄色。

10,点击后面一串图标中倒数第四个(创建新的会话),会出现一个新的操作界面窗口,在新窗口的Tcode输入se38回车。(这里如果不这样打开新窗口的话,有可能会造成不能进入断点的状况,我破解6.0时出现过。)

三:逐步修改权限判断文件中的判断参数的值,达到绕过权限判断的目的。

11,程序输入LSKEYF00。点change(修改),程序会进入断点。

12,此时界面下面有连续四行白色的输入框,后面是四行灰色的框。在第一个白色框里面输入sy-subrc回车。(在ecc6.0里面,这里的白色输入框 在右边,输入sy-subrc回车后,后面的灰框并不会变成白色,需要双击后面的铅笔才可以。更改后按回车确认。继续14步)

13,此时该行后面的原本灰色的框会变白色,并且出现一个值,将这个值改为0并点击后面的铅笔进行保存。(6.0参照第12步)

14,按f6(单步执行程序),如果输入框中的0变成其它值,将它再改成0丙点击后面的铅笔进行保存。(6.0参照第12步)

15,再次按一下f6,这个值将不再变化(我总共改了两次0),如果程序跳转到endform这个值也没有改变,说明更改成功了。按f8(从断点开始运行完程序)。

16,上步按f8后,程序会跳出一个或者几个信息框,不必理会,确认,就会出现一个白底灰字的界面,里面是程序源代码,但因为不能修改,所以是灰色的。

四:通过插入可执行代码的方法修改权限判断文件,一劳永逸。

17,这时还是找到上次添加断点那里,

CALL 'GET_DEVELOPER_KEY' ID 'NAME' FIELD 'ABCDEFGHIJKL'
ID 'CUSTID' FIELD '1234567890'
ID 'KEY' FIELD DUMMY_KEY.
把光标放在dummy_key.后面,点击界面上的“插入”按钮(快捷键ctrl+shift+f8),屏幕中就会出现

*{ INSERT rightboy 1

*

*} INSERT

其中第一行的后面那串字符串可能会不一样。这时只有中间的*那一行是可以输入的,将*删掉,加入

sy-subrc = 0.

也就是将刚才的内容更改为如下:

*{ INSERT rightboy 1
sy-subrc = 0.
*} INSERT

18,点击保存,程序会再次跳到断点,按照12-16的步骤继续更改那个值为0并继续,最后会提示保存成功。(如果提示选择session,可以自己点击"新建"随便建立一个,摸索两下就能搞定,此处不再赘述)

19,然后点击程序-激活(快捷键ctrl+f3)(这里,我在破解另外一个4.6c的时候“激活”按钮并不可能,其实此处激活是自动的,不必理会,你会 看到显示的程序名的后面有一个“活动的”或者“active”的标记,如果没有,“激活”按钮一定可用),如果还跳到断点,请继续按照上述步骤更改值,最 后会提示激活成功。

20,关闭所有的ides登陆界面,重新登陆ides,Tcode输入se38回车,程序输入LSKEYF00。点display(显示)。找到刚才修改的地方,应该发现刚才的添加成功了。

21,我通过破解大致了解了这个程序文件的内容,这程序就是ides判断是否有key的判断程序,当sy-subrc = 0的时候,就有权限访问,如果不满足一些条件,sy-subrc 就会改变,所以在这里强制它变为0,就等于破解掉了。于是我就重复步骤将原码变成下列的样子:

CALL 'GET_DEVELOPER_KEY' ID 'NAME' FIELD 'ABCDEFGHIJKL'
ID 'CUSTID' FIELD '1234567890'
ID 'KEY' FIELD DUMMY_KEY.
*{ INSERT rightboy 1
sy-subrc = 0.
*} INSERT

CHECK SY-SUBRC EQ 2. "customer system!
*{ INSERT rightboy 2
sy-subrc = 0.
*} INSERT
MOVE SPACE TO DUMMY_KEY.
*{ INSERT rightboy 3
sy-subrc = 0.
*} INSERT

RC = 0.
ENDFORM. " JUMP_THE_WALL

以上一切步骤完毕,我后来又破解了几个不同版本的系统,并将上述步骤完善了一下,4.6,4.7,6.0都可以用此方法破解,其中比较关键的是第一步,去掉LSKEYF00文件的editor lock,其他步骤大同小异,希望对大家有所帮助。