近期想学习sql注入,但是一来网络上的资料参差不齐,难以系统的学习;二来随着程序员安全意识的提高,这种完全可以避免的注入漏洞越来越少见了,所以难以找一个合适的网站练手,于是乎,sqli-labs这种实验平台成为了学习的一个绝佳途径。

  1. 首先登陆https://github.com/Audi-1/sqli-labs
  2. 如果安装了git,可以直接在终端下使用git clone https://github.com/Audi-1/sqli-labs.git sqli-labs命令来生成一个名为sqli-labs的文件夹,远程仓库中的内容都在这个文件夹里。当然,也可以在网站里下载它的压缩包。
  3. sqli-labs需要有apache,mysql和php,mac自带了apache和php,只需下载mysql即可,但我是用本机自带的环境并没有成功安装sqli-labs,甚为困惑,所以我使用了XAMPP的集成环境。
  4. 先在网上下载XAMPP,安装成功后软件如图所示

  5. 点击Manage Servers,点击start all将服务全部打开

(如果本机已经安装了mysql 而Mysql Database未能打开,则应该先在系统偏好设置里将mysql停止。)

  1. 打开浏览器输入http://localhost ,若显示如下页面则表明正确

  2. XAMPP的mysql数据库密码默认为空,但这会导致错误,所以需要更改XAMPP的数据库密码,打开浏览器输入http://localhost/phpmyadmin/ ,

进入账户点击localhost行的修改权限,之后点击修改密码,输入两遍密码后提交即可。

  1. 将sqli-labs文件夹移入XAMPP/htdocs目录下
  2. 进入sqli-labs/sql-connections 打开db-creds.inc,修改$dbpass为你xampp数据库的密码

(我设置的密码为root)

  1. 如此大功告成了么?打开浏览器输入http://localhost/sqli-labs

点击Setup/reset Database for labs,如果一切正常应该是这样的:

但你有可能是这样的:

对于这种情况,再经过我大量的百度和google之后得知,这是由于php5之后移除了mysql扩展导致的,进入sqli-labs/sql-connections

打开任意文件查看代码即可发现所使用的皆为如mysql_xxx()格式的函数,

  1. 针对这种问题

    我们需要使用mysqli扩展,将此文件夹下的所有文件中的mysql_替换为mysqli_,还需要把mysql_error()改为mysqli_error($con),将mysql_query($sql)改为mysqli_query($con,$sql),在sql-connect-xxx的三个文件中,将mysqli_select_db函数中的参数调换位置。
  2. 如此一来,便大功告成了!

如何在mac上搭建sqli-labs的更多相关文章

  1. mac 教你如何在Mac上搭建自己的服务器——Nginx

    WHAT 本篇主要是基于Nginx在Mac上搭建自己的服务器. 我相信很多朋友肯定是第一次听到Nginx,关于它具有怎样的传奇,这儿肯定说不完也说不透. 有兴趣的朋友可以自行google或者baidu ...

  2. 如何在Mac上搭建自己的服务器——Nginx

    1.安装Homebrew 打开终端,输入: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ ...

  3. 《从0到1学习Flink》—— Mac 上搭建 Flink 1.6.0 环境并构建运行简单程序入门

    准备工作 1.安装查看 Java 的版本号,推荐使用 Java 8. 安装 Flink 2.在 Mac OS X 上安装 Flink 是非常方便的.推荐通过 homebrew 来安装. brew in ...

  4. 在MAC上搭建cordova3.4.0的IOS和android开发环境

    Hello,大家好,今天给大家说说在mac上搭建cordova3.4.0的iOS和Android开发环境,首先下载cordova,地址:https://cordova.apache.org/#down ...

  5. 1、在MAC上搭建React Native开发环境

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  6. Mac上搭建直播服务器Nginx+rtmp

    简介 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 步骤安装 1.安装Homebrow Homebrew简 ...

  7. 如何在Windows上搭建Android开发环境

    Android开发越来越火,许多小伙伴们纷纷学习Android开发,学习Android开发首要任务是搭建Android开发环境,由于大家 主要实在Windows 上开发Android,下面就详细给大家 ...

  8. 如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享

    如何在RHEL7上搭建Samba服务实现Windows与Linux之间的文件共享 实现环境:VMware workstations.RHEL7.0 第一步:配置网卡IP及yum软件仓库 命令:vim ...

  9. iOS学习——如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒

    如题,本文主要研究如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒.做过安卓开发的小伙伴肯定很方便就能像打开资源管理器一样查看我们写到手机本地或应用中的各种资源,但是在iOS开发 ...

随机推荐

  1. canvas动画:自由落体运动

    经过前面的文章,我们已经能够在canvas画布上画出各种炫酷的图形和画面,但是这些画面都是禁止的,怎么样才能让他们动起来呢? 如何绘制基本图形可以参考:canvas基本图形绘制 如何对基本图形移动旋转 ...

  2. ACM1007

    题目:DNA序列排序 DNA序列由一序列的大写英文字母表示,如ABCDEF.紊乱程度表示组成DNA序列的字母按照由小到大的顺序进行排列程度,如ABC的紊乱程度比ACB小,因为它字母都是由小到大排序的. ...

  3. 下载安装eclipse

    其实在配置好jdk之后,只要下载eclipse压缩包下载完解压就行了.很多人在eclipse官网上下载的安装包版本的,下载完了之后又不知道怎么安装.下面我给大家介绍以下如何下载eclipse的Oxyg ...

  4. select选中获取索引三种写法

    $('#someId').prop('selectedIndex'); $('option:selected', '#someId').index(); $('#someId option').ind ...

  5. Linux压缩、解压文件

    对于.tar格式的文件压缩和解压比较常用,今天对于.zip格式的文件用同样的命令无效.真是被自己蠢到了,忽略了后缀格式... 1.对于tar格式文件 压缩: tar –zcvf 压缩完后的名称  被压 ...

  6. GridView 翻页 索引超出范围

    事件回顾 今天GridView翻页时,又遇到错误:索引超出范围.必须为非负值并小于集合大小. 这是当时的PageIndexChanging和RowCommand两个事件的后台代码 protected ...

  7. Cannot find a valid baseurl for repo: base

    Linux下执行yum命令的时候一直报错:Cannot find a valid baseurl for repo: base 网上找了好多办法都没有解决... 我之前也遇到过一次, vi /etc/ ...

  8. 深入解析条件变量(condition variables)

    深入解析条件变量 什么是条件变量(condition variables) 引用APUE中的一句话: Condition variables are another synchronization m ...

  9. 使用git工具快速push项目到github(精简)

    Dear Weber ,相信有很多刚开始接触前端的程序猿,在刚接触到git工具传项目到github上时会遇到一些问题,那么下面的话呢,我就整理一下一个大致的思路提供给大家参考: 工具:git (自行下 ...

  10. VM及centOS系统安装

    虚拟机安装linux及配置