Copyright @ 200803,陈武,[email protected],http://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:
[email protected]
二、破解[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,其他步骤大同小异,希望对大家有所帮助。