# unicomcloudwaf **Repository Path**: uniomo/unicomcloudwaf ## Basic Information - **Project Name**: unicomcloudwaf - **Description**: 联通云WAF(蜜罐) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-10-07 - **Last Updated**: 2026-10-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 联通云 WAF 蜜罐站点 高仿联通云(China Unicom Cloud)Web 应用防火墙控制台登录页的静态站点,用于**授权环境下的安全研究与蜜罐部署**。 ## 合规声明 - 本项目仅供自有 / 授权环境部署,用于攻击者行为捕获与研究。 - **严禁**用于针对真实用户的钓鱼、欺诈或任何违法用途。 - 站点不连接任何真实联通云后端,所有控制台数据均为静态伪造。 ## 页面结构 | 文件 | 说明 | | --- | --- | | `index.html` | 登录页(密码登录 / 短信登录双 Tab、图形验证码、协议勾选) | | `register.html` | 免费注册页 | | `forgot-password.html` | 找回密码(两步:验证账号 → 重置密码) | | `agreement.html` | 联通云服务协议全文 | | `privacy.html` | 联通云隐私政策全文 | | `console.html` | 登录后的假控制台(伪造统计、实时攻击日志、全球态势) | ## 蜜罐采集 - 采集字段:账号 / 密码(或手机号 + 短信码)、User-Agent、来源页、语言、屏幕分辨率、时区,以及**键击时序**(focus/keydown/keyup/input/paste 的时间间隔;密码字段仅记录时序,不记录明文按键)。 - 上报方式:`navigator.sendBeacon` → `fetch(keepalive)` → `localStorage`(限 200 条)三级兜底。 - 服务端:`cloud-functions/api/collect.js` 写入 EdgeOne Blob,**每条采集一个独立对象**, key 形如 `waf-honeypot//.json`,按天分桶。 - 服务端 IP / 地理位置以服务端取值为准,覆盖客户端可能伪造的同名字段。 - 单请求体上限 32 KB,键击时序超过 5000 条自动抽稀。 - 数据下载:`cloud-functions/api/download.js`(**需令牌**) | 请求 | 说明 | | --- | --- | | `GET /api/download?token=` | 下载当天采集数据 | | `GET /api/download?token=&date=20261007` | 下载指定日期 | | `GET /api/download?token=&list=1` | 列出全部采集日期 | 令牌校验方式:URL 参数 `token`,或请求头 `X-WAF-Token`。 - 数据清理:`cloud-functions/api/purge.js`(**需令牌**,蜜罐长期运行需定期清理) | 请求 | 说明 | | --- | --- | | `GET /api/purge?token=&date=20261007` | 删除指定日期 | | `GET /api/purge?token=&before=20261007` | 删除该日期之前的全部数据 | | `GET /api/purge?token=&keep=7` | 保留最近 7 天,删除更早的 | 追加 `&dryRun=1` 可只统计将删除的条目而不实际删除,建议先预览。 安全约束:必须显式指定范围(`date` / `before` / `keep` 三选一), 不提供「清空全部」用法;单次删除上限 5000 条,超出需重复调用; 结构无法识别的 key 不会被触碰。 ## 部署 EdgeOne Makers 项目(Provider: CNB),由本仓库 `main` 分支构建: - `waf-uniomo-com` → `waf.uniomo.com` - `waf-unicom-ac-cn` → `waf.unicom.ac.cn` 推送 `main` 后,CNB 流水线(`.cnb.yml`)通过 `cnbcool/webhook` 插件通知 Makers 拉取代码并构建。 ### 首次配置(必做) 采集数据含明文密码与短信验证码,下载接口必须配置令牌后才会开放: 1. 在 EdgeOne 控制台为**两个项目**分别添加环境变量 `WAF_ADMIN_TOKEN`(建议 32 位以上随机串)。 2. 未配置该变量时 `/api/download` 一律返回 403,属预期行为(fail-closed)。 ## 备案信息 鄂ICP备2024038191号 / 鄂公网安备42010302002710号