风控安全产品系统设计的个人感悟

news2024/10/7 15:50:37

背景

本篇文章会从系统架构设计的角度,分享在对业务安全风控相关基础安全产品进行系统设计时遇到的问题难点及其解决方案

内容包括三部分:(1)风控业务架构;(2)基础安全产品的职责;(3)基础安全产品相关系统架构的设计要点。

文章会以总-分的形式进行阐述。懂的不多,做的太少。欢迎批评、指正。

风控业务架构

我把风控业务架构的分层分为6层,分别是组件层、业务层、决策层、能力层、计算层、可视层。

以下基建基础安全产品的简称。

组件层

组件层的职责是:数据收集与行为反制

从接口、设备、行为三个维度进行数据收集,接收决策层的指令进行行为反制。为了保证数据的收集数据的可靠性,就衍生出了壳、混淆、反调试等加固策略。

更详细的思考在我的《风控安全产品的探索之路》这篇文章中,感兴趣可跳转阅读,这里就不再赘述。

业务层

业务层的职责是:风控数据透传与风控决策结果处理

将风控所需要的数据透传至决策层,业务层获取到决策层数据后,根据决策层结果选择执行风险反制或业务逻辑。

透传数据一般包括:风控数据和业务补充数据。

决策层

决策层的职责是:风控能力应用

决策层是整个风控业务的核心,将风控能力高效连接起来,有效、合理地应用能力层、计算层所具备的能力。这一层的难点在于工程而非安全领域,例如:如何设计调用链路(降低计算时长)、如何处理超高并发流量、如何保护下游风控内部系统等。

其中包括:风控参数预处理、风控能力应用(组件/名单/模型等)、风险决策(规则引擎)、反制决策(观测/登录/验证码/行为验证/封禁)。

能力层

能力层的职责是:识别基础安全风险

该层包括:设备指纹、环境检测、接口防护、验证码、IP风险、手机号风险、链路风险等。

能力层是风控系统的基石,它的能力决定了一个风控系统识别风险能力的下限。会从资源、接口、设备、链路、行为等维度进行系统性风险扫描。

计算层

能力层的职责是:补充风险识别能力

该层包括:数据引擎、规则引擎、风险名单、识别模型、风险预警。

计算层是对基础安全风险识别能力的补充,它的能力决定了一个风控系统识别风险能力的上限。从频率统计、策略规则、风险名单、模型识别、风险预警等维度对能力层进行能力补充。

可视层

可视层的职责是:提升运维效率

该层包括:运维报表、引擎配置、流量监控、事件追踪。

可视层能够在事前能够分析风险潜在风险,事中有效执行并降低配置错误概率,事后观察风控效果。满足运营策略调整与风险管理的需求。

因为目前主要深入了解与实践的是组件层和能力层的建设,所以文章后续会从基建(基础安全产品)的视角进行系统性总结。

基础安全组件

落地难点

  1. 接入场景多

    拉新激活、账号、反爬(多业务线)、交易(多业务线)、营销(多业务线)。

  2. 接入终端多

    ADR(多技术栈)、IOS(多技术栈)、WX(原生、非原生)、WEB、TOUCH。

  3. 接入组件多

​ 防护组件(指纹、环境检测、接口防护等)、验证码组件、登录组件等。

待解决问题

架构特性

在进行架构设计时,我会重点关注架构的这三大特性,分别是:安全性、易用性、稳定性

安全性

因为是安全组件,其识别能力和组件自身安全性是首先要保证的。

稳定性

组件会应用在各个场景,所以要尽可能降低由安全组件造成故障的概率。

易用性

尽可能降低业务接入的成本。

具体案例

以接口防护组件设计来举例。

问题分析

攻击场景

(以ip138查询网举例,不代表本人对该网站进行过攻击)

攻击还原

思路描述

请求离开容器后,通过抓包的方式,获取并解析数据,然后进行数据篡改、伪造鉴权,最后重新构造数据并发送请求。

攻击步骤

(1)抓包;(2)解析数据;(3)数据篡改;(4)伪造鉴权;(5)构造数据;(6)发送请求。

攻击步骤防御可行性分析

防止抓包

(1)抓包在应用外进行;

(2)除App,其他端防抓包基本不可防;

(3)防御性价比不高。

防止解析

解决方案是加密。

(1)入侵性较强、强依赖;

(2)加解密服务稳定性要求高;

(3)业务响应时长上升。

系统设计

系统架构

描述系统分层、职责、关系以及运行规则。

