【安全测试】sqlmap工具(sql注入)学习

前言:sqimap是一个开源的渗透测试工具,它可以自动化检测和利用SQL注入缺陷以及接管数据库服务器的过程。它有一个强大的检测引擎,许多适合于终极渗透测试的小众特性和广泛的开关,从数据库指纹、从数据库获
取数据到访问底层文件系统和通过带外连接在操作系统上执行命令。
官方网址:http://sqlmap.org/

本文是用于学习,请自觉维护网络安全。

一、安装

1.1 环境准备

使用python2.X的环境

注意: 我其实是3.8.10版本,我没有使用2.X,唯一区别是我安装了一下,发现没有问题  

pip install pymysql

1.2 下载sqlmap

官网:sqlmap: automatic SQL injection and database takeover tool

 

1.3 解压使用

直接解压即可使用

1.3.1 查看版本

python sqlmap.py --version

 

 1.3.2 查看帮助

python sqlmap.py -h#  高级帮助python sqlmap.py -hh

二、使用kali linux 来使用sqlmap

2.1 kali linux安装

kali linux 安装(略)

2.2 kali linux升级sqlmap

2.2.1 更新软件包列表


打开终端,输入以下命令来更新Kali Linux的软件包列表

sudo apt update

2.2.2 升级sqlmap


输入以下命令来升级sqlmap到最新版本:

sudo apt install --only-upgrade sqlmap

 2.2.3 验证升级


升级完成后,可以通过输入以下命令来检查sqlmap的版本号,以确认是否已经成功更新到最新版本

sqlmap --version

更多升级方法点击 ===》  其他升级方法 

三、sqlmap获取目标

3.1  sqlmap直连数据库

sqlmap -d "mysql://root:密码@IP:端口/dora" -f --banner -users #  windows执行 sqlmap 换成   python sqlmap.py   即可

 

3.2 sqlmap进行URL探测

# 这是在kali linux里面执行的
sqlmap -u "http://192.168.1.100/sqli/Less-1/index.php?id=1" --banner

3.3 sqlmap文件读取目标 

3.3.1 -l 从burpsuite proxy 或webscarab proxy日志文件读取http请求

 配置burpsuite

配置浏览器代理

windows配置

 kali linux的火狐浏览器配置代理

 浏览器输入

先配置好burp suite下图 

 浏览器输入网址之后,通过点击forward

将第一步文件放到sqlmap 文件下 

执行命令

python sqlmap.py -l test

3.3.2 -x 从sitemap.xml站点地图读取目标

 3.3.3 -m从多行文本格式读取多个目标

  多行文本格式文件如下

3.3.4 -r 从文本文件中读取http请求

将从burp suit获取的信息存储到一个文本文件,然后执行命令进行探测

3.3.5 -c  从配置文件sqlmap.conf中读取

上面的方法,都可以从这里指定文件执行

例如配置url:

python sqlmap.py -c sqlmap. conf

 3.4 sqlmap Google批量扫注入

由于墙的原因,无法实现,有能力者,实验

 四、sqlmap设置请求参数

4.1 sqlmap设置HTTP方法

4.2 sqlmap设置post提交参数 

下图红色方框信息可以通过burp suite 抓取 (我自己使用的时候一定要intercept ,然后通过forword获取信息)

发现问题:

在burp suite 的action

 

只替换admin

 点击go

1、在kali机器上的使用火狐浏览器打开被测系统打开到登录页面

2、kali上的火狐设置代理,找不到搜索network

3、打开burp suite 的截断

3、在浏览器点击登录,到burpsuite上查看截取信息

4、打开sqlmap

切换到root用户

输入

sqlmap -u "http://199.28.10.135:90/login.php" --data="admin&password=passeord&Login=Login&user_token=3a04485e24d70e0e0e0a76ad7b974026" -f --banner --dbs --users

4.3 sqlma设置参数分隔符

使用--param-del  指定分隔符

