sqlmap详解

一.sqlmap -u URL--forms

sqlmap -u http://192.168.11.136:1337//978345210/index.php --forms

针对特定的 URL 进行 SQL 注入测试,特别是针对表单(form)的 POST 注入

forms:这个参数告诉 sqlmap 解析并测试目标 URL 中的表单。

  1. 用途

    • 这个命令主要用于检测网页表单中的 SQL 注入漏洞。sqlmap 会自动从指定的 URL 获取页面中的表单进行测试。
  2. 使用场景

    • 当您想要测试一个网站的表单(如登录表单、搜索框等)是否存在 SQL 注入漏洞时,可以使用此命令。

如果有注入点会提示是否要注入:injection?

二.sqlmap -o -u "URL" --forms --dbs

sqlmap -o -u "http://192.168.11.136:1337//978345210/index.php" --forms --dbs

对特定 URL 进行 SQL 注入测试

  1. sqlmap:这是命令本身,指示系统运行 SQLMap 程序。

  2. -o:这个选项用于开启 SQLMap 的所有优化开关,以加快扫描过程。

  3. -u "http://192.168.11.136:1337/978345210/index.php" :这是指定要测试的 URL。在这个例子中,URL 是 http://192.168.11.136:1337/978345210/index.php

  4. --forms :这个选项告诉 SQLMap 分析目标 URL 上的所有表单,并尝试找出可能存在的 SQL 注入漏洞。SQLMap 会自动填写表单并提交,以检测是否存在可利用的注入点。

  5. --dbs:这个选项用于枚举并获取数据库服务器上的所有数据库。

  6. 查询成功返回关键字:available databases

在执行这个命令时,SQLMap 将首先分析指定的 URL 上的所有表单,然后尝试利用这些表单来检测 SQL 注入漏洞。如果发现漏洞,它会进一步枚举出数据库服务器上的所有数据库。

表单的组成:

  1. 输入字段(Input Fields):这是用户输入数据的地方,可以是文本框、密码框、单选按钮、复选框、下拉菜单等。
  2. 标签(Labels):描述输入字段用途的文本。
  3. 按钮(Buttons):如提交按钮(Submit)、重置按钮(Reset)或自定义按钮,用于提交表单或执行特定操作。
  4. 动作属性(Action Attribute):定义了表单数据提交的目标URL。
  5. 方法属性(Method Attribute):定义了表单数据提交到服务器的方式,通常是GET或POST。

表单的类型:

  • 联系表单:用于收集用户的联系信息,如姓名、邮箱、消息等。
  • 注册表单:用于新用户创建账户,通常需要用户名、密码、邮箱等信息。
  • 登录表单:用于用户登录,需要用户名和密码。
  • 搜索表单:允许用户输入关键词进行搜索。
  • 订单表单:在电子商务网站中用于收集订单信息,如商品选择、数量、支付方式等。

三.sqlmap -o -u "URL" --forms -D Webapp --tables

sqlmap -o -u "http://192.168.11.136:1337//978345210/index.php" --forms -D Webapp --tables 命令,您是在执行一个针对特定数据库的 SQL 注入测试,目的是枚举该数据库中的表。以下是对该命令各部分的解释:

  1. -o:这个参数用于优化 sqlmap 的性能,开启所有默认的性能优化选项。

  2. -u "http://192.168.11.136:1337//978345210/index.php":指定要测试的 URL。

  3. --forms:指示 sqlmap 解析目标 URL 中的表单,并使用这些表单进行测试。

  4. -D Webapp:指定要枚举的数据库为 Webapp

  5. --tables:这个选项用于枚举指定数据库中的所有表。

  6. 枚举成功关键字:Database:

四.sqlmap -o -u "URL" --forms -D Webapp -T Users --columns

指定表,枚举列

sqlmap -o -u "http://192.168.11.136:1337//978345210/index.php" --forms -D Webapp -T Users --columns

  1. 性能优化-o 参数使得 sqlmap 开启所有默认的性能优化选项,以提高工具的运行效率。

  2. 目标URL-u 参数后跟的 URL ("http://192.168.11.136:1337//978345210/index.php") 是测试的目标,sqlmap 将针对这个页面进行SQL注入测试。

  3. 解析表单--forms 参数指示 sqlmap 解析目标 URL 页面中的 HTML 表单,并尝试对这些表单进行注入测试。

  4. 指定数据库-D Webapp 参数告诉 sqlmap 要针对名为 "Webapp" 的数据库进行操作。

  5. 指定表-T Users 参数指定 sqlmap 应该在 "Webapp" 数据库中针对名为 "Users" 的表进行操作。

  6. 枚举列--columns 参数的作用是让 sqlmap 枚举并显示 "Users" 表中的所有列(字段)名称

五.sqlmap -o -u "URL" --forms -D Webapp -T Users --columns -C id,username,password --dump

在已经确认目标URL存在SQL注入漏洞的情况下,从 "Webapp" 数据库的 "Users" 表中提取 "id"、"username" 和 "password" 这三列的数据,并将这些数据转储出来

sqlmap -o -u "http://192.168.11.136:1337//978345210/index.php" --forms -D Webapp -T Users --columns -C id,username,password --dump

  1. -o:启用所有默认的性能优化选项。

  2. -u "http://192.168.11.136:1337//978345210/index.php":指定要测试的URL。

  3. --forms:告诉sqlmap解析目标URL页面中的HTML表单,并尝试对这些表单进行注入测试。

  4. -D Webapp:指定目标数据库为 "Webapp"。

  5. -T Users:指定在 "Webapp" 数据库中要操作的表为 "Users"。

  6. --columns:指示sqlmap枚举并显示 "Users" 表中的所有列。

  7. -C id,username,password:指定只枚举并操作 "Users" 表中的 "id"、"username" 和 "password" 这三列。

  8. --dump:这个参数指示sqlmap尝试从指定的列中提取数据,并将数据转储到文件或控制台。

相关推荐
用户962377954488 小时前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机11 小时前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机11 小时前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户9623779544812 小时前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star12 小时前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户9623779544816 小时前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher2 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行5 天前
网络安全总结
安全·web安全
red1giant_star5 天前
手把手教你用Vulhub复现ecshop collection_list-sqli漏洞(附完整POC)
安全
ZeroNews内网穿透5 天前
谷歌封杀OpenClaw背后:本地部署或是出路
运维·服务器·数据库·安全