组件层

提供接口防护组件、验证组码件和登录组件。

透传层

通过数据共享或业务系统透传方式透传风控参数。

决策层

进行入参校验、版控、能力使用以及反制决策等。

能力层

提供接口检测能力等。

架构特性

安全性这篇文章就不过多赘述。

安全性的难点除了风险识别上的难点,还有就是面对多个终端(Android、iOS、小程序、PC、Touch),其底层逻辑完全不一样。我们如何总结出统一的设计思想(方法论)这样的类工程问题。

如防容器脱离,我总结的思想就是:上层与业务逻辑建立联系,中层多个组件间建立联系,下层与操作系统(WX容器、浏览器)建立联系。

稳定性

易用性

(1)组件化

关于前端组件的易用性,不能与业务过于耦合,需要根据业务特性进行适当地解耦。如果与业务系统过于耦合,首先是在对防护逻辑进行升级时势必会影响业务,就需要投入测试人力进行业务逻辑回归,其次是防护能力往其他场景迁移也会有代码重复冗余的问题。

(2)易用性提升

如何在组件化的前提下进行易用性提升?我坚持的原则是尽量在不入侵业务的前提下,降低接入成本

我的解决方案是,结合项目前端技术栈特点进行如下选择:

a)方式一:是否有统一的网络框架?

​ 如使用安卓原生技术开发苹果原生技术开发一般企业都有统一的网络框架进行网络出口管理,这时组件就可以从中找一个切面进行组件接入

b)方式二:是否有统一组件?

​ 如小程序(或Android Hybird等)没有封装统一的网络库,而是页面直接使用HTTP协议发送请求,但有统一的工具库,此时可以帮业务提前做好组件引入工 作,业务使用时 直接本地调用即可。这也可以一定程度地提升易用性。

c)方式三:是否可以引入三方组件?

​ 如网页端(WWW、TOUCH)提供好完整的风控.js文件,业务方使用时直接调用即可,虽然不如以上a、b两种方式更友好,但要强于代码拷贝的方案。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/662962.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

重新安装ROG Armoury Crate

文章目录 使用官方卸载工具卸载奥创安装奥创 更新奥创之后 Aura Sync 坏了,无法调整灯光,打开 Aura Creator 提示服务运行异常: 在任务管理器中随便禁用了几个奥创、Asus的服务后,再次打开 Aura Creator,提示出了具…

【码银送书第一期】通用人工智能:初心与未来

目录 前言 正文 内容简介 作者简介 译者简介 目录 前言 自20世纪50年代图灵在其划时代论文《计算机器与智能》中提出“图灵测试”以及之后的达特茅斯研讨会开始,用机器来模仿人类学习及其他方面的智能,即实现“人工智能”(Artificial …

CSS实现盒子模型水平居中、垂直居中、水平垂直居中的多种方法

CSS实现盒子模型水平居中、垂直居中、水平垂直居中的多种方法 CSS实现盒子模型水平居中的方法 水平居中效果图 水平居中 全局样式 .parent { color: #FFFFFF; height: 200px; width: 200px; margin: 0 auto; background-color: #000000;} .child { widt…

No module named ‘torch_geometric‘解决办法

参考链接: https://blog.csdn.net/weixin_47779152/article/details/120570367 https://data.pyg.org/whl/torch-1.12.0%2Bcu113.html https://blog.csdn.net/qq_44832009/article/details/129351554 https://blog.csdn.net/qq_43750528/article/details/130644899 …

五、elasticsearch查询操作

目录 数据准备 1、查询指定字段包含指定内容的文档 2、指定输出的文档字段查询(“_source”) 3、排序查询(默认根据指定字段升序asc排序)(“sort”) 4、分页查询 5、布尔查询(多条件查询&…

中国人民大学与加拿大女王大学金融硕士——在职读研撑起未来的帆

威廉姆曾说:“人生就是一次航行,航行中必然会遇到从各方面袭来的劲风。然而每一阵风都会加快你的航速,只要你稳住航舵,即使暴风雨也不会使你偏离航向”。在浩瀚的大海中,每个人都是一只独立的小船,掌舵的人…

前四周我安卓的傻逼问题

1)这三个文档在在什么时候会使用到,以及主要是涉及到了哪一块的知识 2).ProjectConfig宏的配置 ,这个在linux里面有什么用 3)代码远程地址等等,这些是公司仓库,还是公共仓库,为啥有…

品牌新闻稿怎么写得有高度和深度?纯干货