4.4 sqlmap设置cookie头

4.5 sqlmap设置user-agent

4.6 sqlmap设置host头

4.7 sqlmap设置referer

4.8 sqlmap设置额外http头

4.9 待补充

DVWA靶场系统环境搭建

1、docker环境安装

docker pull citizenstig/dvwa
docker run -d -p 90:80 --name dvwa --restart always citizenstig/dvwa:latest

2、访问

ip:端口

admin passwod

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/12193.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

行业类别-智慧城市-子类别智能交通-细分类别自动驾驶技术-应用场景城市公共交通优化

1.大纲分析 针对题目“8.0 行业类别-智慧城市-子类别智能交通-细分类别自动驾驶技术-应用场景城市公共交通优化”的大纲分析,可以从以下几个方面进行展开: 一、引言 简述智慧城市的概念及其重要性。强调智能交通在智慧城市中的核心地位。引出自动驾驶…

24.11.11 JavaScript1

JavaScript(简称js)是⼀种描述语⾔,基于对象和事件驱动的脚本语⾔ JavaScript特点:脚本语⾔(⼀种轻量级的编程语⾔) ⼀种解释性语⾔(⽆需预编译) 被设计为向HTML⻚⾯添加交互⾏为 运⾏于客户端&…

PDF24:多功能 PDF 工具使用指南

PDF24:多功能 PDF 工具使用指南 在日常工作和学习中,PDF 是一种常见且重要的文档格式。无论是查看、编辑、合并,还是转换 PDF 文件,能够快速高效地处理 PDF 文档对于提高工作效率至关重要。PDF24 是一款免费、功能全面的 PDF 工具…

计算机的错误计算(一百五十一)

