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

相关推荐
YesYoung!15 分钟前
pikachu靶场-敏感信息泄露概述
web安全·网络安全·ctf
doubt。19 分钟前
【BUUCTF】[RCTF2015]EasySQL1
网络·数据库·笔记·mysql·安全·web安全
廾匸07052 小时前
《2024年度网络安全漏洞威胁态势研究报告》
安全·web安全·网络安全·研究报告
winxp-pic4 小时前
视频行为分析系统,可做安全行为检测,比如周界入侵,打架
安全·音视频
万亿少女的梦1684 小时前
WEB渗透技术研究与安全防御
开发语言·前端·网络·爬虫·安全·网络安全·php
独行soc5 小时前
#攻防演练#应急响应#对于挖矿的检测以及防御方案
安全·区块链·应急响应·挖矿·主机排查·木马排查
Fly不安全5 小时前
HackTheBox靶机:Sightless;NodeJS模板注入漏洞,盲XSS跨站脚本攻击漏洞实战
网络·安全·web安全·web·xss·hackthebox·模板注入
软件公司.乐学8 小时前
安全生产算法一体机定制
人工智能·安全
云起无垠8 小时前
【论文速读】| 评估并提高大语言模型生成的安全攻击探测器的鲁棒性
人工智能·安全·语言模型