summary
2016-10-04,Level 3(现 CenturyLink)一名技术人员在反欺诈操作中,于网络管理软件「封锁电话号码」字段留空(本应填入号码),软件未忽略空字段反而将其视为通配符,导致 Level 3 网络在 84 分钟内阻断了全美约 1.11 亿通呼叫,包括 911。
timeline
美东时间 10:06–11:30(84 分钟)内,Level 3 网络阻断所有来电;系统约 4 分钟后告警,技术人员排查并请软件供应商改配置修正;影响约 2940 万 VoIP 用户与 230 万无线用户,117 次 911 呼叫中有 15 次未能接通 PSAP。
root_cause
网络管理软件的黑名单系统将空字段当作通配符,匹配「所有非 Level 3 网络的来电」并全部拦截。FCC 认定责任在软件供应商的编码缺陷与不佳的 GUI,技术人员不知留空后果。
amplifiers
① 空字段被当通配符,单点误操作即全国阻断。② GUI 反直觉,未对空值做校验。③ 影响国家级(NORS 史上最大电话中断)。④ 911 冗余救回多数,但仍 15 次失败。
mitigation
Level 3 改用独立的 provisioning 系统处理号码封禁,移除 800+ 不应有的技术员账户权限;供应商修正配置。
lessons
关键运维软件的输入必须做合法性校验(空值=无效而非通配);高危操作界面应防呆;对影响全国的变更须有即时告警与快速回退。
checklist
① 运维软件对空/非法输入做校验而非通配。② 高危 GUI 增加防呆与确认。③ 全国级变更即时告警。④ 收敛管理员权限(最小权限)。