SQL注入漏洞修复建议
常用的SQL注入漏洞的修复方法有两种。
1.过滤危险字符
多数CMS都采用过滤危险字符的方式,例如,用正则表达式匹配union、sleep、load_file等关键字。如果匹配到,则退出程序。例如,80sec的防注入代码如下:
functionCheckSql($db_string,$querytype='select'){global$cfg_cookie_encode;$clean='';$error='';$old_pos= 0;$pos= -1;$log_file= DEDEINC.'/../data/'.md5($cfg_cookie_encode).'_safe.txt';$userIP= GetIP();$getUrl= GetCurUrl();//如果是普通查询语句,则直接过滤一些特殊语法if($querytype=='select'){$notallow1="[^0-9a-z@\._-]{1,}(union|sleep|benchmark|load_file|outfile)[^0-9a-z@\.-]{1,}";//$notallow2 = "--|/\*";if(preg_match("/".$notallow1."/i",$db_string))

本文介绍了SQL注入漏洞的两种常见修复方法:一是通过过滤危险字符,如union、sleep等;二是使用PDO预编译语句避免变量直接拼接。这两种方法旨在提高网站安全性,但仍需注意潜在绕过手段。
最低0.47元/天 解锁文章
3543

被折叠的 条评论
为什么被折叠?



