系统设计&黑灰产监控与防御 | 青训营笔记

120 阅读2分钟

这是我参与「第五届青训营 」笔记创作活动的第9天。 该日笔记整理分两大部分。

系统设计:

评估系统设计的方法:安全性,易用性,扩展性,耦合性等。

定义:为了达成某种目的,由个体组成为整体的过程。 一个比较惯例的流程如下:

  • 场景分析(Scenario)
  • 存储设计(Storage)
  • 服务设计(Service)
  • 可扩展性(Scale)

发现系统瓶颈的方法:火焰图分析,链路追踪和性能测试。

保证可用性和稳定性的方法为如下几点:

  • 链路梳理(核心链路,流量漏斗,强弱依赖)
  • 可观测性(链路追踪,核心监控,链路报警)
  • 全链路测试(压力测试,负载测试,容量测试)
  • 稳定性控制(系统限流,。。。。。。)
  • 容灾演练(混沌工程&应急手册等)

例子:电商秒杀系统设计:

分析:要求实时,处理速度快,瞬时流量高,并发性高等。

设计存储:

graph TD
MySQL --> Redis
Redis --> Localcache

设计服务: 用户,风控,订单,活动。需要ID生成器,缓存组件等。

为保证性能设计扩展:流量隔离,CDN,流量管控,缓存优化等。

可以得到一个架构:

image.png 以及最终的秒杀流程图:

image.png

黑灰产监控防御:

国内一些常见的黑产如诈骗,薅羊毛,黄牛,木马等。 黑色产业链规模随着互联网的壮大而不断壮大,因此对其监控与防御十分重要。黑产团伙的发展趋势:规模化,组织化,平台化。

常见的黑产技术流程分析如下: 如某银行的业务流程,其中的一些识别部分,黑产中进行人脸识别对抗与地理位置识别对抗。

安全防护体系的建设:

  • 事前:情报监控,SDLC,漏洞扫描
  • 事中:渗透测试,安全感知,风控&安全策略。
  • 事后:威胁建模,攻击溯源

有安全SDK,WAF,IDS,DLP等方式。

这两节课都是实践性比较强的设计与问题分析课,在这个过程中本人学到一些开发过程中处理实际问题的能力。