渗透利器-kali工具 (第三章-4) sqlmap之sql注入原理利用

server/2024/12/2 20:41:56/

sql注入到sqlmap的使用

一:认识sql注入漏洞

  1.什么是sql注入:

    攻击者通过构造不同的sql语句来实现对数据库的操作。

  2.两个关键条件:

    1.参数用户可以控制。

    2.程序原本要执行的代码,拼接了用户输入的数据,然后去执行。

二:sqlmap简介

  1.开源的渗透测试工具、自动化检测和利用sql注入漏洞。

  2.支持对多种数据库进行注入测试。

  3.支持多种注入技术,例如:盲注、时间延时注入、报错注入等。

  4.支持枚举用户数据库信息,列入,用户名、密码。

  5.自动识别哈希密码,并且使用密码字典进行破解。

  sqlmap是渗透测试人员对测试SQL注入漏洞进行检测的最佳工具。

三:sqlmap在Windows下的安装配置

  1.sqlmap工具地址:https://github.com/sqlmapproject/sqlmap

  2.安装配置:https://www.python.org/downloads/windows/

  3.python2和python3共存:https://www.zkaq.org/t/3572.html

  sqlmap最新版本支持Python2.7和python3,安装好Python就可以直接使用 。

四:sqlmap的常见用法、命令用法

  1.sqlmap注入的基本流程:

    判断sql注入点

    查询数据库信息

    根据数据库查询数据包

    根据数据表查询列信息

    通过sql注入点来让我们进一步信息收集

  2.sqlmap测试流程:

    1.检测是否存在注入点:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 

    2.查询数据库信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 --dbs

    3.通过数据库查询数据表信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 -D 库名 --tables

    4.通过数据表查询字段信息:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 -D 库名 -T 表名 --cloumns

    5.通过字段枚举字段内容:

      sqlmap.py –u http://127.0.0.1/index.php?id=1 --dump -D 库名 -T 表名 -C 字段名[可以多个]

  3.查看数据库相关信息:

    --current -user    枚举当前用户

    --cruuent -dbs    枚举当前数据库

    --dbs        枚举可用的数据库

    --is -dbs       枚举数据库权限

    --os-shell       向网站中投入cmdshell

    --passwords     枚举数据库用户密码

    -f          启用广泛的指纹识别

    -b            检测数据库指纹

    --hostname       枚举主机名称

    --identity-waf     检测waf信息

  4.sqlmap更新:[建议直接下载]:

    sqlmap.py --update


http://www.ppmy.cn/server/140569.html

相关文章

Jenkins系列

jenkins 1、搭建Jenkins 搭建Jenkins 2、这是什么 3、这是什么 4、 这是什么 5、这是什么 文章目录 jenkins1、搭建Jenkins2、这是什么3、这是什么4、 这是什么5、这是什么 前言 前言 提示:这里可以添加本文要记录的大概内容: 例如:随…

Fatal error: Uncaught Error: Call to undefined function mysql_connect() 解决办法详细

情况一 Fatal error: Uncaught Error: Call to undefined function mysql_connect() in /www/wwwroot/www.ygwzjs.cn/dg_upload/class/db_sql.php:72 Stack trace: #0 /www/wwwroot/www.ygwzjs.cn/dg_upload/class/combakfun.php(192): do_dbconnect_common(localhost, , guiz…

java-智能识别车牌号_基于spring ai和开源国产大模型_qwen vl

用大模型做车牌号识别,最简单高效 在Java场景中,java识别车牌号的需求非常普遍。过去,我们主要依赖OCR等传统方法来实现java识别车牌号,但这些方法的效果往往不稳定。随着技术的发展,现在有了更先进的解决方案——大模…

前端实现json动画(附带示例)

前端实现json动画(附带示例) 使用lottie制作动画。1.json动画2.实现效果3.git仓库4.运行5.json动画天堂6.代码7. 经常使用的方法 使用lottie制作动画。 1.json动画 废话不多说,直接看效果图2.实现效果 3.git仓库 https://gitee.com/chaiach…

高级Python自动化运维:容器安全与网络策略的深度解析

高级Python自动化运维:容器安全与网络策略的深度解析 目录 🔒 容器安全的基本原则🌐 网络策略的设计与实施🛡️ 容器映像安全扫描与漏洞管理⚙️ 实现安全的CI/CD流水线 1. 🔒 容器安全的基本原则 在现代云计算环境…

EulerOS 编译安装 ffmpeg

EulerOS 编译安装 ffmpeg 欧拉系统是国内自主研发的服务器操作系统,EulerOS基于CentOS的源码开发,运行环境兼容CentOS,国内的华为云、天翼云、移动云、联通云均采用欧拉系统。 安装工具包 经实测,在欧拉系统上需要通过yum安装下…

什么是JVM实现

JVM(Java Virtual Machine,Java虚拟机)实现是指将JVM规范转化为具体可执行代码的过程和结果。JVM规范定义了Java虚拟机应该具备的功能、行为以及与其他组件的交互方式,但它本身并不包含具体的实现代码。因此,不同的组织…

Spring Boot开发入门教程

简介 Spring Boot是一个开源的Java基础框架,用于创建独立、生产级的基于Spring框架的应用程序。通过Spring Boot,你可以轻松地创建独立的、生产级的Spring应用程序。 环境准备 Java开发环境:确保你的机器上安装了Java 8或更高版本。Maven…