SQL注入
一,
1, 性质SQL注入的本质是用户输入的为非正常数据,而是能够被数据库所执行的SQL语句
2, SQL注入漏洞的危害可以取得数据库内的信息
二,白盒分析(需要源代码)
1, 目的:就是为了得到数据库内的信息
2, 结构决定步骤,从库到表到字段再到数据就是从库名到表名再到字段名,最后找到数据
3, Union
① 作用:联合查询用于合并两国或多个select结果集
② 使用方法:Select * from users union select 1,2,3 from users;
③ 作用:URL中插入的SQL语句能够执行
④ 不能用于删除和插入数值,只能查询
⑤ 规则:在select中前后查询字段数必须一致
4,Order by
① 作用是对结果集进行排序
② 使用方法:Select * from users Order by第几列//对表名为users的第几列数据进行排序
③ 目的:查询字段数
2, SQL数据库自带information_Shema数据库,内有tables与clunms两张表
① Tables表内Table_shema,里面有所有数据库库名
② Tables表内Table_name,里面有各数据库内的表名
③ Columns 内有Columns-name表中对应的字段名库名里有什么表,表内有什么字段
三, 黑盒(仅有网页或网址)
1, Order by得知共有几列数据
2, 实用union,但有时会覆盖后续查询内容,要想展示所有查询内容,可使用ID为负一,但有时展示空间有限,会仅展示所能展示的内容
3, 查库名:database()
4, 查表名:Table_name
5, --+注释掉后续句
6, 查询字段名column name
7, 取出列表内所有内容(不建议使用)Group_concat(Table _name)
8, 要想跳出在原语句要添加的语句开头加单引号,再注释掉原单引号