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中文网手册下载

 

 

 

 

 

 

posted @ 2021-07-17 09:45  韩扶  阅读(64)  评论(0)    收藏  举报