SQLI和sqli-labs介绍

SQLI,sql injection,我们称之为sql注入。何为sql,英文:Structured Query Language,叫做结构化查询语言。常见的结构化数据库有MySQL,MS SQL ,Oracle以及Postgresql。Sql语言就是我们在管理数据库时用到的一种。在我们的应用系统使用sql语句进行管理应用数据库时,往往采用拼接的方式形成一条完整的数据库语言,而危险的是,在拼接sql语句的时候,我们可以改变sql语句。从而让数据执行我们想要执行的语句,这就是我们常说的sql注入。

原理性的东西我们这里就不进行详细的讲解了,从sqli-labs以下的每一个关卡中,你能真正体会到什么是sql注入。Ps:有些朋友对工具比较熟悉,例如sqlmap,可以从sqlmap的日志中分析每个关卡的原理。但是我个人建议先去了解原理,再去使用工具。这样在使用工具的时候你也能深刻的理解工具起到了什么样的作用。更近一步你应该想着如果让你自己写代码实现攻击,你应该如何写。

Ps:因为本项工作我是在多个平台和多个浏览器下进行测试的,所以截图等可能会有不同的环境,但是都能说明原理。这里就不要吹毛求疵了。图片刚开始有很多都是chrome下截取的,后来发现不是很好看,所以在图片上面的url全部粘贴。尽量用firefox,有hackbar。

Sqli-labs下载

Sqli-labs是一个印度程序员写的,用来学习sql注入的一个游戏教程。博客地址为:

http://dummy2dummies.blogspot.hk/,博客当中有一些示例,国内很多博客内容都是从该作者的博客翻译过来的。同时该作者也发了一套相关的视频,在youtube上可以查看。ps:印度人讲英语口音太重了。。。。凑合着听懂点。

此处考虑到有些朋友不会FQ,遂分享到国内地址。

http://pan.baidu.com/s/1bo2L1JT

Ps:不想看视频的可以直接忽略视频,口音实在脑门疼,此处本来想自己录视频的,但现在来看,时间比较有限

Sqli-labs项目地址---Github获取:https://github.com/Audi-1/sqli-labs

(考虑到安全性问题,就不搬运这个了)

Sqli-labs安装

需要安装以下环境

  1. apache+mysql+php
  2. Tomcat+mysql+java(部分关卡需要)

    如果可以的话,推荐在windows和linux下分别安装:

    Windows下可以用wamp、phpstudy、apmserv等直接安装,linux下可在网上搜索教程进行安装。例如ubuntu下,新手基本靠软件中心和apt-get 进行安装。这里就不赘述环境的安装了。

    我的测试环境是windows下用wamp直接搭建的,linux平台用ubuntu14.04,apache+mysql+php

     

    同时,在后面的几个关卡中,需要用到tomcat+java+mysql的服务器,此处因已经安装apache+mysql+php,所以我们需要安装tomcat+jre+java连接mysql的jar,具体过程不详细讲解。

    Sqli-labs安装

    将之前下载的源码解压到web目录下,linux的apache为 /var/www/html下,windows下的wamp解压在www目录下。

    修改sql-connections/db-creds.inc文件当中的mysql账号密码

    将user和pass修改你的mysql 的账号和密码,访问127.0.0.1的页面,点击

    进行安装数据库的创建,至此,安装结束。我们就可以开始游戏了。

