• sqlmap的命令总结


    学习sqlmap时记得一些笔记,上传到博客方便以后查找

    sqlmap -r 扫描http是否存在漏洞(用bp的http请求)
    sqlmap -m 用文本进行get扫描
    sqlmap -l 用bp生成的文件扫描
    sqlmap -x 从stilmap.xml进行url扫描
    sqlmap -c 从sqlmap.conf使用
    --dbs 枚举所有数据库
    -D 指定数据库
    --table 枚举数据表
    -T 指定数据表
    --columns 枚举数据字段
    -C 指定数据字段
    --dump 打开相应字段
    -a 检测所有内容
    -z缩写命令
    -p 指定sql探测的参数(url中或者post)


    -f 获取指纹
    -v 设置风险值(可能会报错)

    --beep 发现注入会发出声音
    --alert= 当发现sql注入,运行系统命令
    --from解析测试表单的输入字段
    --crawl= 根据设置深度爬取url
    --batch 决策默认选择
    --no-cast 针对数据库老版本 将null值转换为空格
    --data= 属性 可把get的xxx.php?id=1 更改为 xxx.php  --data="id=1" 隐式的改为post请求
    --method =强制更改http请求方法
    --level 等级,最高5  coo kie最低需要2 user-agent,referer最低需要3  host头最低需要5
    --dbs 对应数据库名称
    --skip-urlencode 不进行url加密       
    --skip-static= 忽略指定参数(如xxx.php,静态参数 防止注入出现问题)  
    --scop 对bp生成文件进行过滤(自己加过滤条件) 例如 -l xxxx --scop “127.0.0.1”过滤ip是127.0.0.1的
    --randomize 设置随机参数,长度类型与提供的参数保持一致
    --param-del= 指明分割符号(sqlmap默认分隔符是&,如果分隔符号是别的 就要指认使用的分隔符)
    --safe-url --safe-post --safe-req --safe-freq 避免多次失败后销毁会话
    --skip-url-urlencode 不进行url加密 有些网站后台不遵循rfc标准,需要以原始的非编码形式发送时使用
    --risk 3 执行测试的风险(0-3,默认为1)risk越高,越慢但是越安全
    --check-internet 确保网没有问题
    --flush-session 刷新缓存
    --fresh-queeries 忽略储存的结果
    --identify-waf 查看是否有waf
    --moblie 使用手机user-agent

    时间_次数······
        --timeout 等待时间(超时)可以设置浮点数
        --delay 设置延时
        --retries 设置对应重试次数
        --eta注入数据时间·
    http
        --user-agent= 指定user-agent (sqlmap默认的可能会被拦截,需要指定一个合法浏览器的user-agent)不指定也可以直接用他会随机使用一个
        --headers 设置额外的http头 多个标头需要 (换行符)隔开 level=5
        --auth-type= 设置http认证 支持basic(弹出对话框)  digest ntlm
        --auth-cred http认证(登录)需要的用户名和密码
        --auth-file 指定私钥文件 提供的值为一个pem格式的key_file其中包含协议和私钥
        --ignore-401 忽略401错误
    proxy代理
        --proxy  设置代理服务器位置
        --proxy-cred 代理的认证信息(账号 密码)
        --proxy-file 使用文件 设置多条代理
    tor
        --tor 设置tor网络
        --tor-port 设置默认以外的Tor代理端口
        --tor-type 指定tor类型
        --check-tor 查看tor是否可以使用
    cookie(level不低于2)
        --cookie 指定cookie
        --cookie-del 指定cookie分隔符号
        --load-cookies 探测过程中发送来的cookie不询问一直使用
        --drop-set-cookie 探测过程中发送来的cookie不询问不使用
    性能优化
        -o开启所有的性能优化参数
        --keep-alive 设置持久连接 (在http报文中设置connection:keep-alive)
        --null-connection 不接受http中的body
        --thread 设置线程最大为10
        --predct-output 根据推理算法对检索字符的顺序统计预测 与--thread不兼容
    指定位置注入
        -p指定探查参数 多个用,分割
        --skip 指定忽略参数 多个用,分割
        --param-exclude= 忽略具体内容的参数 多个用|分割 (例如session)
        --skip-static忽略非动态参数
        --os windows --os linux 默认情况下会自动识别os类型 也可以指定os进行针对系统更详细的探测
    uri注入
        sqlmp无法自动探测 需要用*在参数后指定,(星号可以在任何合法文件中指定注入点)
    DBMS
        --count 只计算表的数量
        --schema枚举模式列表下包含的所有数据库 表 列 以及它们的类型
        --banner或-b 数据库版本信息
        --current-user 当前用户名
        --current-db 查看当前数据库名
        --hostname 当前主机名
        --is-dba 检测当前用户是否是数据库管理权限
        --users 获取当前DBMS所有用户
        --passwrod 获取当前所有dbms用户密码
        --privilegs --role 枚举dbms权限
        --encoding=强制设置dbms编码
    csv
        --csv-del= 设置分割符号

    mysql<5.0 mysql中没有元数据库 information_schema
        --common_tables
        --common_columns
     
    sqlmap读写文件
        --file_read= 读取对应文件 (绝对路径)
        --file_write= 读取本地文件
        --file_dest=写入文件 与--file_write一起写

  • 相关阅读:
    【转】【C++】【MFC】各种数据类型大小
    【转】【C++】【MFC】关于RADIO BUTTON的使用方法
    【C++】【MFC】创建新的线程函数
    【C++】【MFC】定义全局变量的方法
    【Quartus错误】Internal Error: Sub-system: AMERGE
    【转/TCP协议编程】 基于TCP的Socket 编程
    SQL递归查询(with as)
    SQL查询月、天、周、年(MySql的实例对比)
    sql 基础语句
    经典SQL语句大全
  • 原文地址:https://www.cnblogs.com/spend/p/12307443.html
Copyright © 2020-2023  润新知