摘要 探讨 MATLAB 中反正弦 asin 与反余弦 acos 函数的计算精度问题。 例1. 已知 计算 及 直接贴图吧: 另外,16位的正确值分别为 0.1570785896071048e1、0.1043072384837152e-4、-0.1570785896071048e1 与 0.3141582222865945e1(I…

Lua进阶用法之Lua和C的接口设计

一:lua/c的接口编程 首先skynet、openresty 都是深度使用 lua 语言的典范;学习 lua 不仅仅要学习基本用法,还要学会使用 c 与 lua 交互,这样才学会了 lua 作为胶水语言的精髓,下面看一下他们两个的调用过程。 虚拟栈&a…

macOS 下的 ARM 裸机嵌入式开发入门- 第二部分:实现第一个裸机应用并且调试

1、准备二进制运行程序镜像 利用 QEMU 仿真一个完整的系统,并创建最简单的“Hello world!”示例。 QEMU 模拟器支持 VersatilePB 平台,该平台包含一个 ARM926EJ-S 核心,以及其他外设,四个 UART 串行端口;特别是第一个…

【网络面试篇】其他面试题——Cookie、Session、DNS、CDN、SSL/TLS、加密概念

目录 一、HTTP 相关问题 1. Cookie 和 Session 是什么? (1)Cookie (2)Session 2. Cookie 的工作原理? 3. Session 的工作原理? 4. Cookie 和 Session 有什么区别? 二、其他问…

【数值分析】复习1---牛顿迭代法

首先,我们先来回顾一下牛顿迭代法的概念。 这里注意的是,牛顿迭代法是一种线性方法,它在点 x k x_k xk​处进行线性展开,而且展开成一阶泰勒公式!注意是一阶,不是二阶,不是更高阶,所…

文本语义分块、RAG 系统的分块难题:小型语言模型如何找到最佳断点

文本语义分块、RAG 系统的分块难题:小型语言模型如何找到最佳断点? 转自jina最新的关于文本语义分块的分享和模型 之前我们聊过RAG 里文档分块 (Chunking) 的挑战,也介绍了 迟分 (Late Chunking) 的概念,它可以在向量化的时候减…

PostgreSQL中如果有Left Join的时候索引怎么加

在PostgreSQL中,当你的查询包含多个LEFT JOIN和WHERE条件时,合理地添加索引可以显著提高查询性能。以下是一些具体的优化步骤和建议: 1. 分析查询 使用 EXPLAIN ANALYZE 命令分析你的查询,了解查询的执行计划,识别出连…

温度虽寒,其道犹变:OpenAI接口之温度参数设置为0,为何每次回复仍有不确定性?

问题描述 调用openai API,使用templature 0,每次返回的内容仍有一些不同 >>> client OpenAI( ... api_keyapi_key, ... base_urlapi_base) #第一次尝试 >>> response client.chat.completions.create(mo…

vue-h5:在h5中实现相机拍照加上身份证人相框和国徽框

参考: https://blog.csdn.net/weixin_45148022/article/details/135696629 https://juejin.cn/post/7327353533618978842?searchId20241101133433B2BB37A081FD6A02DA60 https://www.freesion.com/article/67641324321/ https://github.com/AlexKratky/vue-camer…

国标GB28181视频平台EasyCVR私有化部署视频平台对接监控录像机NVR时,录像机“资源不足”是什么原因?

EasyCVR视频融合云平台,是TSINGSEE青犀视频“云边端”架构体系中的“云平台”系列之一,是一款针对大中型项目设计的跨区域、网络化、视频监控综合管理系统平台,通过接入视频监控设备及视频平台,实现视频数据的集中汇聚、融合管理、…

【Android、IOS、Flutter、鸿蒙、ReactNative 】标题栏

Android 标题栏 参考 Android Studio版本 配置gradle镜像 阿里云 Android使用 android:theme 显示标题栏 添加依赖 dependencies {implementation("androidx.appcompat:appcompat:1.6.1")implementation("com.google.android.material:material:1.9.0")…

歌尔微拟赴港IPO,揭示AI+终端升级的供给革命

1959年,美国物理学家理查德费曼在他著名的演讲“底部有足够的空间”中,首次提出了将机器小型化到原子和分子尺度的想法。这个充满想象力的观点,为世界科技发展开启了一扇新的窗口。 时至今日,应这一理念而生的MEMS产品已经成为各…

ROS第七梯:ROS+VSCode+Python环境配置

第一步:Python版本的ROS项目和C++版本的ROS项目前期创建功能包的步骤基本一致,具体可参考第二章。 第二步:在功能包的目录下创建一个与src目录平级的文件夹,名称写作scripts: 第三步:在scripts文件夹下创建python的节点代码文件,此处以一个订阅节点代码文件为例:

洛谷解题日记||基础篇3

#include <iostream> #include <iomanip> // 用于设置输出格式 using namespace std;double a, b, c, d;// 定义方程 f(x) ax^3 bx^2 cx d double fc(double x) {return a * x * x * x b * x * x c * x d; }int main() {double l, r, m, x1, x2;int s 0;/…

软件测试学习记录 Day1

根据黑马程序员最新版的软件测试课程所做的笔记&#xff0c;需要原件后台私信&#xff1a; 练习提取测试点&#xff1a; 博主的答案&#xff0c;有不一样看法的可评论区讨论&#xff1a;

代码随想录刷题记录(二十七)——55. 右旋字符串

&#xff08;一&#xff09;问题描述 55. 右旋字符串&#xff08;第八期模拟笔试&#xff09;https://kamacoder.com/problempage.php?pid1065字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k&#xff0c;请编写一个函数&…

FreeRTOS 24:事件组EventGroup等待、清零、获取操作

等待事件标志位xEventGroupWaitBits() 既然标记了事件的发生&#xff0c;那么我怎么知道他到底有没有发生&#xff0c;这也是需要一个函数来获 取 事 件 是 否 已 经 发 生 &#xff0c; FreeRTOS 提 供 了 一 个 等 待 指 定 事 件 的 函 数 — — xEventGroupWaitBits()&…