WebGoat系列实验Access Control Flaws

Using an Access Control Matrix

  1. 在基于角色的访问控制策略中,每个角色都代表了一个访问权限的集合。一个用户可以分配一到多个角色。基于角色的访问控制策略通常由两部分组成:角色许可管理与角色分配。基于角色的访问控制策略受到破坏就可能允许用户进行访问本不属于他的角色,或者以某种方式提升未经授权角色的特权。
  2. 依次选择Moe、Larry、Curly、Shemp尝试访问Account Manager资源,发现Larry具有访问权限。

Bypass a Path Based Access Control Scheme

  1. “guest”用户可以访问lessonPlans/en目录下所有文件。尝试打破访问控制策略并获取其他目录下的资源。本实验需要获取WEB-INF/spring-security.xml文件。
  2. 选择BackDoors.html文件,点击View File按钮,显示消息如下,表明可以正常访问当前目录下的文件。
  3. 设置代理端口,并使用Burp开启拦截http请求报文。再次选择BackDoors.html文件,点击View File按钮,此时可以获取到GET请求报文。
  4. 经过尝试,把BackDoors.html修改为../../../../../WEB-INF/spring-security.xml之后可以成功访问。

LAB: Role Based Access Control

Stage 1: Bypass Presentational Layer Access Control.

  1. 作为雇员Tom,突破弱访问控制并在职员列表中使用删除命令,验证Tom的简介可以被删除。
  2. 选择hr Jerry,登录后发现可以使用DeleteProfile命令。使用Burp进行拦截,点击DeleteProfile按钮,截获GET请求报文。分析action字段,发现进行删除操作的参数是DeleteProfile,之后就可以将这个请求报文丢弃掉了2333。
  3. 选择用户Tom进行登录,登录后发现只能进行ViewProfile操作。使用Burp进行拦截,在拦截的GET请求报文中将action字段的ViewProfile参数修改为DeleteProfile,发送报文,Tom的个人简介就被删除了。

Stage 2: Add Business Layer Access Control

THIS LESSON ONLY WORKS WITH THE DEVELOPER VERSION OF WEBGOAT

Stage 3: Breaking Data Layer Access Control

  1. 作为雇员Tom,突破弱访问控制查看其它雇员的简介。
  2. 选择用户Tom进行登录,点击ViewProfile按钮向服务器发送查看Tom自己简介的请求。使用Burp进行拦截,分析拦截的GET请求报文,发现employee_id字段的参数为105。
  3. 随便修改employee_id字段的参数,比如107,发送GET请求报文后发现页面返回了雇员David的个人简介。

Stage 4: Add Data Layer Access Control

THIS LESSON ONLY WORKS WITH THE DEVELOPER VERSION OF WEBGOAT

WebGoat系列实验Access Control Flaws的更多相关文章

  1. WebGoat系列实验Injection Flaws

    WebGoat系列实验Injection Flaws Numeric SQL Injection 下列表单允许用户查看天气信息,尝试注入SQL语句显示所有天气信息. 选择一个位置的天气,如Columb ...

  2. WebGoat系列实验Authentication Flaws

    WebGoat系列实验Authentication Flaws Forgot Password Web应用经常给用户提供取回密码的功能,但是许多应用的实现策略实现的很差,用于验证用户的信息非常简单. ...

  3. WebGoat系列实验Cross-Site Scripting (XSS)

    WebGoat系列实验Cross-Site Scripting (XSS) PhishingTitle 本次实验是在一个已知存在XSS漏洞的页面进行钓鱼攻击.通过使用XSS与HTML注入,在页面中注入 ...

  4. WebGoat系列实验AJAX Security

    WebGoat系列实验AJAX Security DOM Injiction 实验对象是一个接受激活密钥后允许你访问的系统,实验目标是尝试将激活按钮变得可以点击. 直接修改页面代码激活按钮,Chrom ...

  5. WebGoat系列实验Denial of Service & Insecure Communication

    WebGoat系列实验Denial of Service & Insecure Communication ZipBomb 服务器仅接收ZIP文件,将上传的文件解压,进行操作之后删除.已知服务 ...

  6. WebGoat系列实验Buffer Overflows & Code Quality & Concurrency

    WebGoat系列实验Buffer Overflows & Code Quality & Concurrency Off-by-One Overflows 实验需要访问OWASP Ho ...

  7. Windows Azure Virtual Network (10) 使用Azure Access Control List(ACL)设置客户端访问权限

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的China Azure. 我们在创建完Windows Azure Virtual Machi ...

  8. Azure ARM (16) 基于角色的访问控制 (Role Based Access Control, RBAC) - 使用默认的Role

    <Windows Azure Platform 系列文章目录> 今天上午刚刚和客户沟通过,趁热打铁写一篇Blog. 熟悉Microsoft Azure平台的读者都知道,在老的Classic ...

  9. ccna 闫辉单臂路由 和 acl access control list

    ccna 闫辉单臂路由 和  acl   access control list 一单臂路由     当前园区网设计很少用到       成本低  小型的.局域网可用         二ACL acc ...

随机推荐

  1. kafka集群下线broker节点实践方法(broker topic 迁移)

    [root@es03 ~]# cd /usr/hdp//kafka/bin [root@es03 kafka]# cd bi -bash: cd: bi: No such file or direct ...

  2. LeetCode Range Addition II

    原题链接在这里:https://leetcode.com/problems/range-addition-ii/description/ 题目: Given an m * n matrix M ini ...

  3. Java程序员如何在竞争中保持优势

    Java程序员入门容易,进阶很难,想要在竞争中保持优势,脚踏实地的同时也要仰望星空规划自己的未来.时间在流逝,年龄在增加,你期望的薪水也在不断增多,你总得让自己能力持续增加以配得上想要的收入吧. 从初 ...

  4. 把Azure专线从Class模式迁移到ARM模式

    前面几篇文章介绍了Azure的ASM模式和ARM模式.很多用户已经在ASM模式下部署了Azure的专线服务,如果部署的应用是ARM模式,或ASM模式和ARM模式都有,就需要把ASM模式的专线迁移到AR ...

  5. Debian 7开启ssh、telnet

    SSH 1. 安装ssh服务 apt-get install openssh-server 2. 开启ssh /etc/init.d/ssh  start Telnet 1. 安装telnet apt ...

  6. 第十章 Executor框架

    在Java中,使用线程来异步执行任务.Java线程的创建与销毁需要一定的开销,如果我们为每一个任务创建一个新线程来执行,这些线程的创建与销毁将消耗大量的计算资源.同时,为每一个任务创建一个新线程来执行 ...

  7. sql语句优化方案

    1. 为查询缓存优化你的查询 NOW() 和 RAND() 或是其它的诸如此类的SQL函数都不会开启查询缓存,因为这些函数的返回是会不定的易变的. 所以,你所需要的就是用一个变量来代替MySQL的函数 ...

  8. myeclipse与eclipse的web项目部署区别

    一.myeclipse之web项目的部署(发布)流程 web项目的部署(发布)流程2008-01-18 14:35 在myeclipse下新建web工程abc.系统设置默认如下: 项目保存位置:wor ...

  9. DAY16-Django之model

    Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据 ...

  10. Java更新

    Java I/O 总结 JVM(8):JVM知识点总览-高级Java工程师面试必备 细数JDK里的设计模式 Java中创建对象的5种不同方法 关于Java Collections的几个常见问题 类在什 ...