品牌新闻稿是公司或品牌向公众发布的一种公关宣传工具,需要在选题、素材搜集整理、观点和见解、大纲搭建等方面做好准备,以写出高度和深度兼备的品牌新闻稿,接下来伯乐网络传媒就来给大家分享一下。 一、品牌新闻稿选题 品牌新闻稿的选题应该…

vue-devtools浏览器调试工具离线安装教程

vue-devtools浏览器调试工具离线安装教程 vue-devtools浏览器调试工具离线安装是下载源码,通过本地编译之后,在放到浏览器上 这里写目录标题 vue-devtools浏览器调试工具离线安装教程1.下载源码2.执行安装插件包命令3.安装插件 1.下载源码 [不推荐]在gi…

SAP从入门到放弃之BOM配置-Part2

感谢大佬的文章,最近在测试BOM行项目类别为R类别的功能,看到了这篇文章。最近忙只能机翻一下。建议大家点开原文地址看。 https://blogs.sap.com/2013/09/11/bom-configuration-bom-modification-parameters/ 介绍: 对于任何模块&#xff0…

Doo Prime 德璞资本:你不能不知道的贵金属期货交易平台选取方法!

近些年来,在贵金属期货交易市场中,投资者越来越多。随着贵金属价格的波动,期货交易成为了一种非常有吸引力的投资方式。然而做期货交易,怎么选一家好的贵金属期货交易平台,成为了许多期货投资者非常关心的问题。 首先&…

高压放大器在介电材料测试中的应用

介电材料测试是一项重要的材料性能测试,它涉及到物理学、化学、材料科学等多个学科领域。高压放大器是介电材料测试中的一种重要设备,它可以放大微弱的电信号,提高测试的准确性和精度。下面将详细介绍高压放大器在介电材料测试中的应用。 图&…

Axure教程—省市区三级联动(中继器)

本文将教大家如何用AXURE中中继器制作省市区三级联动 一、效果 预览地址:https://t6gmmh.axshare.com 二、功能 选择省份、出现相应的市区,选择市区出现相应的区或县 省市区三级联动效果 三、制作 1、省 拖入一个矩形,命名为省&#xff0c…

移动通信基站中光模块的应用解析

生活中你有看到光模块在工作吗?回答是肯定的。光模块的应用小到一个监控设备,大到数据中心、云计算、移动通信基站、超级计算机等领域,与我们的生活息息相关、密不可分。本期文章易天光通信(ETU-LINK)将带您来了解一下…

带宽与吞吐量以及吞吐量对网络有什么影响

什么是网络吞吐量 在优化和排除网络性能故障时,测量吞吐量是评估网络连接不良或滞后原因的主要方法之一。简单来说,吞吐量是指通过网络成功传输的数据量。它是在一段时间内从源到目标的数据传输速率。 当网络用户访问应用程序或共享文件时,…

2023-06-19:讲一讲Redis分布式锁的实现?

2023-06-19:讲一讲Redis分布式锁的实现? 答案2023-06-19: Redis分布式锁最简单的实现 要实现分布式锁,确实需要使用具备互斥性的Redis操作。其中一种常用的方式是使用SETNX命令,该命令表示"SET if Not Exists&…

ChatGLM-6B 在 ModelWhale和本地 平台的部署与微调教程

ChatGLM-6B 在 ModelWhale 平台的部署与微调教程 工作台 - Heywhale.com ChatGLM-6B 介绍 ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费…

古希腊历史的五个阶段

古希腊(Greece),是西方文明的源头之一,是古代巴尔干半岛南部、爱琴海诸岛和小亚细亚沿岸的总称。古希腊是西方文明最重要和直接的渊源。 西方有记载的文学、科技、艺术都是从古代希腊开始的。古希腊不是一个国家的概念&#xff0c…

4.Mysql备份与恢复

文章目录 Mysql备份与恢复重要性数据库备份的分类从物理与逻辑的角度从数据库的备份策略角度 常见的备份方法MySQL 完全备份优点与缺点数据库完全备份分类Mysql物理冷备份与恢复mysqldump备份数据库恢复数据库 mysql日志管理错误日志通用查询日志二进制日志慢查询日志查看日志文…

GAMES101 笔记 Lecture 04 Transformation Cont.

目录 3D Transformations(三维变换)Viewing transformation(观测变换)View/Camera Transformation(视图变换)What is view transformation(什么是视图变换)?How to perform view transformation?(如何进行视图变换呢?) Projection Transformation(投影变…