6.4 Web安全漏洞学习平台:WebGoat的使用

article/2025/11/5 5:09:53

目录

一、预备知识

1、WebGoat介绍

2、JDK

二、实验环境

三、实验步骤

1、JDK安装

2、JDK环境配置

3、WebGoat下载

6、以字符串型SQL注入实验为例进行简单的讲解


一、预备知识

1、WebGoat介绍

        WebGoat是一个用来演示Web浏览器中典型安全漏洞的应用程序,其目的是在应用程序安全审查的上下文中系统、完整地介绍如何测试和利用这些安全漏洞。

        WebGoat用Java语言编写,可以安装到所有带有Java虚拟机环境的平台上。此外,WebGoat还分别为Linux、OS X Tiger和Windows系统提供了相应的安装程序。无论运行在什么操作系统平台上,WegGoat都会自动跟踪用户的操作过程,记录在平台上的学习进展。WegGoat 当前提供的训练课程有30多个,其中包括跨站点脚本攻击(XSS)、访问控制、线程安全、操作隐藏字段、操纵参数、弱会话Cookie、SQL盲注、数字型SQL注人、字符串型SQL注人、Web服务、OpenAuthen-tication、危险的HTML注释等内容。

        虽然WebGoat中对于如何利用漏洞给出了大量的解释,但还是比较有限的。不过,对于初学者来说,WegGoat是一个功能丰富、便于使用的学习平台。它的每个教程都明确告诉读者存在什么漏洞,但是如何去攻破这些漏洞,还需要读者继续查阅相关资料,通过进一步学习来了解该漏洞的原理、特征和攻击方法,甚至需要读者搜集相关的辅助攻击工具,完成各种攻击过程。

2、JDK

        JDK(Java Development Toolkit)是JAVA开发工具包,包括Java的运行环境(JRE)、java工具、java基础类库。一般安装完JDK后会有以下几个文件:

  • bin,包含java最重要的编译器;
  • lib,包含java的类库;
  • include,JAVA与JVM交互用的头文件。(JVM:执行JAVA程序的Java虚拟机。)

        也就是说,要想运行WebGoat,必须先安装JDK!!!

二、实验环境

实验清单
序号软硬件要求规格
1数量1台
2操作系统版本windows server 2008 R2
3软件版本JDK安装包、WebGoat安装包

三、实验步骤

1、JDK安装

        JDK18的下载地址:Java Downloads | Oracle

         解压下载的JDK18之后,双击“jdk-18-windows-x64_bin”文件,进行安装:

         按照流程,直至安装完成。需要注意JDK18的安装位置!如果像我一样无脑安装,JDK18大概率安装在“C:\Program Files\Java\jdk-18.0.2”这个路径下。

2、JDK环境配置

 

         在环境变量中,需要新建两个变量(JAVA_HOME和JAVA_CLASS),分别是:

JAVA_HOME  C:\Program Files\Java\jdk-18.0.2 (之前的安装目录)
JAVA_CLASS  C:\Program Files\Java\jdk-18.0.2

 

         找打PATH,在PATH后面加上:

;%JAVA_CLASS%\bin;%JAVA_HOME%\bin

         打开“cmd”,输入“java -version”:

        可以看到我们已经安装了JDK18.0.2。至此,JDK安装完毕。 

