4.1.1. 注入分类

4.1.1.1. 简介

SQL注入是一种代码注入技术,用于攻击数据驱动的应用程序。 在应用程序中,如果没有做恰当的过滤,则可能使得恶意的SQL语句被插入输入字段中执行(例如将数据库内容转储给攻击者)。

4.1.1.2. 按技巧分类

根据使用的技巧,SQL注入类型可分为

  • 盲注
    • 布尔盲注:只能从应用返回中推断语句执行后的布尔值
    • 时间盲注:应用没有明确的回显,只能使用特定的时间函数来判断
  • 报错注入:应用会显示全部或者部分的报错信息
  • 堆叠注入:有的应用可以加入 ; 后一次执行多条语句
  • 其他

4.1.1.3. 按获取数据的方式分类

另外也可以根据获取数据的方式分为3类

4.1.1.3.1. inband

利用Web应用来直接获取数据,如报错注入,这类注入都是通过站点的响应或者错误反馈来提取数据。

4.1.1.3.2. inference

通过Web的一些反映来推断数据,如布尔盲注,也就是我们通俗的盲注, 通过web应用的其他改变来推断数据。

4.1.1.3.3. out of band (OOB)

通过其他传输方式来获得数据,比如DNS解析协议和电子邮件。