1、介绍
SQL注入攻击是输入参数未经过滤,然后直接拼接到SQL语句当中解析。
SQL注入是一种将SQL代码添加到输入参数中,传递到服务器解析并执行的一种攻击手法。
2、原理
攻击者在页面提交恶意字符;
服务器未对提交参数进行过滤或过滤不足;
攻击者利用拼接sql语句方式获取数据库敏感信息;
3、实现方式
手动注入
自动注入(工具)
4、基本sql语句
(1)连接mysql:mysql -uroot -p
(2)查看所有数据库:show database
(3)使用库:use
(4)查看默认库:select database();
(5)查看所有表:show tables;
(6)查看表结构:desc 表;
(7)查看创建表sql语句:show create table users\G G:字段以行方式显示
(8)查看当前默认用户:select user();
5、SQL注入的手工检测
(1)单引号法
(2)1=1或1=2 法
6、SQL注入分类
(1)数字型注入
(2)字符型注入
(3)搜索型注入
(4)XX型注入——select * from user where username=('xx') or 1=1;
(5)insert/update注入
(6)delete注入
(7)http header注入
(8)union注入