HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

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

  • 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:003373
用户头像
张婵 InfoQ 技术编辑

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

关注

评论 1 条评论

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

程序员如何选择博客平台?

博客趣

个人博客 博客搭建 博客平台

为什么重写hashCode一定也要重写equals方法?

不在线第一只蜗牛

Java 基础

如何利用代理IP提升跨境市场竞争力?

IPIDEA全球HTTP

除了按值和引用,方法参数的第三种传递方式

EquatorCoco

技术 参数

云手机:TikTok运营的必备工具

Ogcloud

云手机 海外云手机 tiktok云手机 云手机海外版 tiktok运营

XSKY 亮相中国移动智算存储论坛,共话 AI 存储创新之路

XSKY星辰天合

mac屏幕录像软件:ScreenFlow for mac v10.0.10汉化版

你的猪会飞吗

mac软件下载 mac破解软件下载

深度解析RPA的特点、优势及其与AI的结合

八爪鱼采集器︱RPA机器人

RPA 自动化 RPAxAI

怎么都在劝我用通义灵码

阿里巴巴云原生

阿里云 云原生 通义灵码

ETL数据集成丨为什么没有做好ETL的BI工具最终都会失败?

RestCloud

数据处理 BI ETL 数据集成

图解Kafka:Kafka架构演化与升级!

王磊

无需多部备用机,云手机方便又便宜!

Ogcloud

云手机 海外云手机 云手机海外版 云手机群控 云手机推荐

ClkLog常见问题-埋点集成篇Sec. 1

ClkLog

优化财务运营管理,实现企业可持续进步

智达方通

企业管理 全面预算管理 财务管理

火山引擎谭待:日均10亿tokens是企业AI转型门槛

Geek_2d6073

创新引领未来:哈银消金双料大奖彰显数字金融新高度

Geek_2d6073

超八成读者这样阅读,是因为……

脑极体

AI

选对工具,‌事半功倍!‌详解10款项目管理神器

爱吃小舅的鱼

项目管理 项目管理软件

掌握VS Code:提升前端开发效率的秘诀

秃头小帅oi

怎么都在劝我用通义灵码

阿里云云效

阿里云 云原生 通义灵码

如何根据API返回值优化商品搜索关键词

技术冰糖葫芦

API Explorer API 测试 API】 API 策略

扫码填表时,如何快速填充上次提交的内容?

草料二维码

JNPF:一文详解可视化低代码开发平台的研究与应用

EquatorCoco

低代码 可视化开发

软件测试学习笔记丨SQL子查询实战练习

测试人

软件测试

AI驱动的商品计划软件:现代企业运营的核心引擎

第七在线

Footprint Analytics 深化 Arbitrum 生态系统数据分析能力

Footprint Analytics

区块链 公链 区块链数据

微软 Azure 推出文本到语音虚拟人;英伟达发布 8B 小语言模型,可在 RTX 工作站部署丨 RTE 开发者日报

声网

使用Packer构建镜像

快乐非自愿限量之名

大数据 Linux 服务器

YashanDB谈数据库未来出路和方向——回归商业本质 | YashanDB DTCC 2024 首秀

Geek_2d6073

RPA技术简介:RPA概念、应用场景和行业发展趋势

八爪鱼采集器︱RPA机器人

RPA 自动化 RPAxAI

大型数字化企业怎么定义?为什么说大型数字化企业更需要堡垒机?

行云管家

数字化 等保

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