◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
在includeinc_userlogin.php文件中,checkUser函数对过滤处理不当,导致可以注入转义符,致使系统数据库语句出错。。。
$this->userName = ereg_replace("[^0-9a-zA-Z_@!.-]","",$username); ,是不是代码编写人员忘记了,在引号内,转义符只能转义单引号和斜杠 :-P,这样,在变量username中输入一个单引号,变成',然后过滤'留下,导致数据库语句执行出错。
去掉代码中的斜杠,语句改为:$this->userName = ereg_replace("[^0-9a-zA-Z_@!.-]","",$username);// sebug.net [2008-03-12]
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。