3、WebGoat下载

        WebGoat的下载地址:Releases · WebGoat/WebGoat · GitHub(建议用迅雷下载,不然龟速!

        本实验下载“webgoat-server-8.2.2.jar”和“webwolf-8.2.2.jar”即可。

         下载完后,我是将这两个文件放在“C:\tools\webgoat”目录下。

        打开CMD,跳转到C:\tools\webgoat,使用命令:

cd C:\tools\webgoat

         然后运行webgoat,windows下用命令:

java -jar webgoat-server-8.2.2.jar

         如果像上图一样,则说明安装成功。

        注:在webgoat的安装包中,貌似已经集成了类似web服务器的功能,也就是说,不用像建网站一样,安装phpstudy、XAMPP等软件,可以直接在浏览者中访问WebGoat。

4、在浏览器中输入“127.0.0.1:8080/WebGoat/login”,注册并登录。

 

 5、以SQL注入为例,WebGoat会先让你熟悉常用的各种SQL语句,然后告诉你SQL注入的危害和防护方法,最后会给你一些各种SQL注入的例子练习,个人觉得该平台设计得挺好的。另外,纯英文网页,有点考验英文功底。

 6、以字符串型SQL注入实验为例进行简单的讲解

        选择“9”这个选项,单击进入如下页面。

         先点击“Get Account info”,看看页面如何回显。

         可以看到数据库执行的SQL语句是:

SELECT * FROM use_data WHERE first_name='john' and lastname='Smith or 1=1'

        上述SQL语句的意思是:从user_data表中,寻找first_name='john',且last_name='Smith or 1=1'的全部数据,也就是在数据表中,满足条件的一行数据。其中,last_name的内容是由我们控制的。

        看到能输入or 1=1,是不是应该有一种使"where"后面出现“xxx or 1=1”的冲动,因为“where xxx or 1=1”这句话,不就跟没得条件一样吗,1=1是恒成立,“xxx or 1=1”恒成立。

        那么我们可以这样输入(刚刚不小心重置了):

         如此填写之后,要执行的SQL语句,就会变成这样:

SELECT * FROM use_data WHERE first_name='john' and lastname='Smith' or '1'='1'

        框框中的内容都变成了字符串,那么SQL语句就变成了:

        SELECT * FROM use_data WHERE first_name='XXX' or '1'='1'这种形式,也就晒where后面相当于没条件了。提交数据,可以看到:

         成功通关。

        注:本实验仅演示字符型SQL注入,其余实验待完成。


http://chatgpt.dhexx.cn/article/7VL2wKck.shtml

相关文章

【详解】webgoat Web渗透测试平台Injection单元 攻略

目录 一、什么是webgoat? 二、Injection 2.1 SQL Injection (intro) 2.1.1 查询Bob的岗位 2.1.2 更改Tobi的部门 2.1.3 增加一个phone部门 2.1.4 授权 2.1.5 Try It! String SQL injection 2.1.6 查询所有员工的信息 2.1.7 修改员工的薪水 2.1.8 删库跑路 …

【2022】WebGoat的安装与测试

WebGoat的安装 Welcome Here! 谈一谈有关WebGoat的搭建 1.WebGoat环境搭建 (1)下载安装webscarab 首先我们先查看自己是否有可以运行.jar文件的jdk(jdk1.8),可在cmd.exe中输入java -version,接着去sourceforge下载…

WebGoat 8.1 靶场 刷题通关教程全攻略 - (A1) Injection

WebGoat 8.1 靶场 刷题通关教程全攻略 - A1 Injection (A1) InjectionSQL Injection (intro)2. It is your turn!3. It is your turn!4. Data Definition Language (DDL)5. Data Control Language (DCL)9. Try It! String SQL injection10. Try It! Numeric SQL injection11. I…

eclipse配置Android环境

eclipse 配置Android 环境 1. 配置jdk环境变量(若已配置默认忽略)2.下载安装Android SDK3.安装ADT插件4.配置AVD驱动5.下面创建一个新项目,测试一下是否安装成功6.导入一个已有的安卓项目7. 问题解决 1. 配置jdk环境变量(若已配置…

eclipse配置tomcat详解(图文版)

eclipse配置tomcat详解(图文版) 目的:学会如何使用eclipse工具开发Servlet首先得配置tomcat。 eclipse不仅会自动编译Servlet,还会自动创建web.xml文件信息,完成Servlet虚拟路径的映射 文章目录 eclipse配置tomcat详解…

Eclipse配置SVN教程

下载svn插件 链接:https://pan.baidu.com/s/1BeGikwxhv21abBA5Hhy8zA 提取码:6666 D盘创建SVN文件夹 打开svn插件 复制如图两个文件夹到svn目录下 创建svn.link并配置 位置在你安装Eclipse/eclipse/dropins 创建 svk.link 删除 org.eclipse.update文件…

Eclipse配置Tomcat图文教程(2023最新版)

一、打开Eclipse,点击windows(窗口),点击preferences(首选项)。 二、找到Server(服务器),点击Runtime Environments(运行时环境),点击…

eclipse配置tomcat10

eclipse配置tomcat tomcat资源下载:https://editor.csdn.net/md/?articleId117913024 如果打开没有servers请查看这篇文章https://blog.csdn.net/Leesnwen/article/details/117913615 如果如上图一样没有apache tomcat,参考以下步骤。否则跳至restart…

Eclipse 介绍-配置-使用

目录 概述 安装 workspace(工作空间) 工具设置 编码方式 字体大小 文档注释 设置JDK 使用 创建工程 创建包 创建类 编写代码 运行 使用eclipse生成javadoc文档 概述 Eclipse是Java开发中非常流行的一款集成开发工具。以后在开发中&#…

Eclipse的安装和配置

Eclipse的安装和配置 一.Eclipse的安装 首先我们需要进行下载Eclipse软件 下载地址:https://www.eclipse.org/downloads/ 页面如下,这里需要注意,我们不要点击那个黄底白字的Download 64 bit,我们要点击它下面的Downl…

Eclipse配置环境变量

1、单击“计算机->属性->高级系统设置”--->环境变量 2、系统变量(S)--->单击“Path”--->编辑--->新建--->填上“D:\jdk\bin;D:\jdk\jre\bin” ps:“E:\azlj\eclipse\jdk\bin;E:\azlj\eclipse\jdk\jre\bin”分别为jdk的bin目录的路…

Eclipse安装与配置

一、官网下载eclipse-jee-mars-R-win32-x86_64.zip,这个是不需要安装的,直接解压就可以用 二、eclipse常用设置 2.1、修改字体 Window—Preferences—General—Appearance—Color and Fonts—Basic—Text Font 2.2、显示代码行号 Window—Preferences…

Eclipse的配置使用

IDE开发工具之一:eclipse的使用 文章目录 IDE开发工具之一:eclipse的使用教学目标1、概述2、工作空间workspace1、eclipse的管理层次2、指定工作空间3、如何切换工作空间4、设置工作空间字符编码等5、缩进4个空格 3、界面介绍基本界面介绍如何打开各种小…

Eclipse配置使用Git

本文记录了在使用Eclipse进行开发时,和Git相关的各种配置和使用说明。 文章目录如下: 目录 1 Git插件安装和配置 1.1 安装Git插件 1.2 Git配置 2 Eclipse使用Git 2.1 项目初始化到本地库 2.2 设置忽略提交到文件 2.3 设置本地库Git签名 2.4 Ec…

Eclipse配置Maven详细教程

一.使用eclipse自带的maven插件 首先,现在下载Eclipse Mars之后的版本,基本上都自带了maven插件,无需自己再安装maven. 有几个注意点: 1.默认的本地仓库的目录是在C:\Users\viruser.v-desktop\.m2\repository\ 如果使用系统默认的maven插…

Eclipse配置Maven的详细完整步骤

Eclipse配置Maven的详细步骤 目录: Eclipse配置Maven的详细步骤 一、下载Maven二、配置maven环境变量三、配置Eclipse中的maven 这样maven就配置好了。 一、下载Maven 1、首先第一步去官网下载一个Maven。下载网址:Maven官网 2、将下载的文件解压…

超详细Eclipse配置JDK1.8

附Eclipse安装教程 超详细Eclipse安装教程 附JDK1.8安装配置教程 超详细JDK1.8安装与配置 ①打开Eclipse–>点击Window–>点击Preferences ②找到Java–>找到Installed JREs–>点击Add… ③选中Standard VM–>之后点击Next ④点击Directory找到自己安装的…

eclipse如何配置Maven

Maven 翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写:POM)概念,Maven利用一个中央信息片断能管理一个项目的构建、报告和文档等步骤。 Maven 是一个项目管理工具…

eclipse如何配置tomcat?

首先在官网下载对应tomcat版本,下载好后放在自己能找到的地方 tomcat官网:Apache Tomcat - Welcome! 我也准备好了,大家可以按需下载: 链接:https://pan.baidu.com/s/1QVaB-4IPrSgfNl3v8JGT-w?pwdmxry 提取码&…

Eclipse配置jdk

1.打开eclipse,找到上面菜单选项“Window”,单击“Preferences” 2.找到左边栏的java下面的installed JREs 3.我的是已经有一个了,没有的话点击上图 右边的add进行添加 4.点击add后以默认选好了standard VM,直接点击NEXT 5.添加安装目录&am…