用法-技术技巧-sqlmap用户手册-测试-IT技术博客

技术技巧

这些选项可用于调整特定SQL注入技术的测试。


SQL注入技术进行测试

选项:--technique


此选项可用于指定要测试的SQL注入类型。默认情况下,sqlmap测试其支持的所有类型/技术。


在某些情况下,您可能只想测试一种或几种特定类型的SQL注入思想,这就是该选项起作用的地方。


此选项需要一个参数。这样的参数是由B,E,U,S,T和Q字符的任意组合组成的字符串,其中每个字母代表不同的技术:


B:基于布尔的盲注

E:基于错误

U:基于联合查询

S:堆叠查询

T:基于时间的盲注

问:内联查询

例如,如果您仅想测试和利用基于错误的查询和堆积查询,则可以提供ES。默认值为BEUSTQ。


请注意,当您要访问文件系统,接管操作系统或访问Windows注册表配置单元时,字符串必须包含堆叠的查询技术字母S。


延迟基于时间的盲SQL注入的DBMS响应的秒数

选项:--time-sec


通过提供--time-sec选项后跟一个整数,可以设置秒以延迟基于时间的盲SQL注入测试时的响应。默认情况下,它的值设置为5秒。


UNION查询SQL注入中的列数

选项:--union-cols


默认情况下,sqlmap使用1至10列测试UNION查询SQL注入技术。但是,通过提供更高的级别值,此范围最多可以增加到50列。有关更多详细信息,请参见相关段落。


您可以通过为工具提供--union-cols选项和整数范围的选项,手动告诉sqlmap使用特定范围的列来测试这种类型的SQL注入。例如,12-16表示通过使用12列(最多16列)来测试UNION查询SQL注入。


用于测试UNION查询SQL注入的字符

选项:--union-char


默认情况下,sqlmap使用NULL字符测试UNION查询SQL注入技术。但是,通过提供更高的--level值,sqlmap还将使用随机数执行测试,因为在某些特殊情况下,使用NULL的UNION查询测试失败,而使用随机整数则成功。


您可以通过使用带有所需字符值的选项--union-char(例如--union-char 123)手动告诉sqlmap使用特定字符测试这种类型的SQL注入。


在UNION查询SQL注入的FROM部分中使用的表

选项:--union-from


在某些UNION查询SQL注入情况下,需要在FROM子句中强制使用有效且可访问的表名。例如,Microsoft Access要求使用此表。如果不提供一个UNION查询,SQL注入将无法正确执行(例如--union-from = users)。


DNS渗透攻击

选项:--dns-domain


DNS渗透SQL注入攻击在论文《 SQL注入攻击中的DNS数据检索》中进行了介绍,而在sqlmap内部实现的实现的介绍可以在使用sqlmap的DNS渗透幻灯片中找到。


如果用户正在控制注册为DNS域服务器的计算机(例如domain Attacker.com),则可以使用此选项(例如--dns-domain Attacker.com)来开启此攻击。它起作用的前提条件是使用管理员权限(特权端口53的使用)运行sqlmap,并且可以使用一种常规(盲)技术。攻击的唯一目的是在已识别至少一种技术(最好是基于时间的盲法)的情况下加快数据检索的过程。如果可以使用基于错误的盲查询或UNION查询技术,则默认情况下将跳过这些查询技术。


二阶攻击

选项:--second-url和--second-req


二阶SQL注入攻击是一种攻击,其中在一个漏洞页面(例如框架)中显示(反映)了一个漏洞页面中注入的有效载荷的结果。通常是由于用户在原始易受攻击页面上提供的输入的数据库存储而发生的。


您可以通过使用带有URL地址的选项--second-order或带有请求文件的--second-req来手动告诉sqlmap测试这种类型的SQL注入,以将其发送到显示结果的服务器。


标签: sqlmap教程sqlmapsqlmap手册用户手册sqlmap用户手册