10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

支付宝技术期末考:专业技术蓝军首次对外公开

  • 2018-12-22
  • 本文字数:3332 字

    阅读完需:约 11 分钟

支付宝技术期末考:专业技术蓝军首次对外公开

转眼间 2018 年的进度条已经拉到 98%,年底正是大家忙碌的时候,我等上班族忙着做年终总结,学生忙着复习功课准备期末考试,而在支付宝大楼里,本周也在进行着技术人员的期末考试:红蓝军技术攻防演练。


12 月的第三周,是支付宝技术人的“期末考试”。今年从 12 月 7 日开始,在支付宝办公大楼 6 层的一间办公室里,9 名技术人员身穿统一的蓝色 T 恤,在一排蓝色的可乐山之后紧张地工作,他们就是支付宝的专业技术蓝军,他们的工作是对蚂蚁金服的各个业务线系统注入故障进行攻击。而各业务线的技术人员则作为红军,要对蓝军发起的突袭见招拆招,抵御他们的进攻。


支付宝蓝军诞生背景

红蓝军技术攻防演练与蚂蚁金服的技术风险部发展息息相关。不管是数据中心遭雷劈光缆被挖断这样的天灾,还是人工操作失误代码 bug 这样的人祸,真实的故障都是随机和不确定的。支付宝人意识到,如果只能等真实故障发生时才能够检验,防控能力将处于被动的局面,所以他们必须要有未雨绸缪的策略,提高对技术风险的防御能力。


2015 年,支付宝把原来的技术质量部正式升级为技术风险部,专注研发及架构的技术风险问题,并完成相应解决方案和落地平台。2016 年,技术风险部再次升级为 SRE 团队。蚂蚁金服技术风险部负责人俊义介绍说,相较于谷歌提倡的以确保网站可靠性为目的的 SRE 实践来说,蚂蚁金服的 SRE 团队其实更应该叫做 TRE (Tech Risk Engineering),因为蚂蚁金服的 SRE 团队除了要确保网站、应用的可靠性,还花了很大一部分精力来建设技术风险防控的能力。近年来蚂蚁金服自研的分布式数据库 OceanBase,金融级分布式中间件 SOFA,TRaaS 技术风险防控平台等技术,从底层基础设施到平台都在不断加强支付宝体系的抗风险能力。


SRE 团队成立后不久便发现,以往的技术攻防演练几乎都是小打小闹,不成体系,也很零散。同时,技术团队发现了两个极为重要的现象,一是生产故障不是必然的,而通常都是偶然性的;二是生产故障是低频的。这样就带来了一个很大的问题:故障的样本很少。这意味着,没有办法证明,在真实的故障到来的时候以前设计的平台和能力是不是管用。也就是说,SRE 团队建设的防御系统的可靠性,无法充分验证。


2017 年 7 月,SRE 团队成立了专门的、独立职能的技术蓝军,其主要的工作就是发掘防御系统的弱点并发起真实的攻击。技术蓝军并不对各业务方负责,只对这套防御系统的稳定性和可靠性负责。


在技术蓝军看来,故障的发生是必然的,只是时间早晚而已,技术蓝军要想尽办法去触发这些故障,这样,在故障真实发生的时候,才有足够的应付能力。所以,技术蓝军发掘各类脆弱点,并高频地制造任意可能发生的故障,以验证防御系统的可靠性。

红蓝军对抗

蓝军的执行军长阿贵,在支付宝有十余年的工作经验。当我们惊讶于蓝军团队目前总人数不超过 10 人时,阿贵说是的,尤其刚开始时感觉是在“以一己之力挑战整个公司的技术人”。阿贵介绍说,蓝军要做的事情是去找各个业务线系统的脆弱点,并想尽办法去触发这些脆弱点。攻防对抗发生在镜像系统中,该系统可以模拟生产环境中的流量行为,避免对线上环境造成影响。



红军按业务线分为 8 支队伍:红一支付军,红二微贷军,红三财富军,红四保险君,红五芝麻军,红六国际军,红七安全军和红八平台军


技术蓝军日常的工作除了要对各业务线系统发出攻击,还要从历史事故中总结或从代码逻辑中找漏洞,把故障表现模型抽象出来,基于模型去发现系统的脆弱点。但是蓝军一共还不到 10 个人,要找出蚂蚁金服全局系统的脆弱点,阿贵承认压力还是很大的。“在团队招人的时候,除了看他们是否有好奇心,对高可用是否有很深刻的理解,候选人心理承受能力也相当重要。”蓝军团队平时还需要开发故障挖掘平台,设计探针和算法来采集和分析数据。


