防止sql注入以及注入原理

1. 判断是否可以注入 id=145 and 1=1正常显示 id=145 and 1=2 我这里可以注入的是正常显示,网上说提示错误 id=145′后面加入‘这样提示错误(有的甚至连表名都提示了)

2. 猜管理员表名

比如原来是***.php?id=49在后面加入 And (Select Count(*) from Admin)>=0 ,如果页面和id=49一样那么,表名就可以确定了——————就是admin了。

3. 猜猜用户表中字段 将刚才的*换成你猜的字段,如果页面也和id=49的一样,恭喜你,字段名字出来了 常用字段名:(user,users,member,members,userlist,memberlist,userinfo,admin,manager,yonghu )

4. 然后判断管理表中有几个字段 输入:id=145 and 1=2 union select 1,1,1 from admin其中admin就是你刚才猜出来的管理表

5. 如果才出来字段会在页面上本来显示的地方显示成了数字,然后将数字替换成你才出来的字段名字,这样密码以及用户名都显示在页面上了。一般后台账户都是md5加密的,找个md5解密工具试试

下面介绍怎么过滤

[php]

function NO_SQL($str) { <span style="color: #ff0000;">$arr=array(‘select’,’update’,’delete’,’union’,’where’,’admin’,’insert’,’count’);</span>

//数组内的字符串是过滤掉的非法字符,如果传递有这样的非法字符,则提示非法操作,关闭窗口 foreach($arr as $pattern) {

if(preg_match("/$pattern/", $str)) { echo "<script language=\"javascript\">alert(\"非法操作!\");self.close();</script>"; exit(); break; } }

return $str; }[/php]

其他要注意编程规范

比如:字段名和表名要加上“  `  “”(这个就是tab上面那个键)、正确使用post和get、提高数据库名字命名、关闭错误提示、封装sql

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏计算机视觉与深度学习基础

Leetcode 146 LRU Cache 模拟操作系统LRU

科研学习压力比较大,最近更新的不多,有时间尽量多做一点吧!上来就是一个大模拟。 Design and implement a data structure ...

20710
来自专栏Rgc

python更新数据库脚本两种方法

最近项目的两次版本迭代中,根据业务需求的变化,需要对数据库进行更新,两次分别使用了不同的方式进行更新。 第一种:使用python的MySQLdb模块利用原生的s...

3997
来自专栏Java技术栈

Spring bean - scope详解

Scope是定义Spring如何创建bean的实例的。 在创建bean的时候可以带上scope属性,scope有下面几种类型。 Singleton 这也是Spr...

28211
来自专栏佳爷的后花媛

php基础(二)

输出b,if中的空值赋值给$num,因此if条件必定为false,还有其他一些大同小异的题目,用=和==判断for循环的,只要把握好基本的概念就行了

2612
来自专栏Android知识点总结

安卓中对于文件夹的综合操作

1022
来自专栏软件开发

MyBatis学习总结(一)——ORM概要与MyBatis快速入门

程序员应该将核心关注点放在业务上,而不应该将时间过多的浪费在CRUD中,多数的ORM框架都把增加、修改与删除做得非常不错了,然后数据库中查询无疑是使用频次最高、...

1623
来自专栏别先生

基于jsp+servlet图书管理系统之后台用户信息修改操作

上一篇的博客写的是查询操作,且附有源码和数据库,这篇博客写的是修改操作,附有从头至尾写的代码(详细的注释)和数据库!  此次修改操作的源码和数据库:http:...

45110
来自专栏岑玉海

sqoop 常用命令整理(二)

  26.Validate 它用来比较源数据和目标数据的数量 它有三个接口 Validator. 它有三个接口 Validator. Property: ...

3176
来自专栏数据结构与算法

1777:文件结构“图”

1777:文件结构“图” 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB描述 在计算机上看到文件系统的结构通常很有用。Micr...

36510
来自专栏用户2442861的专栏

mongodb操作(概述以及相关的命令)

http://blog.csdn.net/ljfbest/article/details/11979609

892

扫码关注云+社区