一、SQL注入—就是利用现有应用程序的特性,攻击者通过在WEB表单,URL等可以输入数据的地方,插入恶意的SQL语句欺骗了原有的SQL语句,并且数据库成功的执行该语句操作
二、SQL注入的危害
1.数据库资料信息泄露
2.网页被挂马、篡改等操作
3.数据库执行了某种恶意的操作,如提权,注入新的账号密码等
4.服务器被远程控制,和安装后门等操作
比如:绕过程序登录验证,获取程序管理员账号密码,可以修改删除或者添加文件,对注册表的修改和执行一些系统命令
三、SQL注入常见分类
按照数据类型划分:数字型和字符型
按照返回结果划分:显错注入和盲注
四、SQL注入的形成
1.程序数据和程序代码没有严格分离
2.在程序中用户提交的数据没有进行充分的检查过滤就被带入到了SQl语句当中,改变了原有的SQL命令语句的语义,且成功的被数据库进行了执行操作
五、SQL注入执行的过程
-
在程序用户界面修改参数等数据
|
2. 未检查被修改的参数数据,并且被代入到SQL语句里面 |
3. 数据库成功的执行被代入的SQL语句 |
4. 服务器端根据被注入的内容返回结果 |
5. 根据上次的注入结果再进行下一步的SQL注入 |
六、如何查找程序的SQL注入漏洞
1.软件查找
Safe3wvs BurpSuite Appscan Acunetix WVS等

safe3软件使用截图
2.手动查找,利用'真'返回结果
数字型参数:and 1=1或and 1=2
OR 1=1或OR 1=2
+、-、*、/…
字符型参数:and '1'='1'或and '1'='2'
OR '1'='1'或OR '1'='2'等
注释字符: — # /* */
例子:在url后面添加真后,再添加注释字符,可以屏蔽原来的sql语句
如www.xxx.com/xxx.php?id=1 and 1=1#
未经允许不得转载:天府数据港官方信息博客 » 【学习】SQL注入基础
客官点个赞呗! (0)