2017 年秋天,蓝军团队在成立后的两个月内,自主研发了无侵入式故障注入系统 Awatch,可以实时地对运行中的业务系统进行任意链路的编织侵入。2018 年 3 月,蓝军推出故障场景挖掘平台,基于 Awatch 探针探测应用内数据流,以此进行“弱点挖掘”。这套弱点挖掘体系,能够自动发现故障场景,最高能够在 5 分钟内产生 500+的故障场景。


而红军方面自然也是见招拆招。据俊义介绍,红军不像蓝军专门抽出了一支队伍,而是分布在各个业务线。当有人感觉到系统可能受到了攻击,他会主动站出来去处理问题,这时候他就是一名红军。而在平时,各个业务线也会有专门的值班机制来紧盯系统是不是受到了攻击。


蓝军有自己的故障挖掘平台,红军也练就了一身好的防御本领,祭出了全链路压测平台和资金监控平台,能很好的监测故障并进行预防。同时红军也加强了“故障自愈”架构体系升级及能力建设,以效能为目标,结合仿真,红蓝军一起研发了“无损”攻防体系,并且推出与之匹配的度量平台,自动度量攻防结果,将数据可视化。


红蓝军双方在相互较量中共同提高蚂蚁金服的技术风险防控能力。有时候蓝军发动的攻击会被红军的故障自愈体系防范住,这时候阿贵也会觉得“有点失落”。也有的时候会有红军找蓝军理论:这种低概率的问题为什么要费劲去改善?但是在阿贵看来,不管一个问题发生的概率有多低,都应该被注意到,并尽量对系统做改进以消除这些隐患。所以在红军感知到蓝军确实攻击到脆弱点之后,会及时进行修复,如果不能在短时间内修复的,也会和蓝军约定时间提交修复方案。


目前,常态红蓝技术对抗保持每周 200+个故障场景的节奏在持续运作。而在期末考期间,蓝军的攻击密度会大大提升,在一星期内对各业务线猛烈地发动大约 1000 个攻击。在期末考之前,红军也有个传统,就是拜关公,给关二爷孝敬点瓜子、旺仔牛奶甚至是格子衬衫,这也是蚂蚁金服独特的工程师文化之一。



大概从 2012 年开始,在每年备战双十一的时候,支付宝技术人都会拜一拜关公,而关公也从照片到木质再到铜质不断升级,成为支付宝人的一个传统:既是一种仪式感,也代表了支付宝人对技术的敬畏之心。


在期末考试中,红军会按照发现攻击的时间和故障恢复的时间来进行排名。去年,红军的第一名和最后一名分别获得了“金算盘”和“烂算盘”的奖品。阿贵对烂算盘印象深刻:是真的烂,铁杆绣到发黑,算珠也有缺口,“也就只有在淘宝上能买到了”。

考试有排名,目的不是争输赢

当被问到是希望红军赢还是蓝军赢,阿贵回答说,其实红蓝军攻防演练并不是为了要争谁输谁赢。而是双方在对抗的过程中都能不断反思升级,了解到蚂蚁金服全局系统中有哪些容易出问题的脆弱点,在现实生活中发生问题之前把问题免疫掉,再大的问题也能达到 5 分钟故障恢复的目标。因为金融行业关系到我们的日常生活,很多时候甚至会关系到整个社会的稳定。支付宝迄今全球活跃用户已超过 9 亿,安全稳定的技术系统是事关生死的基石。


除了平常的故障演练红蓝军技术攻防,蚂蚁金服还在前沿技术上不断探索,致力于打造更稳定安全的技术体系,如:


  • AI。使用人工智能技术进行校验业务。蚂蚁金服内部有四道安全防线:第一道是研发团队的代码,第二道是质量团队,第三道是 SRE 团队,第四道是人工智能技术。目前蚂蚁金服已经在其资金安全监控系统中使用 AI 技术,利用算法自动识别异常,做到故障自愈,再结合蚂蚁金服的 TRaaS 技术风险平台,可以覆盖蚂蚁金服 80%以上的业务。

  • 区块链。安全是区块链技术的一大特点,而金融行业是对安全性、稳定性要求极高的行业,所以当区块链技术刚被提出的时候,金融被认为是最主要的应用场景之一。蚂蚁金服也在探索区块链技术,比如用于做容灾等,在未来也计划打造安全可靠的区块链平台。


经过不断的打磨和锤炼,支付宝的技术风险防控体系已经具有较好的可靠性和稳定性。从蚂蚁金融科技官网上可以看到,这些技术风险相关的能力已经对外开放,目前共有 3 款产品,包括容灾应急平台、全链路压测和资金安全监控;另外,变更管控、巡检平台和黑屏运维管控即将上线对外开放。

