SQL注入危害
绕过登陆验证:使用万能密码登录网站后台等
获取敏感数据:获取网站管理员账号,密码等
文件系统操作:列目录,读取、写入文件等
注册表操作:读取、写入、删除注册表等
执行系统命令操作:远程执行命令
判断一个http请求是否存在SQL注入的方式:
经典:and = | and 2 > 1 | or 1 = 1 | or 1 < 1
数据库函数:and sleep(4)=1 | and lenth(user())>3
SQL注入分类
数字型注入:输入的参数为整形
字符型注入:输入的参数为字符串
搜索型注入:在进行数据搜索时没有过滤搜索参数,一般在链接地址中有“keyword=关键字”,有的不显示链接地址,而是直接通过搜索表单提交。
SQL注入漏洞形成的原因
动态字符串构建引起
不正确的处理转义字符(宽字节注入)
不正确的处理错误(报错泄露信息)
不正确的处理联合查询
不正确的处理多次提交(二次注入)
SQL手工注入过程
(1)判断是否存在注入点
(2)判断字段长度
(3)判断字段回显位置
(4)判断数据库信息
(5)查找数据库名
(6)查找数据库表
(7)查找数据库表中所有字段以及字值
(8)猜解账号密码
(9)登陆管理员后台
翻译 朗读 复制 正在查询,请稍候…… 重试 朗读 复制 复制 朗读 复制 via 谷歌翻译(国内) 译