SAP IDES ACCESS KEY破解细节 (2008-03-15 22:21:57)
标签:娱乐 分类:SAP
SAP IDES ACCESS KEY破解细节(转帖)
原来网上只有粗略的介绍,但是对初学者而言都有些困难,很多只是一个大体的逻辑,并没有详细的步骤,费了半天劲终于搞定了,特写下来留念,有可能有些概念不对,以后随着了解的深入会陆续修正。
一:去掉权限判断文件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
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,其他步骤大同小异,希望对大家有所帮助。
如有问题,可以给我留言,我会的话会尽力帮忙的。大家共同进步吧。
补充:
本人的环境是4.71
1.在设置断点的时候 设在文章所说dummy_key.的后面无法进入修改(change)界面 只能设在
CALL 'GET_DEVELOPER_KEY' ID 'NAME' FIELD 'ABCDEFGHIJKL'
ID 'CUSTID' FIELD '1234567890'
ID 'KEY' FIELD DUMMY_KEY.
这一段的前面 即把光标移到CALL前面 然后设置一下断点即可进入修改(change)界面
2.进入后 因为断点的位置不对 所以要先取消原来的断点右键下选择取消所有的断点 然后再重新设置到dummy_key处然后再进行F6跳转和sy-subrc的清零处理 这样就OK了
3.原文中是这样的
*{ INSERT rightboy 1
*
*} INSERT
rightboy是request ID 这与网上大多数文章符合不过本人的系统上可不是这个样
*{ INSERT &&&&&&&& 1
*
*} INSERT
也就是说没有request ID 在网上看到这么一句 IF request ID='/ABAPER/' '/ABAPER/'
所以在我尝试着加了一句 IF memory33442='/ABAPER/'
后面仍然是sy-subrc = 0. 不过这修改导致了语法的错误去掉后正常
4.关于session 原文18步中说 摸索两下就能搞定,此处不再赘述
这里偶还是罗嗦一下 新建后只要随便写一个说明 就是第二排的那个空格第一个是黑格 不可写的
在第二排的空格上随便写上几个字符 然后确定一下即可
5.原文第19步中提到的请继续按照上述步骤更改值,最后会提示激活成功。
这里大家要注意了 提示激活成功 是在sy-subrc那个窗口提示成功的而且提示成功的形式不是直接跳出一个窗口来告诉你激活成功的而是在右下角的地方 如果成功了会出现一个绿色的勾+激活成功的黑色字样
上面的问题是我在破解过程中遇到的 希望对大家有帮助偶为了这个已经装了3遍SAP了 在这里同时提及一下恢复的办法 在se38下实用程序→版本→版本管理 那可以搞定 可以回复回来如果把程序改成语法错误那就回不来在此之前建议用影子系统覆盖全盘来测试 这样就不用重装了
最后 祝大家破解成功!
中国2025社会热点大事记
6 天前
没有评论:
发表评论