第二章 原理篇
- SQL注入原理
SQL注入原理
原理与解释
在用户登录时,输入账号与密码的时候,利用“万能密码”登录到系统里面。这是因为登录的时候输入账号密码,通过sql语句查询数据库中的用户账号信息登录的。例如:select * from library where admin=" " and passwd=" ";
然而:使用万能密码(如下)就可以登录了形成原因:用户输入的数据被SQL解释器执行
常见的SQL注入类型
目的:绕过程序限制使用户输入的数据带入数据库执行,利用数据库的特殊性获得更多的信息或者更大的权限
数字型注入
输入的参数为整型时,则认为时数字型注入。
字符型注入
输入的参数为字符型时,则是字符型注入。
关键时如何闭合SQL和注释多余的代码
常见的数据库注入
- 查询数据
- 读写文件
- 执行数据
SQL 中
Order by 子句
查询列排序
UNION 查询
Union关键字将两个或者多个查询结果组合成单个结果集。有两个基本原则:
1.所查询中的列数必须相同
2.数据类型必须兼容
栗子:
1.可以查询出表格的字段数
2.查询敏感信息