写在最后

任何系统和软件都不可能做到十全十美,只要是人在写代码,就难免会有漏洞,难免有考虑不到的盲区。我们身处技术改善生活的时代,也需要对技术保持敬畏之心,居安思危未雨绸缪才能设计打磨出更加稳定易用的产品。当今年双十一能顺利完成再创新高的 2135 亿交易纪录,当支付宝能扛住 25.6 万笔/秒的交易峰值,这背后离不开这支蓝军队伍的专业“找茬”,也离不开所有支付宝技术人强烈的风险意识。


2018-12-22 09:003561
用户头像
张婵 InfoQ 技术编辑

发布了 87 篇内容, 共 55.6 次阅读, 收获喜欢 218 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

阿里巴巴 MCP 分布式落地实践:快速转换 HSF 到 MCP server

阿里巴巴云原生

阿里云 云原生 Higress

MySQL 可观测性最佳实践

观测云

MySQL

科研党必备!FlowJo 10 助力流式细胞术分析,一键出图,拒绝繁琐

Rose

高效缓存的10条军规

电子尖叫食人鱼

缓存

秒懂 AI Agent:概念、能力与智能体差异全解析

Techinsight

agent #人工智能 人工智能、

2025 开源之夏开启报名|AI + 云原生,10个开源项目、24个课题任您挑选

阿里巴巴云原生

阿里云 开源 云原生

VMware vSphere 9.0 下载 - 企业级工作负载平台

sysin

vSphere

Cosmos on PAI系列一:PAI-Model Gallery云上一键部署NVIDIA Cosmos Reason-1

阿里云大数据AI技术

人工智能 应用开发 Cosmos 模型服务 PAI

天润融通:Agent驱动的人效革命,引领客户服务智能化转型

天润融通

小红书私信如何高效管理?天润融通一站式客服解决方案来了!

天润融通

阿里云 Serverless 助力海牙湾构建弹性、高效、智能的 AI 数字化平台

阿里巴巴云原生

阿里云 Serverless 云原生

RPA机器人如何确保敏感数据的安全性

Techinsight

数据安全 #数据

VMware vCenter Server 9.0 下载 - 集中管理 vSphere 环境

sysin

vcenter

AlmaLinux 9.6 正式版发布 - RHEL 二进制兼容免费发行版

sysin

AlmaLinux

龙蜥开发者说:200+PR 背后的成长,且看他在社区的开源故事 | 第 31 期

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥开发者说

重磅揭秘!AI 搜索的 “链接是真,内容是编” 迷惑术!

Techinsight

深度剖析:AI 搜索的幻觉引用,为何如此难以察觉?

Techinsight

大模型幻觉 #大模型

VMware ESXi 9.0 下载 - 领先的裸机 Hypervisor

sysin

esxi

龙蜥操作系统衍生版 KOS 助力云天化石化打造卓越智能工厂 | 龙蜥案例

OpenAnolis小助手

操作系统 龙蜥社区 龙蜥案例 Anolis OS

硬核剧透!龙蜥社区系统运维联盟 MeetUp 全议程来啦

OpenAnolis小助手

AI 操作系统 系统运维 龙蜥社区 龙蜥meetup

01.数组深入浅出分析

杨充

java哪有这细糠啊,PHP是世界上最好的语言!

程序员郭顺发

天润融通助力卡尔蔡司,用可视化服务提升客户体验

天润融通

科研数学软件:MATLAB R2024a完整版安装教程

Rose

HR 必看!RPA 如何帮你从繁琐人资工作中 “解脱”?

Techinsight

人力云 人力资源产业

聊点技术 | PodMonitor与ServiceMonitor:Kubernetes 监控利器

博睿数据

RPA机器人流程自动化如何优化人力资源工作流程

Techinsight

人力资源 RPA评测 人力资源管理

F5《2025年应用战略现状》报告:AI 落地加速,企业战略从讨论迈向行动

科技热闻

AI 应用大起底:从生活场景到行业局限全知晓

Techinsight

#人工智能 AI 大底座 人工智能、

重拾童年,用 CodeBuddy 做自己的快乐创作者

不惑

CodeBuddy首席试玩官

Nessus Professional 10.8 | 10.6 Auto Installer for macOS Sequoia (updated May 2025)

sysin

Nessus

支付宝技术期末考:专业技术蓝军首次对外公开_文化 & 方法_张婵_InfoQ精选文章