如何防止网站被SQL注入

2025-05-24 18:54:21

1、我演示,找到一个有注入漏洞的 网站,注入点是这个搜索框,那么我们如何防止注入呢?

如何防止网站被SQL注入

2、此图片,我们可以清楚的看出,搜索框提交的搜索关键词是参数q,我们输入“设备”这个关键词,在URL中式 &q=设备,那么提交的关键词就是参数q,我们 只需要写个程序,获取参数q的值,并且判断是否危险就行了

如何防止网站被SQL注入

3、一般的建站程序都是PHP语言,这里以PHP页面为例,你在源码中找到搜索结果展示页面,也就是搜索功能主程序的php文件,然后瑗泫蹒蛸粘贴上一下代码,一定要在你主程序前面添加,然后在你的搜索主程序代码的后面加上两个},那么也就是}}$name=$_GET["q"]; if(empty($name)){ //如果为空echo "<script type='text/javascript'>alert('请输入内容');history.back();</script>";}else{ //SQL注入过滤程序 if(strpos($name,"'")||strpos($name,"#")||strpos($name,"$")||strpos($name,"%")||strpos($name,"*")||strpos($name,",")||strpos($name,";")||strpos($name,"//")||strpos($name,"_")||$name=="'"){ echo "<script language='javascript' type='text/javascript'>alert('你输入的关键词包含非法标点符号,请核对后再输入');//history.go(0);</script>"; }else{ if(strpos($name,"and1=1")||strpos($name,"and1=2")||strpos($name,"=")||strpos($name,"select")) //$name == "and1=1"||$name == "and1=2") {echo "<script language='javascript' type='text/javascript'>alert('别搞了,站长是渗透大神,几百年前的方法别拿出来丢人,给你点惩罚');window.location.href='http://www.aishangsoso.com/cf/1.html';</script>"; }else{

4、当然你的提交关键词的参数不一定是q,你只酋篚靶高需要把$_GET['q'];里面的q换成你的参数名就可以了,如果你的<稆糨孝汶;input>使用的是POST方式提交的数据,那么$_GET['q'];要把get换成POST

如何防止网站被SQL注入

5、说说原理,这是一个我写的过滤SQL语句标点棵褶佐峨还有语句关键词的程序,(大神 别喷)三个判断句,带带SQL语句 的提示非刮茕栓双法,如果输入的 内容包含and 1=1或者and 1=2的直接判断为恶意输入,然后运行惩罚脚本,然后,入侵者的浏览器就会boom!

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