ShinyHunters 留在 Canvas 登录页的勒索信(敏感 URL 已涂抹)

图片来源:社交媒体流传截图;底部攻击者活动 IP 与 onion 联络地址已涂抹。

事情还在恢复

写这篇的时候,Instructure 的状态页还挂着“Partial Outage”。Canvas 主站对大部分用户已经恢复,Beta 和 Test 环境还在维护。换句话说,今天能登进去交作业,但事还没完。

时间线大致是这样:5 月 7 日下午两点四十一(美国山地时间),Instructure 开始排查异常;五点半前后,Canvas、Beta、Test 三个环境一起进了维护模式;当晚九点过后,主站对多数用户恢复。维护期间有人访问 Canvas,看到的不是登录页,而是 ShinyHunters 留下的勒索信。攻击者给的截止日期是 2026 年 5 月 12 日。

ShinyHunters 这帮人是有“业绩”的。过去几年,Snowflake 客户数据外泄、Salesforce 钓鱼一系列事件,他们都被点过名。这次他们声称影响了全球大约 9000 所学校,规模没被独立验证,但已知确实波及了美国、英国、新西兰、澳大利亚、瑞典、荷兰几个国家——美国中西部多所大型公立大学、英国的研究型高校、南半球几所综合性大学都在名单里。

Instructure 是谁,为什么全球这么多学校都在用

Canvas 背后的公司叫 Instructure,2008 年由两位 BYU 的研究生创立,2011 年正式推出 Canvas LMS。早期最重要的一笔生意是 2010 年和 Utah Education Network 签的全州合同——犹他州所有公立中小学和大学一口气迁到 Canvas,到 2014 年用户数就突破了 450 万。

资本路径很有“教育 SaaS 标本”的味道。2015 年纽交所 IPO,2020 年被私募基金 Thoma Bravo 以 20 亿美金私有化,2021 年再次上市(股票代码 INST),2024 年 11 月又被 KKR 联手 Dragoneer 以 48 亿美金私有化。十年里上市退市来回两次。这种节奏对一家关键基础设施公司不是什么好事,每次易主,研发和安全预算的优先级都要重新洗牌一次。

据 2024 年底到 2025 年初的 LMS 市场估算,北美高等教育市场按入学人数加权,Canvas 大约 50%,D2L Brightspace 20%,Anthology Blackboard 12%,Moodle 9%;按机构数量算,Canvas 39%,Blackboard 19%,Moodle 和 Brightspace 各 16%。2025 年秋出现了一个数据,Canvas 的市占率第一次超过了后面三家加起来。Instructure 自己的口径是全球 2800 多万常规用户、约 4000 所机构,办公室在盐湖城、伦敦、悉尼、圣保罗。欧洲是个例外——Moodle 在欧洲占 25%,开源加上数据本地化更对欧盟高校的胃口。

为什么 Canvas 能赢?几条原因。一是云原生起步:2011 年它推出的时候,Blackboard 还在卖让学校自己装的传统软件,Canvas 一开始就是 SaaS,升级、可用性、新功能上线节奏全部碾压。二是开放接口做得早,Turnitin、Zoom、Panopto、Respondus 这些第三方工具接进 Canvas 比接 Blackboard 顺得多。三是教师 UX 确实更顺手,评分流程、SpeedGrader、作业反馈这些日常功能老师投票权很大。最后是销售策略狠,早期对州级、地区级合同打折激进,一个学区一个学区把 Blackboard 的客户挖过来。

但这些“赢的理由”反过来看,正好是这次事件严重的原因。深度集成意味着 Canvas 一挂,Zoom 录像、Turnitin 查重、第三方教学工具会跟着一起停摆;云原生集中意味着没有“本地服务器还能撑一会”的退路;市占率太高意味着想换都换不掉——今天告诉一所学校把 Canvas 换成 Brightspace,光迁移项目就够忙一两年。

数据泄露的边界

Instructure 现在的口径是:被涉及的信息包括姓名、邮箱、学生 ID、用户之间的消息;不包括密码、出生日期、政府身份证号、金融信息。

这个区分关键,但容易被忽视。

从合规角度看,“姓名+邮箱+学生 ID” 在 GDPR 下已经构成个人数据,落到欧盟成员国的学校(瑞典、荷兰)就会触发 72 小时通报义务。“用户之间的消息”更敏感。师生在 Canvas Inbox 里聊的不只是寒暄,还有成绩申诉、心理状况、推荐信讨论、纪律处分沟通。这些内容如果被打包扔出来,造成的二次伤害比泄露邮箱大得多。

