Sql注入 #持续
原理:
数据交互的接口,通常与数据库经常进行连接,查询,储存,校验。
通过模拟与数据库进行交互时进行构造payload让数据库进行自己所构造的新操作,返回更多信息。
核心:
构造闭合,规则绕过。
类型:
整数注入,字符注入,时间盲注,宽字节,报错注入,
5.0以上版本/5.0以下版本
5.0以下没有information. schema这个系统表,无法列表名等,只能暴力跑表名;
5.0以下是多用户单操作,5.0以 上是多用户多操作。
靶场场景:
Sqllabs。
pikaqiu
Dvwa
姿势
注释
--+/-- /#/--%20
结果转换
hex()
to_base64()
简易版(只有闭合没有过滤,或者过滤简单)的0--1
找到注入点.
判断版本version()
版本5.0以上(大部分都是5.0以上)
存在information_schema
通过利用information_schema爆出内容。
库名:group_concat(schema_name) from information_schema.schemata
表名:group_concat(table_name) from information_schema.tables where table_schema='库名'
列名:group_concat(column_name) from information_schema.columns where table_name='表名'
遇到不存在回显的地方(布尔,时间)
可以通过构造sleep,然后编写脚本根据判断响应时间,来确定是否存在。
if(A,B,C)
A是判断句,
B是正确就执行的操作,
C是错误实行的操作,
手册下载:
MySQL 5.1参考手册_MySQL 5.1参考手册下载_chm|pdf - php中文网手册下载

浙公网安备 33010602011771号