当前位置: 首页 > article >正文

OWASP安全练习靶场juice shop-更新中

Juice Shop是用Node.js,Express和Angular编写的。这是第一个 完全用 JavaScript 编写的应用程序,列在 OWASP VWA 目录中。

该应用程序包含大量不同的黑客挑战 用户应该利用底层的困难 漏洞。黑客攻击进度在记分板上跟踪。 找到这个记分牌实际上是(简单的)挑战之一!

除了黑客和意识培训用例外,渗透测试 代理或安全扫描程序可以将 Juice Shop 用作“几内亚” pig“-应用程序来检查他们的工具如何应对 JavaScript 密集型应用程序前端和 REST API。

部署

docker pull bkimminich/juice-shop

docker run --rm -p 3000:3000 bkimminich/juice-shop

需要挖掘的漏洞内容 寻找记分牌 :: Pwning OWASP Juice Shop (owasp-juice.shop)

访问ip:3000,打开后先注册一个用户,否则功能无法操作。 

前记:

这个靶场的难点在于,只给出问题,范围在整个系统,需要去找题的答案在哪个功能上。

查找记分牌

没有直接给出记分牌页面,需要找出url。

search的地址为 http://ip:3000/#/search

刷新搜索看到某个接口返回内容

 猜测url为 http://ip:3000/#/score-board

访问后显示了记分牌页面

 

 访问后会显示成功找到

挑战通过后,点击后面的按钮运行coding challenge,如找到记分牌这个任务,勾选记分牌相关的几行代码,点击submit,两侧会显示烟花效果,说明通过。


Broken Access Control

Authorization - OWASP Cheat Sheet Series

Forged Feedback

要求用其他用户的username提交评价。

抓包,修改connect发送未解决。随便修改一下userId,解决。

 View Basket

要求查看其他人的购物车

解决:抓包,修改id为7请求解决,这个题像不安全对象引用。

Zero Stars

要求给商店做零星评价,选择左侧contact模块的customer feedback功能,发现页面只能选择1-5

解决:抓包,篡改请求设置rating为0 后发送,绕过UI

XSS

DOM XSS 

在搜索框输入  <iframe src="javascript:alert(`xss`)">回车,会显示一个alert


不合适的输入验证

Bonus Payload 

商品搜索框输入如下代码回车成功

<iframe width="100%" height="166" scrolling="no" frameborder="no" allow="autoplay" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/771984076&color=%23ff5500&auto_play=true&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true"></iframe>

Improper Input Validation 

Admin Registration

题目要求注册为管理员权限的用户。

提交body  {"email":"admin","password":"admin","role":"admin"}

Deluxe Fraud

Obtain a Deluxe Membership without paying for it.

Missing Encoding

photo-wall有一个小猫图片未显示,查看元素,可以看到src地址,在新标签页打开,

发现传给服务器的url变为如下,导致图片未显示。因为#号被浏览器解释了are interpreted by your browser as HTML anchors 所以需要将#编码为%23 即可显示图片

http://10.100.33.10:3000/assets/public/images/uploads/%F0%9F%98%BC-

Repetitive Registration

题目要求注册用户时不用输入验证密码

解决:抓包,修改passwordRepeat为空提交。

Upload Type

要求上传非pdf和zip的文件

抓接口,通过接口上传非zip文件

杂项

 Privacy Policy 

要求阅读隐私政策

使用的任何自动爬虫或爬虫工具都可能解决此问题,打开这个页面就会提示成功

Bully Chatbot

一直给机器发give me a coupon,在contact us查看社交平台,继续发give me a coupon,就会给发优惠券码,通过。

Mass Dispel

Close multiple "Challenge solved"-notifications in one go. 要求一次性关闭多个问题已解决通知

Sensitive Data Exposure 

Confidential Document

题目要求找到一个秘密文件。看了solution才知道从哪入手。

在about us 页面有一个文件链接地址 http://10.100.33.10:3000/ftp/legal.md

去掉url中的文件引用,可以看到ftp目录所有文件,随便点击一个,解决该问题。

Exposed Metrics

题目要求找到监控端点,提示给了监控用的是prometheus

访问ip:3000/metrics 解决

Security Misconfiguration

Error Handlingstar_rate

Provoke an error that is neither very gracefully nor consistently handled.

 Error Handling - OWASP Cheat Sheet Series

Unvalidated Redirects

Outdated Allowlist

Let us redirect you to one of our crypto currency addresses which are not promoted any longer.

 


http://www.kler.cn/a/159154.html

相关文章:

  • springboot 调用 c++生成的so库文件
  • Geek Uninstaller,绿色免安装轻量的应用卸载工具!
  • 【2024年华为OD机试】(A卷,200分)- 简单的解压缩算法 (JavaScriptJava PythonC/C++)
  • MySQL查询LONG BLOB类型数据的大小
  • Swift 中 Codable 和 Hashable 的理解
  • vue3 通用svg组件
  • dante(centos)安装
  • vue3安装markdown-it
  • STM32F1外部中断EXTI
  • webpack学习-2.管理资源
  • YOLOv8创新魔改教程(三)如何添加注意力机制注意力机制的用法与思考
  • C# 雪花算法生成Id工具类
  • 界面控件DevExpress WPF导航组件,助力升级应用程序用户体验!(上)
  • [英语学习][8][Word Power Made Easy]的精读与翻译优化
  • _WorldSpaceLightPos0的含义 UNITY SHADER
  • vue3 学习
  • 伯俊软件CTO陈雨陆:R3全渠道业务中台的OceanBase落地实践
  • 力扣295. 数据流的中位数
  • redis整理
  • 深入理解 Go 函数:从基础到高级
  • uniapp踩坑之项目:使用过滤器将时间格式化为特定格式
  • PET(Point-Query Quadtree for Crowd Counting, Localization, and More)
  • <Linux>(极简关键、省时省力)《Linux操作系统原理分析之文件管理(3)》(24)
  • Python智能语音识别语翻译平台|项目前端搭建
  • Vue3+nuxt+ts项目引入高德地图API实现步骤
  • 一文读懂中间件