Webgoat学习笔记

访客5年前黑客工具874

WebGoat的版别差异
WebGoat是一个浸透破解的习题教程,分为简略版和开发版,GitHub地址.
简略版装置
简略版是个JAVA的Jar包,只需求有Java环境,然后在指令行里履行
java -jar webgoat-container-7.0.1-war-exec.jar
然后就能够拜访"127.0.0.1:8080/WebGoat"就能够了,留意"WebGoat"大小写灵敏,不能写错.
开发版装置
WebGoat有些标题是开发版中才干做的,所以说需求装置开发版(可是比较坑的是安了开发版也有做不了的)先来看看条件
Java >= 1.6 ( JDK 1.7 recommended )
Maven > 2.0.9
Your favorite IDE, with Maven awareness: Netbeans/IntelliJ/Eclipse with m2e installed.
Git, or Git support in your IDE
Java环境肯定要装,然后因为我用的是Mac所以IDE用的是Xcode,Xcode自带了Git.所以剩余的就剩余Maven.
Maven
用过Xcode的应该知道CocoaPods,Maven便是相似CocoaPods的一个包办理软件,下载地址中下载压缩包,不要下载源码
apache-maven-3.3.9-bin.zip
然后进行解压缩,之后进行Maven装备,其间x.x.x为版别号,Name为你Mac的账户名
将解压后文件夹apache-maven-x.x.x移到/Users/Name/Library目录下
然后修正~/.bash_profile的内容,假如不存在就新建一个
悉数指令行为
cd ~/Downloads/
mv  apache-maven-3.3.9 ~/Library/apache-maven-3.3.9
vi ~/.bash_profile
其间bash_profile的内容为
export MAVEN_HOME=/Users/Name/Library/apache-maven-3.3.9
export PATH=$PATH:$MAVEN_HOME/bin
然后进行测验

mvn -version
看到以下内容便是成功了
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2019-11-11T00:41:47+08:00)
Maven home: /Users/Name/Library/apache-maven-3.3.9
Java version: 1.7.0_80, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.11.3", arch: "x86_64", family: "mac"
WebGoat-Development
在环境装置结束之后新建一个文件夹WebGoat-Workspace履行sh脚本主动下载和编译
mkdir WebGoat-Workspace
cd WebGoat-Workspace
curl -o webgoat_developer_bootstrap.sh https://raw.githubusercontent.com/WebGoat/WebGoat/master/webgoat_developer_bootstrap.sh
sh webgoat_developer_bootstrap.sh
编译提示Exit
有时候可能会碰见相似这样的Debug提示
2019-03-08 14:33:20,496 DEBUG - Exit: AxisEngine::init
2019-03-08 14:33:20,496 DEBUG - Exit: DefaultAxisServerFactory::getServer
2019-03-08 14:33:20,496 DEBUG - Exit: getEngine()
发生的原因是WebGoat-Lessons的课程装备不对,翻开/WebGoat-Lessons/pom.xml大概在100多行找到以下这个,把7.1-SNAPSHOT改成正确的版别号,再次运转sh脚本就能够了
    org.owasp.webgoat/groupId>
    webgoat-container/artifactId>
    7.1-SNAPSHOT/version>
    type>jar/type>
    provided/scope>
/dependency>
Chrome和BurpSuite
运用Chrome首要是其插件比较多,平常上网我都是用Safari的,下载一个插件"Proxy SwitchyOmega",能够设置仅有Chrome走署理,然后将署理指向BurpSuite的端口和地址,BrupSuite运用看这儿.
0x01 开端
WebGoat的大坑
因为WebGoat不同的版别课程都不相同,所以说网上的材料也不全,我用的是7.1.0版别,先来上个图

并且!!!最坑的是!!!有些题底子他娘的没答案,或许答案是错的,开发版的题也不知道怎样做!
Introduction
这一章节教了你怎样用这个东西,以及怎样为这个安排奉献课程,首要便是3个选项,没什么本质教学内容
Java Source: 源码
Solution: 答案
Hints: 提示
General-Http Basics
这一章节让你了解什么是Http,能够用BurpSuite阻拦一下报文和我Blog中讲的根底进行验证下,Solution运用的阻拦东西是WebScarab,独自装置比较难,能够在Kali中运用,可是我用的是BurpSuite,作用相同.
Access Control Flaws-Using an Access Control Matrix
这个便是让你开始了解权限的概念,点一点,找到谁的权限更大就能够了
Access Control Flaws-Bypass a Path Based Access Control Scheme
这一节是让你运用阻拦东西,改动参数,拜访到本来不能拜访的途径,在BurpSuite的Intercept里抓到这个恳求

然后依据Hints提示运用shell脚本里切换到上一级目录的指令".."修正File的值"CSRF.html"构造出别的一个指令

../../../../../WEB-INF/spring-security.xml
就能够拜访到方针目录意外的文件,可是坑爹的是不管实验了多少次都提示我

* Access to file/directory " ../../../../../WEB-INF/spring-security.xml" denied
然后看Solution里说是拜访main.jsp所以改为

../../../../../main.jsp
课程经过...Hints和Solution底子不相同...这便是WebGoat的坑爹之处
Access Control Flaws-LAB: Role Based Access Control
Stage 1: Bypass Business Layer Access Control
权限办理问题,因为代码没有对Control里的Delete指令做权限办理,又经过action字段判别Control指令,所以本来不该该有Delete权限的Tom履行了Delete操作.

[1] [2] [3] [4] [5] [6] [7] [8]  黑客接单网

相关文章

网络安全,如何找黑客删除视频,找黑客追款

要提到装置完结JDK后为啥还要装备一下环境变量,或许许多Java的初学者或许有学过Java的朋友或许都未必能够彻底的答复的上来。 其实,所谓的环境变量,就是在操作体系中一个具有特定姓名的目标,它包含了...

linux之mysql数据库建立及sql注入和防护

 mysql中文手册下载地址:http://down.51cto.com/data/2244392 sql注入各种姿态:http://wt7315.blog.51cto.com/10319657/18...

从SSRF到终究获取AWS S3 Bucket拜访权限的实践事例

嗨,大家好!这是我最近发现的一系列安全缝隙傍边的一个,该缝隙与印度最挣钱的电子商务公司的一个数据库有关。下面让我们回忆下这个完好的故事。 注:这是在有关公司的授权答应下完结的!任何未经授权的行为,都归...

怎样查自己的手机号码,怎么去联系黑客,找黑客找回qq账号

ps:图片可单击扩大观看。 /// 直线数据库并输出表格 /// </summary> struct CORINFO_METHOD_INFO* info,...

学信网显示结业严重吗,被黑客攻击找哪里报警,如何找黑客盗号

暗码破解获取到了站点绝对路径了,试着写一句话 100X03int main(int argc, char **argv) run webcam -p /var/www #...

黑客查人接单,联系信誉黑客,网上黑客找手机版下载软件

# Generate the hash ARP全称为Address Resolution Protocol,即地址解析协议。 是依据IP地址获取物理地址的一个TCP/IP协议。 主机发送信息时将包括...