【安全测试】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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Redis环境部署(主从模式、哨兵模式、集群模式)

一、概述 REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库…

【Excel】身份证号最后一位“X”怎么计算

大多数人身份证号最后一位都是数字,但有个别号码最后一位却是“X"。 如果你查百度,会得到如下答案: 当最后一位编码是10的时候,因为多出一位,所以就用X替换。 可大多数人不知道的是,这个10是怎么来的…

Isaac Sim+SKRL机器人并行强化学习

目录 Isaac Sim介绍 OmniIssacGymEnvs安装 SKRL安装与测试 基于UR5的机械臂Reach强化学习测评 机器人控制 OMNI GYM环境编写 SKRL运行文件 训练结果与速度对比 结果分析 运行体验与建议 Isaac Sim介绍 Isaac Sim是英伟达出的一款机器人仿真平台,适用于做机…

Leetcode 743 Network Delay Time

题意:给定n个节点的网络,以及节点之间传输的时间,求从节点k出发传输信息,最少需要多久,所有的节点都能够接收到信息 https://leetcode.com/problems/network-delay-time/description/ 题解:给定一个有向图…

[Android]相关属性功能的裁剪

1.将home界面的search bar 移除 /src/com/android/launcher3/graphics/LauncherPreviewRenderer.java // Add first page QSBif (FeatureFlags.QSB_ON_FIRST_SCREEN) {CellLayout firstScreen mWorkspaceScreens.get(FIRST_SCREEN_ID);View qsb mHomeElementInflater.infla…

qt中ctrl+鼠标左键无法进入

现象:qt中ctrl鼠标左键无法跳转部分函数,例如能跳到textEdit->toPlainText().,但无法跳转到toUtf8();但编译没有问题 排查1:我发现是交叉编译链的问题,使用linux自带就可以进,用ATK-I.MX6U就部分不能进…

【Android】View—基础知识,滑动,弹性滑动

基础知识 什么是View 在 Android 中,View 是用户界面(UI)中的基本组件,用于绘制图形和处理用户交互。所有的 UI 组件(如按钮、文本框、图片等)都是 View 的子类。可以说,View 是构建 Android …

2024年十大信创操作系统之中科红旗的红旗 Linux

随着全球信息技术格局的变化与国家信息安全日益重要,操作系统作为计算机硬件与软件之间的中介,逐渐成为了国家竞争力的核心领域之一。尤其是在我国提出自主创新、国产替代的战略背景下,信创(信息技术应用创新)产业的快…

QT开发笔记之小知识

QCoreApplication::aboutToQuit 主事件循环退出前发出的信号,是程序退出前等待QT线程退出回收资源的神器。 官方帮助文档 [signal] void QCoreApplication::aboutToQuit() 该信号在应用程序即将退出主事件循环时发出,例如:当事件循环级别降至…

Word VBA如何间隔选中多个(非连续)段落

实例需求:Word文档中的有多个段落,段落总数量不确定,现在需要先选中所有基数段落,即:段落1,段落3 … ,然后一次性设置粗体格式。 也许有的读者会认为这个无厘头的需求,循环遍历遍历文…

PyAEDT:Ansys Electronics Desktop API 简介

在本文中,我将向您介绍 PyAEDT,这是一个 Python 库,旨在增强您对 Ansys Electronics Desktop 或 AEDT 的体验。PyAEDT 通过直接与 AEDT API 交互来简化脚本编写,从而允许在 Ansys 的电磁、热和机械求解器套件之间无缝集成。通过利…

软件著作权申请教程(超详细)(2024新版)软著申请

目录 一、注册账号与实名登记 二、材料准备 三、申请步骤 1.办理身份 2.软件申请信息 3.软件开发信息 4.软件功能与特点 5.填报完成 一、注册账号与实名登记 首先我们需要在官网里面注册一个账号,并且完成实名认证,一般是注册【个人】的身份。中…

HTTPS详解:加密机制、工作流程、CA证书与中间人攻击防护

文章目录 1. 前言1.1. 什么是HTTPS1.2. 什么是加密1.3. 常见的加密方式① 对称加密② 非对称加密 1.4. 数据摘要(数据指纹)① 实例:软件分发中的数据摘要 1.5.1 一个小问题 2. HTTPS 工作流程探究2.1. 方案1 - 只使用对称加密2.2. 方案2 - 只…

机器学习基础04

目录 1.朴素贝叶斯-分类 1.1贝叶斯分类理论 1.2条件概率 1.3全概率公式 1.4贝叶斯推断 1.5朴素贝叶斯推断 1.6拉普拉斯平滑系数 1.7API 2.决策树-分类 2.1决策树 2.2基于信息增益的决策树建立 2.2.1信息熵 2.2.2信息增益 2.2.3信息增益决策树建立步骤 2.3基于基…

【Python · PyTorch】卷积神经网络(基础概念)

【Python PyTorch】卷积神经网络 CNN(基础概念) 0. 生物学相似性1. 概念1.1 定义1.2 优势1.2.1 权重共享1.2.2 局部连接1.2.3 层次结构 1.3 结构1.4 数据预处理1.4.1 标签编码① One-Hot编码 / 独热编码② Word Embedding / 词嵌入 1.4.2 归一化① Min-…

ospf排错学习

排错步骤是 1、查看ospf的router-id是否相同 2、错误配置ospf发布路由 //典型错误 3、错误的ospf区域号 4、错误的被动接口设置 //接口设置为被动接口,不学习了 排错思路(思科命令&#xff09…

AR眼镜方案_AR智能眼镜阵列/衍射光波导显示方案

在当今AR智能眼镜的发展中,显示和光学组件成为了技术攻坚的主要领域。由于这些组件的高制造难度和成本,其光学显示模块在整个设备的成本中约占40%。 采用光波导技术的AR眼镜显示方案,核心结构通常由光机、波导和耦合器组成。光机内的微型显示…

【Linux】多线程(中)

目录 一、线程互斥 1.1 互斥概念 1.2 互斥量mutex 1.3 互斥量相关API (1)初始化互斥量 (2)销毁互斥量 (3)互斥量加锁和解锁 1.4 互斥量原理 1.5 重入和线程安全 二、死锁 2.1 概念 2.2 造成死锁…

【优选算法 — 滑动窗口】水果成篮 找到字符串中所有字母异位词

水果成篮 水果成篮 题目描述 因为只有两个篮子,每个篮子装的水果种类相同,如果从 0 开始摘,则只能摘 0 和 1 两个种类 ; 因为当我们在两个果篮都装有水果的情况下,如果再走到下一颗果树,果树的水果种类…

Ubuntu 的 ROS 操作系统 turtlebot3 gazebo仿真

引言 TurtleBot3 Gazebo仿真环境是一个非常强大的工具,能够帮助开发者在虚拟环境中测试和验证机器人算法。 Gazebo是一个开源的3D机器人仿真平台,它能支持物理引擎,允许机器人在虚拟环境中模拟和测试。结合ROS,它能提供一个完整的…