Sqli-labs介绍、下载、安装的更多相关文章

  1. MySQL介绍,下载,安装,配置

    MySQL用了很多年了,今天写个总结. 一.介绍 MySQL是开源软件,后来归Oracle所有.开源便于软件的完善改进.但开源不等于滥用,也不等于完全免费.MySQL有商业版,商业用途是付费的.也有免 ...

  2. Git----01介绍&下载&安装&创建本地仓库

    一.Git介绍 1.0.Git是分布式版本控制工具 1.1.历史 Linux 内核开源项目有着为数众广的参与者.绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2 ...

  3. Lomboz插件的介绍 下载 安装 问题

    http://www.blogjava.net/javaandcc/articles/251334.html Lomboz是Eclipse的一个主要的开源插件(open-source plug-in) ...

  4. Sqli labs系列-less-1 详细篇

    要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...

  5. {MySQL数据库初识}一 数据库概述 二 MySQL介绍 三 MySQL的下载安装、简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 初识sql语句

    MySQL数据库初识 MySQL数据库 本节目录 一 数据库概述 二 MySQL介绍 三 MySQL的下载安装.简单应用及目录介绍 四 root用户密码设置及忘记密码的解决方案 五 修改字符集编码 六 ...

  6. mongodb可视化工具 studio3t robo3T 下载安装使用介绍

    mongodb可视化工具 studio3t  robo3T 下载安装使用介绍 下载地址: https://studio3t.com/download robo3T

  7. 范仁义web前端介绍课程---5、webstorm的下载安装

    范仁义web前端介绍课程---5.webstorm的下载安装 一.总结 一句话总结: webstorm破解版搜索:webstorm破解 site:52pojie.cn 编辑器随便选用,功能都差不多,哪 ...

  8. django的下载安装,目录结构的介绍,简单的django应用

    1.django的下载安装 pip3 install django==1.11.9 2.django的创建 1.在windows的cmd窗口下 1.1创建django项目 django-admin s ...

  9. Dubbo详细介绍与安装使用过程

    今天看到一篇不错的dubbo介绍教程,原文链接:http://blog.csdn.net/xlgen157387/article/details/51865289 1 Dubbo介绍 1.1 dubb ...

  10. Bash on Windows 抢鲜测试 -- 介绍及安装

    前言 微软在上周的Windows BUILD大会上宣布,WIN10将引入原生Bash,并将很快在技术预览版中推出. 如此一来,windows的命令行工具就不再只有cmd和powershell了,我们可 ...

随机推荐

  1. Gradle加载本地jar包

    有时,我们需要的jar包不一定能在远程仓库中找到,这时我们需要加载本地的jar包. 加载单独的jar包 在项目底下添加libs目录,将jar包仍进libs目录 build.gradle配置如下: de ...

  2. 【NOIP】提高组2015 斗地主

    [题意]按照斗地主出牌规则,给定手牌求出完的最少步数. [算法]模拟+搜索 [题解] 可以发现除了顺子,其它的出牌规则都和点数无关,只与同点数的牌数有关. 所以可以先暴力枚举要出哪些顺子,然后每一个出 ...

  3. 解决vue代码缩进报错问题 关闭ESlint

    前言 使用vue-cli来构建单页SPA应用,提示代码缩进报错 原因分析 通过查看package.json文件我们可以发现,在文件中默认安装了eslint-loader模块,eslint-loader ...

  4. margin 居中

    左右auto加个宽度.margin-left: auto; margin-right: auto; width:640px;

  5. 第一章:获取服务器服务banner

    #!c:\\perl\\bin\\perl.exe #读取服务器的首行(banner) use IO::Socket; my $service = '121.201.67.177:ssh'; my $ ...

  6. 【Python学习笔记】Coursera课程《Using Python to Access Web Data 》 密歇根大学 Charles Severance——Week2 Regular Expressions课堂笔记

    Coursera课程<Using Python to Access Web Data > 密歇根大学 Charles Severance Week2 Regular Expressions ...

  7. java基础 运算符

    算数运算符 加号:在操作数值.字符.字符串时其结果是不同的,当两个字符相加得到的是ASCII码表值, 当两个字符串相加时表示将两个字符串连接在一起,从而组成新的字符串. 除号:整数在使用除号操作时,得 ...

  8. linux编程之信号量编程

    信号量当我们在多用户系统,多进程系统,或是两者混合的系统中使用线程操作编写程序时,我们经常会发现我们有段临界代码,在此处我们需要保证一个进程(或是一个线程的执行)需要排他的访问一个资源.信号量有一个复 ...

  9. monkey测试===Android测试工具Monkey用法简介(转载)

    Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...

  10. mongodb-linux-x86_64

    卷 DataDisk 的文件夹 PATH 列表卷序列号为 4A8E-D95CD:.│  1.txt│  GNU-AGPL-3.0│  MPL-2│  README│  THIRD-PARTY-NOTI ...