作弊检测
CBCTF 内置多维度自动作弊检测,管理员可查看、确认或驳回检测结果。
检测机制
1. same_web_ip — 多队伍共用 Web IP
多支队伍的 Web 请求(登录、提交等)来自同一公网 IP,可能存在同场地协作或账号共享。
2. same_victim_ip — 多队伍共用靶机访问 IP
多支队伍访问靶机的 IP 相同(capture 捕获),强烈暗示存在跨队协作。
3. wrong_flag — 跨队 flag 提交
队伍提交了属于另一支队伍的动态 flag,表明存在 flag 共享行为。
作弊记录字段
作弊状态
管理员处理流程
- 访问比赛的作弊记录列表(
admin:cheat:list) - 查看各条记录的
type、reason、相关队伍信息 - 结合 IP 历史(
admin:ip:search)和流量捕获进行综合判断 - 更新
type为cheater或pass(admin:cheat:update) - 在
comment中填写处置说明 - 标记
checked: true
重新运行检测
需要 admin:cheat:create 权限。对当前比赛所有数据重新运行全量作弊检测,适用于比赛结束后的全面审查。
批量删除
需要 admin:cheat:delete 权限。删除该比赛的所有作弊记录(谨慎使用)。
IP 白名单
在 config.yaml 中配置 IP 白名单,白名单内的 IP 不触发 IP 类作弊检测:
误报场景说明
以下场景可能导致误报,管理员应结合实际情况判断:
Tip
建议将竞赛现场的出口 IP 加入白名单,或在 Helm values 中配置 cbctf.cheat.ip.whitelist。
