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尝试从指定的列中提取数据,并将数据转储到文件或控制台。

相关推荐
云水一下16 分钟前
零基础玩转 bWAPP 靶场(五):HTML 注入——存储型(博客)
web安全·html·bwapp·存储型注入
CypressTel2 小时前
JADEPUFFER暴露企业安全防御新挑战——赛柏特安全观察
安全
上海云盾-小余3 小时前
流量攻击详解:区分带宽耗尽与资源耗尽两类攻击
爬虫·安全·ddos
科力锐品牌君4 小时前
医院数据存储“乱象”:如何兼顾兼容、高效与合规?
大数据·安全·备份·存储·存储方案
Chockmans4 小时前
春秋云境CVE-2023-51385(保姆级教学)
大数据·web安全·elasticsearch·搜索引擎·网络安全·春秋云境·cve-2023-51385
长风2305 小时前
Day 17: 突破 AOB 框架霸权 —— 插件界面重构与大屏呈现
人工智能·安全
chenyulin45456 小时前
企业微信API:海量会话存档数据的高性能检索与Elasticsearch索引设计
大数据·人工智能·安全·企业微信
启雀AI15 小时前
生物医疗行业如何建设合规、安全、可复用的知识库?
人工智能·安全·软件构建·知识图谱·知识库
Sirius Wu16 小时前
OpenClaw Skill:Matplotlib 可视化技能 + 沙箱双层隔离完整详解
服务器·网络·人工智能·安全·ai·架构·aigc
冬奇Lab16 小时前
每日一个开源项目(第160篇):Destructive Command Guard - 在 AI Agent 运行 rm -rf 之前拦截它
人工智能·安全·开源