`

Sql注入之sqlmap+dvwa实例演练

 
阅读更多

Sql注入之sqlmap+dvwa实例演练

 

相信很多同学都已经知道了什么是sql注入,也明白为什么会发生sql注入。也可以通过在输入框和url中“手工”注入,来实现绕过登录、非法修改这样有趣又实用的功能。但这些还远不能让我们感觉到sql注入的巨大威力。

你也一定听过各种各样的新闻报道xxx网站被黑,上百万用户数据泄露。想知道它们是如何获得这些数据的吗?不讲过多原理,就和实验楼【Sql注入之sqlmap+dvwa实例演练】项目教程一起来实操“拖库”。

sqlmap是当前最火热的自动化SQL注入工具,可以扫描、发现并利用给定URL的SQL注入漏洞。而DVWA是一套包含了一些常见安全漏洞的靶机web应用。矛和盾都在手,一起通过该项目的实际演练来感受sql注入的实际威力吧。

一、sql注入原理

注入式攻击可行的根本原因在于数据与程序/指令的混合。在sql注入中,精心构造的输入数据将“溢出”原本它的数据域范围,成为sql语句控制域的一部分,进而改变和控制sql语句的行为。

利用sql注入漏洞的步骤可分为:

  • 找注入点(在哪里注入)
  • 构造注入内容(如何注入)

注入点:

根据注入的原理,可判断出有与服务器数据交互的地方都有可被注入的可能。Web应用的用户输入方式比较多,其中一些用户输入方式是很明显的,如HTML表单。但还有许多不明显的交互方式例如隐藏的HTML表单输入、HTTP头部、cookies、甚至异步的AJAX数据交互请求。常见的注入点有GET请求(url参数)和POST请求(表单数据)。我们可以通过burp suite这类代理、抓包工具来全面分析可注入点。

注入类型:

注入字符串构造方式或者说注入类型有5种,分别是:

  • 布尔型注入
  • 报错型注入
  • 基于时间延迟注入
  • 可联合查询注入
  • 可多语句查询注入

这5种方式基本涵盖了绝大多数的注入攻击实例,掌握了这5种方式可以说能够很好的查找和利用sql注入了。

其中前3种一般用来获取DBMS的相关信息和sql注入检测;后两种用来大量获取数据库中的数据。

sqlmap在检测和注入时自动使用到了以上几种构造方式。

二、sqlmap的安装和使用

什么是SQLmap?

SQLmap是一款用来检测与利用SQL注入漏洞的免费开源工具,有一个非常棒的特性,即对检测与利用的自动化处理(数据库指纹、访问底层文件系统、执行命令)。

ubuntu的软件源中不包含sqlmap,去github下载源码速度较慢,我们使用kali的源来下载和安装以节省时间。

$ wget http://labfile.oss.aliyuncs.com/courses/645/kali_aliyun_source.txt
$ sudo cat /etc/apt/sources.list >> kali_aliyun_source.txt
$ sudo cp kali_aliyun_source.txt /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get install sqlmap

安装过程可能出现无法验证软件包的错误提示,不会影响后续实验,可以忽略跳过。安装完毕后,在终端中输入sqlmap -u '.'测试下是否能正常使用:


安装成功

看到黄色的Banner说明安装成功。

三、dvwa的部署和使用

DVWA是什么?

DVWA(Dam Vulnerable Web Application)是用PHP+Mysql 编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序。包含SQL注入、XSS、盲注等常见的一些安全漏洞。

实验楼的这个项目课程已经从dvwa官网下载并添加了简单的部署脚本,按照以下步骤部署dvwa到实验楼环境中:

$ wget http://labfile.oss.aliyuncs.com/courses/645/dvwa_deploy.tar.gz
$ tar -zxvf dvwa_deploy.tar.gz
$ ./deploy.sh

接着打开浏览器,在地址栏输入localhost/dvwa/setup.php访问初始设定页面,点击图中的按钮初始化数据库。


dvwa数据库初始化

初始化成功后的结果如下:


数据库初始化成功

初始化之后,页面将跳转到登录页,输入默认用户名admin和密码password登入系统。


登入dvwa

下一步需要设置dvwa系统的难度级别,由于它是一个专门的演练系统,因此针对不同的使用场景设计了4种攻击难度级别。

登入系统后,点击DVWA Security选项即可看到设置页面。将难度设置为low之后,点击submit让设置生效。有兴趣的同学也可以设置中高难度来学习和练习一些passby技巧。


设置安全级别

四、开始注入

这一步是动手实战开始注入,主要分为以下两个步骤:

  • 注入点扫描;
  • 注入点利用;

关于具体的操作方法和详细代码,点击这里就可以查看了~

分享到:
评论

相关推荐

    使用sqlmap+burpsuite进行中级sql注入

    本篇将详细介绍如何结合sqlmap和BurpSuite工具进行中级SQL注入的实战操作。 首先,我们需要了解sqlmap和BurpSuite的基本功能。sqlmap是一款自动化SQL注入工具,它能自动检测和利用SQL注入漏洞,获取数据库信息。...

    SQL注入+sqlmap使用

    SQL注入+sqlmap使用SQL注入+sqlmap使用SQL注入+sqlmap使用

    sqlmap在windows上执行sql注入,利用dvwa靶场.md

    分享一下自己学习sqlmap的过程,因为网上的资源很少,所以就想着写个博客记录一下,同时也分享一下吧。就先讲到这里吧,有问题的可以私信。欢迎大家提意见。

    SQL注入加sqlmap使用

    SQL注入加sqlmap使用,支持一下,谢谢,可以了解一下。

    网络安全-实验七-SQL注入-盲注+sqlmap使用.docx

    【网络安全-实验七-SQL注入-盲注+sqlmap使用】 SQL注入是一种常见的网络攻击方式,它通过在应用程序的输入参数中嵌入恶意SQL代码,从而控制或篡改数据库的行为。在这个实验中,我们将深入理解SQL注入的盲注类型,并...

    详解强大的SQL注入工具——SQLMAP

    SQLMAP是一个开源的渗透测试工具,专门用于自动探测和利用SQL注入漏洞。SQLMAP不仅可以在Windows平台上使用,同时也支持Linux平台,它的设计目标是为了帮助数据库管理员(DBA)和安全研究人员检测数据库配置的安全性...

    sql注入工具sqlmap源代码+常用指令

    SQLMap是一款流行的开源SQL注入工具,用于自动化检测和利用Web应用程序中的SQL注入漏洞。它可以测试目标站点是否存在SQL注入漏洞,并探测数据库类型、操作系统、表名、列名等信息,进而将这些信息自动化地利用来获取...

    sqlmap+python2.7.1

    本压缩包“sqlmap+python2.7.1”显然是为了方便用户在没有Python环境或需要特定版本Python的系统上运行SQLMap而准备的。 SQLMap的核心功能在于自动化探测和利用SQL注入漏洞,这些漏洞通常出现在网站后端数据库管理...

    SQLMAP安装工具(SQLMAP+Python2.7.15)

    SQLMAP安装工具(含:SQLMAP+Python2.7.15);以下是参考资料 sqlmap防注入软件安装: https://jingyan.baidu.com/article/86112f13b976e92736978749.html sqlmap防注入案例: ...sqlmap基本用法: ...

    网络安全 sql注入工具sqlmap使用

    Sqlmap是当前最流行的sql注入工具之一,广泛应用于网络安全领域,特别是在渗透测试和漏洞扫描领域。Sqlmap可以自动检测和利用SQL注入漏洞,获取数据库敏感信息,包括数据库结构、表名、字段名、数据内容等。 数据库...

    网络安全-sql注入-sqlmap

    网络安全-sql注入-sqlmap

    pythonSQL注入仿写SQLMAP脚本.rar

    Python SQL注入仿写SQLMAP脚本是针对网络安全领域的一个实践项目,主要涉及到的是利用Python编程语言来模拟著名的自动化SQL注入工具SQLMAP的功能。SQL注入是一种常见的网络安全漏洞,攻击者通过构造特殊的SQL语句来...

    sql注入工具sqlmap

    sqlmap是一个自动化的sql注入渗透工具,指纹检测、注入方式、注入成功后的取数据等等都是自动化的,甚至还提供了一个字典来将取回来的hash爆破,是ctf sql注入题的必备帮手

    免费开源的SQL注入工具SQLmap.zip

     PS:之前在wooyun上看了一些关于SQLMAP的文章,受益匪浅,今天翻译这篇文章,是希望对于如何使用SQLMAP提供一个基本的框架,SQL注入的原理以及SQLMAP详细的命令参数和不同的应用实例可以参考下面的文章: ...

    java开发基于SQLmap的SQL注入工具源码.zip

    基于SQLmap的SQL注入工具源码.。基于SQLmap,使用Java开发 安装教程 安装JDK(需要有javafx) 安装Python 安装SQLmap 基于SQLmap的SQL注入工具源码.。基于SQLmap,使用Java开发 安装教程 安装JDK(需要有javafx)...

    SQL注入专题防范+攻击全手册

    SQL注入是一种常见的网络安全威胁,它利用了Web应用程序未能有效过滤用户输入数据的漏洞,使得攻击者可以执行恶意的SQL命令,获取、修改、删除数据库中的敏感信息,甚至完全控制数据库服务器。本手册全面探讨了SQL...

    Sqlmap 注入神器 支持各种sql注入

    Sqlmap是一款强大的自动化SQL注入工具,它主要用于检测和利用SQL注入漏洞。这款神器因其功能全面、易用性高而备受安全研究人员和渗透测试者的青睐。它的核心目标是帮助用户识别和利用网站应用程序中的SQL注入弱点,...

    SQLMAP SQL注入 超神器

    SQLMAP SQL注入 超神器

    利用谷歌搜索SQL注入漏洞关键词

    利用谷歌搜索SQL注入漏洞关键词 目标关键字+inurl:id 英语字母及单词+inurl:id 网站域名+inurl:id 阿拉伯数字+inurl:id inurl:asp?id= inurl:Article_Print.asp? EnCompHonorBig.asp?id=随便加个数字 showproduct....

    1000Delta#A11N0tes#SQL注入工具sqlmap1

    SQLMAP 简介,一个自动化的SQL注入工具,主要功能是扫描、发现并利用给定URL的SQL注入漏洞,目前支持的数据库有:- Microsoft SQL Ser

Global site tag (gtag.js) - Google Analytics