HolyTreasure 靶场


本系统用于演示软件授权机制,采用 64位随机激活码 + 数据库状态管理 方案,兼顾安全性与易用性,适用于新生攻防教学实验。


🔧 系统架构

  • 前端:H5 页面(index.html
  • 后端:PHP 脚本(generate.php / verify.php
  • 数据库:MySQL 表 activation_keys
  • 通信协议:HTTP + JSON
  • 激活码格式64 个字符,由大小写字母和数字组成(如 aB3xK9...Lm2Q

🗝️ 1. 生成激活码

请求方式

GET /api/activation/generate.php?product=产品ID&email=邮箱(可选)

参数说明

参数 必填 示例 说明
product GAME_2025 产品标识
email user@holytreasure.cn 关联用户邮箱

成功响应(纯文本)

k7LmN9pQrStUvWxYzA1B2C3D4E5F6G7H8J9K0LmNoPqRsTuVwXyZaBcDeFgHiJk
  • 长度严格为 64 字符
  • 有效期:30 天
  • 状态:unused(未激活)

错误示例

  • 400 Bad Request:缺少 product 参数

🔐 2. 验证并激活

请求方式

POST /api/activation/verify.php

请求体(JSON)

{
  "activation_key": "k7LmN9pQrStUvWxYzA1B2C3D4E5F6G7H8J9K0LmNoPqRsTuVwXyZaBcDeFgHiJk"
}

成功响应(JSON)

{
  "status": "success",
  "product": "GAME_2025",
  "expires_at": "2026-01-24 14:30:00"
}

失败响应(统一返回 403)

{ "error": "Key not available" }

可能原因:

  • 激活码不存在
  • 已使用
  • 已过期
  • 格式错误(非64字符)

✅ 所有失败均返回相同错误信息,防止信息探测。


🗃️ 数据库表结构

CREATE TABLE `activation_keys` (
  `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  `activation_key` CHAR(64) NOT NULL UNIQUE COMMENT '64位激活码',
  `product` VARCHAR(100) NOT NULL,
  `email` VARCHAR(255) DEFAULT NULL,
  `expires_at` DATETIME NOT NULL,
  `status` ENUM('unused', 'activated', 'revoked') NOT NULL DEFAULT 'unused',
  `activated_at` DATETIME NULL DEFAULT NULL,
  `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  INDEX `idx_key` (`activation_key`),
  INDEX `idx_status` (`status`),
  INDEX `idx_product_status` (`product`, `status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

🛡️ 安全设计要点(教学重点)

特性 说明
64位随机码 熵值高(≈380 bits),无法暴力破解
一次性使用 激活后状态变为 activated,不可复用
有效期控制 默认30天,过期自动失效
无客户端逻辑 所有验证在服务端完成
防重放攻击 数据库状态 + 唯一索引保障
统一错误反馈 避免泄露密钥是否存在

🧪 教学实验建议

实验目标 操作
观察激活流程 生成 → 验证 → 查看数据库状态变化
尝试重复激活 对同一密钥多次调用 /verify.php
篡改密钥 修改任意字符,观察验证失败
探测密钥存在性 发送随机64字符,确认是否泄露信息
抓包分析 用 Burp Suite 拦截请求,测试重放

📌 注意事项

  • 本系统仅用于教学,不可用于生产环境。
  • 前端调用时请使用 .php 后缀(如 generate.php)。
  • 确保 Web 服务器可读取 config/db.php
  • 激活码区分大小写,请完整复制。

📘 HolyTreasure 靶场 · 网络安全教学专用
🔗 访问地址:http://activation_system.holytreasure.cn


如需配套的 H5 页面、PHP 脚本或初始化脚本,可联系管理员获取。


HolyTreasure 靶场破解教学文档

-

评 论