sqlmap安装和使用

sqlmap安装


sqlmap的github项目地址:https://github.com/sqlmapproject/sqlmap/

sqlmap需要python环境:https://www.python.org/downloads/

python安装和配置:https://blog.csdn.net/zhongcui8067/article/details/80439934

如下图,我们已经可以使用sqlmap了

sqlmap使用


简单使用流程

我在本地搭建了一个sqlilabs的环境,访问如下图

使用sqlmap测试是否存在注入点,所用参数 -u-->代表url

python sqlmap.py -u http://127.0.0.1/sql/sqli/Less-1/?id=1

sqlmap探测到布尔盲注,时间盲注和联合查询

获取MySQL中的数据库名称,使用命令 --dbs

python sqlmap.py -u http://127.0.0.1/sql/sqli/Less-1/?id=1 --dbs

通过 '-D' 指定数据库,--tables查询数据表

通过 '-T' 指定数据表,--columns查询字段名称

通过--dump获取数据

sqlmap的基础命令(常用)

  • -u:指定被扫描的url
  • -b:获取banner信息
  • --is-dba:是否是管理员权限
  • --current-db:当前数据库
  • --current-user:当前用户
  • --dbs:列举数据库
  • --tables:列举数据库的表名
  • --count:检索所有条目数
  • --columns:获取表的列名
  • --dump:获取表中的数据,包含列
  • -v:显示详细信息

sqlmap进阶命令(常用)

  • --level:测试等级(1-5),默认为1。大于2时,会检测cookie注入;大于3时,会检测头注入
  • --risk:执行测试的风险(0-3,默认为1)。risk越高,检测越慢越安全
  • --technique:指定注入类型。B->布尔注入;E->报错注入;U->联合查询;T->延时注入;S->堆叠查询
  • --time-sec :DBMS响应的延迟时间(默认为5秒)
  • --proxy:使用代理服务器连接到目标URL
  • --cookie:指定cookie
  • --user-agent:指定请求头。默认情况下sqlmap的HTTP请求头中User-Agent值是:sqlmap/1.0-dev-xxxxxxx(http://sqlmap.org)
  • --random-agent:从./txt/user-agents.txt中获取随机获取请求头
  • --method:强制使用给定的HTTP方法
  • --safe-freq:测试一个给定安全网址的两个访问请求
  • --delay:可以设定两个HTTP(S)请求间的延迟,设定为0.5的时候是半秒,默认是没有延迟的
  • --timeout:可以设定一个HTTP(S)请求超过多久判定为超时,10表示10秒,默认是30秒
  • --dbms:指定数据库。mysql、oracle、mssql等
  • --os:指定操作系统
  • --os-shell:获取一个shell,根据网站的语言

sqlmap所有命令

所有命令请参考:https://blog.csdn.net/ghosttzs/article/details/7362359

或者参考如下脑图

sqlmap中的tamper

挂在嘴边的一句话,sqlmap绕waf,所用到的模块就是tamper,所用命令 --tamper=xxxxx

先来看一下,sqlmap中的tamper文件夹下有哪些文件

序号脚本名称注释
10x2char将每个编码后的字符转换为等价表达
2apostrophemask单引号替换为Utf8字符
3apostrophenullencode替换双引号为%00%27
4appendnullbyte有效代码后添加%00
5base64encode使用base64编码
6between比较符替换为between
7bluecoat空格替换为随机空白字符,等号替换为like
8chardoubleencode双url编码
9charencode将url编码
10charunicodeencode使用unicode编码
11charunicodeescape以指定的payload反向编码未编码的字符
12commalesslimit改变limit语句的写法
13commalessmid改变mid语句的写法
14commentbeforeparentheses在括号前加内联注释
15concat2concatws替换CONCAT为CONCAT_WS
16equaltolike等号替换为like
17escapequotes双引号替换为\\\\
18greatest大于号替换为greatest
19halfversionedmorekeywords在每个关键字前加注释
20htmlencodehtml编码所有非字母和数字的字符
21ifnull2casewhenisnull改变ifnull语句的写法
22ifnull2ifisnull替换ifnull为if(isnull(A))
23informationschemacomment标示符后添加注释
24least替换大于号为least
25lowercase全部替换为小写值
26modsecurityversioned空格替换为查询版本的注释
27modsecurityzeroversioned添加完整的查询版本的注释
28multiplespaces添加多个空格
29nonrecursivereplacement替换预定义的关键字
30overlongutf8将所有字符转义为utf8
31overlongutf8more以指定的payload转换所有字符
32percentage每个字符前添加%
33plus2concat将加号替换为concat函数
34plus2fnconcat将加号替换为ODBC函数{fn CONCAT()}
35randomcase字符大小写随机替换
36randomcomments/**/分割关键字
37securesphere添加某字符串
38sp_password追加sp_password字符串
39space2comment空格替换为/**/
40space2dash空格替换为–加随机字符
41space2hash空格替换为#加随机字符
42space2morecomment空格替换为/**_**/
43space2morehash空格替换为#加随机字符及换行符
44space2mssqlblank空格替换为其他空符号
45space2mssqlhash空格替换为%23%0A
46space2mysqlblank空格替换为其他空白符号
47space2mysqldash空格替换为–%0A
48space2plus空格替换为加号
49space2randomblank空格替换为备选字符集中的随机字符
50symboliclogicalAND和OR替换为&&和||
51unionalltounionunion all select替换为union select
52unmagicquotes宽字符绕过GPC
53uppercase全部替换为大写值
54varnish添加HTTP头
55versionedkeywords用注释封装每个非函数的关键字
56versionedmorekeywords使用注释绕过
57xforwardedfor添加伪造的HTTP头

关于各版本数据库的用法请参考:https://www.freebuf.com/sectool/179035.html

如何自己写poc或陪着tamper:https://poc.evalbug.com/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值