📦 查看他人订单

Order IDOR Vulnerability

👤 当前用户

未登录

📋 所有订单

加载中...

🧪 IDOR 攻击演示

💡 攻击方式:

1. 以 zhangsan 登录(只有订单 1001, 1002)

2. 尝试访问 lisi 的订单 1003 或 1004

3. 观察是否能看到他人订单详情

🔬 漏洞代码

// ❌ 有漏洞:不校验订单归属
router.get('/order/:id', (req, res) => {
  const order = orders[req.params.id]
  res.json(order)  // 直接返回,不管是谁的订单
})

// ✅ 安全:校验订单归属
router.get('/order/:id', (req, res) => {
  const order = orders[req.params.id]
  
  if (order.userId !== currentUser.id) {
    return res.status(403).json({ error: '无权访问' })
  }
  
  res.json(order)
})