我自己更想知道的是 scoping 那部分。被读取的是数据库快照还是只有部分表?攻击者在系统里待了多久(停留时间是判断“侦察”还是“自动化抓取”的关键)?走的是哪条路径,凭据钓鱼、Token 重放,还是供应链上某个第三方组件?静态数据加密是否生效,密钥管理在哪一层?这些 Instructure 大概率不会在第一周公开,但 60 到 90 天后出的 incident report,会是北美高校下一轮续约谈判桌上最重要的筹码。

为什么是现在

5 月初对北美和英国高校来说,是最坏的时间点。期末考试、final paper 提交、毕业判定、转学申请截止,所有需要时间戳证据的事,全堵在这一周。

这个时间点几乎可以肯定也是压力的一部分。一所学校三天登不进 LMS,行政上还能找补,推迟 deadline、邮件提交、纸质考试都行;但教务系统、学籍审核、毕业资格判断要回头补登记,每一步都是行政成本。这个业务连续性压力本身就是勒索筹码的一部分。

更深一层的问题是,Canvas 已经成了真正意义上的“教育公共基础设施”。Instructure 这一家公司能不能开门,决定了全球几千所学校、几千万师生今天的工作能不能跑。这种集中度过去十年被叫做“规模效应”,今天看就是单点故障。

从学生的角度看

Canvas 是很多学生每天打开的第一个标签页,看课表、交作业、收成绩、跟教授发消息,谁也没把它当成会出事的东西,直到登录页变成勒索信。

经过这次,有几件事值得重新捡起来。

第一是本地备份。重要的作业稿、和教授的邮件往来、推荐信讨论,能存本地就存本地。云端同步是便利,不是托管,把云当成“我的硬盘永远在那儿”早晚要踩坑。

第二是账号隔离。学校账号、个人邮箱、别的 SaaS 服务,密码不要复用。这次泄露虽然不含密码,但邮箱加学生 ID 的组合已经够下一轮钓鱼用了。攻击者会拿这些信息冒充教务通知、图书馆催还、奖学金邮件,比那些泛滥的钓鱼邮件可信得多。

第三是关键 deadline 留双通道证据。作业提交、缴费、注册截止,只在一个系统里留痕,就只在一个系统里担风险。截图加邮件回执加 PDF 留底,三十秒的事,真出问题的时候省一堆解释。

从合规者的角度看

跳出“这次有没有伤到我”,这事真正值得记下来的是几个评估输入。

一个是集中度风险。一个 SaaS 挂掉几个小时,你的工作还能不能跑?答不上来,或者答案是“不能”的那部分,就是下次做风险评估该写进矩阵里的内容。

一个是供应商安全成熟度怎么观测。SOC 2 是审计公司发的安全合规报告,销售在采购阶段会拿出来证明“我们有控制措施”——但它是一份文件,做完那一刻就过期了,告诉不了你这家公司真出事的时候反应怎么样。Instructure 这次的状态页更新频率、措辞透不透明、对数据涉及范围承认到什么程度,这些才是下一轮采购谈判桌上更有用的材料。

再一个是数据分类的颗粒度。这次的泄露公告把“用户消息”和“密码、出生日期”分开放在不同篮子里,是正确做法,但前提是平时数据分类做得够细。换到自己身上想想,如果今天系统出事,你能不能也用同样的颗粒度说清楚“哪些走了,哪些没走”?答不出来就是欠的功课。

最后是时间点。攻击落在期末季不是偶然。任何有明显业务节奏的组织,财报季、双十一、税季、入学季,都该在节奏高点前做一次“如果今天 SaaS 挂了”的桌面演练,不是为了走流程,而是真把交班、降级、临时通道这些东西跑一遍。

接下来看什么

5 月 12 日是攻击者宣称的截止日期。Instructure 谈不谈判都不会公开说,但那天前后大概率会有新的披露——要么是数据真被放出来,要么是 Instructure 出新声明,或者两者都有。

未来一两周看北美各校的官方通报。学校自己的 IT 和 Privacy Office 会陆续给出本校受影响的细节,这部分通常比 Instructure 的全局通报具体得多。

60 到 90 天后看完整的事件复盘。这才是判断 Instructure 安全成熟度真正的关键材料,也是接下来续约谈判会被反复引用的东西。

恢复进度条还在跑。我会更新这篇,或者写续篇,取决于 12 号之后真发生什么。