一、SQL注入
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
(1)在url上添加参数请求查询:http://shop.aqlab.cn:8001/?id=1
以上是通过url查询id为1的数据,但如果我们在后面传参这样写:http://shop.aqlab.cn:8001/?id=1' or '1'='1
那么执行的查询语句就是where xx='1' or '1'='1',这样查询的就是全部的数据。
(2)或者是登录时的免密登录,在传参的时候将注释符号#传入,注释后面密码的查询和验证,这样就可以只通过用户名免密登录
用户名:' or 1=1#
这样查询语句执行的就是:where username='' or 1=1# and password='',直接注释掉密码的验证
(3)对数据表的恶意操作
传入的参数为 or 1=(drop xx from xx)等,可以对数据表进行删除操作,所以sql注入的安全性问题很重要,sql注入是在保证查询where语句恒真的情况下可以对数据表做任意操作
(4)资源枚举,其实就是通过枚举法也就是穷举法对数据库名,备份数据库名,数据表名,列名等进行猜测,然后通过服务器返回的错误提示中得到信息,便可以进行sql注入操作。
二、sql注入工具--Sqlmap
Sqlmap是一款自动化sql注入的工具,其功能强大,支持多种数据库,包括mysql,sqlserver等主流的数据库,采用独特的sql注入方法来达到自动化注入扫描漏洞的目的。
./sqlmap.py –u “http://www.bigesec.com/inject.asp?id=injecthere” //get注入
今天完成任务注入测试-sqlmap
网友评论