BREAK 是英文“Business Risk Enumeration & Avoidance Kownledge”的缩写,是一个开放式“业务风险枚举与规避知识”框架。该框架通过对各种业务风险进行分类、介绍与枚举,为使用者提供了一个完整的业务风险全景图,并对业务规避风险、提升能力提供了规避知识。
随着信息安全能力对业务的覆盖与落地,以及业务对安全需求的加深,如果安全还是单单停留在网络安全范畴,仅仅是提前发现和修复各种漏洞,显然是无法保证业务正常的安全运营的,也无法满足业务安全的更高需求。
为此,我们根据多年以来对业务安全的理解和积累,推出 BREAK - “业务风险枚举与规避知识框架”,旨在为企业蓝军在开展业务安全评估过程中提供指导和依据,同时框架中的业务风险规避知识也为安全能力建设、业务安全运营、风控能力提升提供指引。
框架整体按照:风险维度、风险场景、风险点的划分原则,框架包含若干风险维度,每个风险维度包含若干风险场景,每个风险场景包含若干风险点。
风险维度指代看待风险的不同角度,目前包含:业务维度、内容维度、身份维度和对抗维度。其中业务维度包含:营销风险、交易风险、游戏运营风险;内容维度包含:用户内容风险和违规引流风险;身份维度包含:身份风险和盗号变现风险;对抗维度包含身份对抗风险、设备对抗风险和非法请求风险。
目前框架共收集和整理风险点68个,后续会根据情况和反馈进行动态添加、升级或调整。每个风险点由风险编号、风险标题、风险描述、攻击描述、攻击复杂度、风险影响、规避手段和参加资料组成。风险编号通过 R00xx 的方式来进行唯一编号(效仿Mitre ATT&CK),以便后期交流和情报传递。而攻击描述可以指引企业蓝军更好地进行安全能力评估,规避手段可以帮助企业红军或业务风控来加强安全能力建设,以降低业务风险。
需要注意的是: 业务风险和漏洞不是一回事情。一般来说漏洞是由于业务编码的缺陷导致的,可以通过修改代码去除缺陷来修复漏洞;而业务风险很大程度上并不是由编码缺陷造成的,只是攻击者对正常业务逻辑的一种非预期的利用。也因此,在大部分情况下,并不能完全消除风险,只能将风险降低到一定的可接受范围。所以并不一定可以通过直接修改代码来修复漏洞,通常业务风险需要外挂安全能力、构造风控模型来减缓攻击、降低攻击ROI或缩小攻击面。
目前版本的全部风险列表如下(详细资料请参考 BREAK 框架):
风险编号 | 风险标题 |
---|---|
R0001 | 流程自动化 |
R0002 | 卡券枚举 |
R0003 | 秒拍出价 |
R0004 | 拍卖狙击 |
R0005 | 营销活动作弊 |
R0006 | 批量小号作弊 |
R0007 | 虚假裂变 |
R0008 | 广告欺诈 |
R0009 | 广告引流 |
R0010 | 团伙代充 |
R0011 | 账号倒卖 |
R0012 | 游戏外挂/脚本 |
R0013 | 批量退款 |
R0014 | 恶意占库存 |
R0015 | 恶意差评 |
R0016 | 刷量刷榜 |
R0017 | 虚假交易 |
R0018 | 干扰搜索结果 |
R0019 | 刷单 |
R0020 | 文本内容风险 |
R0021 | 图片内容风险 |
R0022 | 音频(流)内容风险 |
R0023 | 外部链接风险 |
R0024 | 视频(流)内容风险 |
R0025 | 恶意挖墙脚 |
R0026 | 违规商品 |
R0027 | 经营数据盗爬 |
R0028 | 敏感数据泄露 |
R0029 | 验证码恶意消耗 |
R0030 | 批量注册 |
R0031 | 撞库攻击 |
R0032 | 凭证破解 |
R0033 | 密码喷射 |
R0034 | 自动化养号 |
R0035 | 凭据复用 |
R0036 | 多因素破解 |
R0037 | 第三方账号聚合 |
R0038 | 登录扫码欺诈 |
R0039 | CC攻击 |
R0040 | 撞卡攻击 |
R0041 | 支付卡破解 |
R0042 | 盗卡盗刷 |
R0043 | 黑卡支付 |
R0044 | 仿冒转账 |
R0045 | 积分盗刷 |
R0046 | 未成年人识别对抗 |
R0047 | 人机识别对抗 |
R0048 | 人脸识别对抗 |
R0049 | 代登录、代下单 |
R0050 | 风险设备识别对抗 |
R0051 | 逆向分析 |
R0052 | HTTP请求分析 |
R0053 | 虚拟设备对抗 |
R0054 | 恶意退货 |
R0055 | 低价购风险 |
R0056 | 虚假好评 |
R0057 | 退货造假 |
R0058 | 闪退套利 |
R0059 | 恶意拒收 |
R0060 | 洗钱/诈骗 |
R0061 | 手机二次号 |
R0062 | 信用卡/借款套现 |
R0063 | 实时评论广告引流 |
R0064 | 拆单套利 |
R0065 | 恶意索赔 |
R0066 | 消息骚扰 |
R0067 | 恶意客诉 |
R0068 | 权益滥用 |
目前版本的全部规避手段列表如下(详细资料请参考JDArmy BREAK框架):
编号 | 标题 |
---|---|
A01 | 人机识别挑战 |
A02 | 接口签名 |
A03 | 爬虫识别 |
A04 | 频率限制 |
A05 | 数量限制 |
A06 | 恶意内容识别 |
A07 | 多因素验证 |
A08 | 增加负载 |
A09 | 时间限制 |
A10 | 异常环境识别 |
A11 | 退出登录态 |
A12 | 强制改密 |
A13 | 访问端代码混淆 |
A14 | 反调试 |
A15 | 风控策略 |
A16 | 威胁情报 |
A17 | 身份授权判断 |
A18 | 身份认证 |
A19 | 身份行为审计 |
A20 | 身份处罚策略 |
A21 | 终端标记 |
A22 | 协议加密 |
A23 | 生物特征识别 |
本框架采用JSON格式进行了系统描述,详见“/src/i18n/zh-CN/BREAK.json”文件,其中:
风险维度放于“riskDimensions”中,并通过其内的“riskScenes”来划分场景;
风险场景放于“riskScenes”中,并通过其内的“risks”来划分风险;
风险放于“risks”中,并通过其内的“avoidances”来承载规避手段;
规避手段放于“avoidances”中。
各协作者可以通过直接修改 BREAK.json 文件来与我们进行该系统框架的协作开发。亦可通过在github上提issue来给我们提供意见或建议。
框架地址:https://break.jd.army/
Github:https://github.com/JDArmy/BREAK
🔽点击原文查看知识框架