2026年10月下旬,全世界的软件开发者度过了忙碌的一周。在10月20日和21日短短两天里,大量网站和应用所依赖的PHP、Node.js和Java相继发布了一批安全漏洞的修复版本,其中一些漏洞可以让未登录的攻击者在服务器上执行代码。

如果你看到这条新闻,担心孩子用的应用是否安全,先说结论:Dino Kids的服务器在修复版本发布当天,也就是2026年10月21日晚上,就已经运行修复后的PHP;孩子在iPad、iPhone和Android手机上使用的应用,并不使用这三种技术。下面用我们在实际运行的系统上核对过的数据,逐一说明。
发生了什么
- PHP。10月21日,PHP团队发布了8.5.12、8.4.27、8.3.36和8.2.35,修复了CVE-2026-109618和CVE-2026-109619两个漏洞,安全业界称之为“php2shell”。两者在CVSS 4.0中均为9.2分(严重):没有账号的攻击者也能让服务器执行自己的代码。由于细节在预定公开日之前就在社交媒体上泄露,PHP紧急发布了修复版本,当天就观察到了真实的攻击;10月26日,美国网络安全和基础设施安全局(CISA)将其列入“已被利用的漏洞”目录。PHP明确表示,任何配置修改都无法完全防御,唯一的办法是更新。
- Node.js。同在10月21日,Node.js在22、24、26三个版本系列中修复了10个漏洞(其中4个为“高”)。最严重的是CVE-2026-111497:损坏的Brotli压缩数据可能导致远程代码执行。已停止支持的Node.js 20及更早版本没有修复版本。
- Java。10月20日,Oracle发布季度补丁,修复了Java SE的55个漏洞;第二天又发布紧急修复CVE-2026-91403(9.1分),问题在于即使印度证书机构eMudhra的私钥已经泄露,Java仍可能继续信任其证书。
三个平台同时发布补丁是巧合,但后果是一样的:更新慢的系统几乎马上就会被攻击者扫描。
Dino Kids由哪些部分组成
是否受影响,取决于用什么做成。Dino Kids由三部分组成:
- iPad、iPhone和Android上的应用用Flutter(Dart语言)开发,不包含PHP、Node.js或Java SE,因此不在这次修复的影响范围内。
- 服务器负责账号同步、涂色图库和语音,运行PHP 8.5和Laravel。这部分在php2shell的影响范围内。
- 网站dino-kids.digidinos.com是预先生成的静态页面,展示页面时不运行Node.js或Java,因此也不在影响范围内。
真正需要紧急处理的只有服务器。
服务器何时完成修复
我们不想只说一句“已经更新”。以下是2026年10月29日在为应用提供服务的服务器上核对的结果:
- PHP 8.5.12于2026年10月21日23:04(越南时间,北京时间22日0:04)安装,处理应用请求的PHP进程随即在23:05重启。修复版本不只是放在磁盘上,而是确实在运行。那正是PHP发布修复的同一天。
- 没有任何Node.js或Java进程为应用提供服务。Dino Kids的服务器只运行PHP,管理后台的界面也是手写文件,不需要用Node.js构建。
- Dino Kids的HTTPS证书由Google Trust Services签发,与eMudhra无关。
- 10月29日,我们还重新检查了服务器前端的整条链路,并把中转服务器的HTTPS加密库更新到了最新版本。
- 所有源代码改动都必须通过自动化测试才能部署到服务器。PHP 8.5.12这样的更新能在几小时内上线而不破坏任何功能,也是因为测试早已在同一个PHP 8.5系列上运行。
为什么能这么快
没有什么魔法,只有三个习惯:
- 始终使用最新的版本系列。Dino Kids的服务器运行的是仍在支持中的最新系列PHP 8.5和Laravel 13。版本越旧,出现漏洞时越容易被抛下:这一次,PHP 8.1及更早版本、Node.js 20及更早版本都没有官方修复。
- 从能尽早提供修复的软件源安装。服务器上的PHP软件包来自紧跟PHP官方发布的软件源,因此当天就拿到了修复,不必像许多操作系统的默认软件源那样等上几天。
- 让软件保持精简。应用内部不带任何服务器或解释器,网站是静态页面。运行的部件越少,需要修补的地方就越少。
家长需要做什么吗
几乎不需要。如果想更安心,可以做两件小事:
- 把设备的操作系统(iPadOS、iOS、Android)更新到最新。大部分安全修复,包括与证书有关的变更,都是通过Apple和Google的更新送到你的设备上的。
- App Store或Google Play提示有新版本时,更新Dino Kids。
你不需要因为这次漏洞修改密码。再提醒一次:Dino Kids无需账号即可使用全部功能,应用里没有任何第三方广告或追踪工具。哪些数据会发送到服务器、为什么发送,我们都写在了隐私政策里。
坦白说
没有绝对安全的系统,我们也不会这样承诺。我们能承诺的是:持续关注Dino Kids所依赖软件的安全公告,有修复就立即应用,出了问题会如实告诉你。如果你发现任何异常,或者你是想报告漏洞的安全研究人员,请写信到dinokids@digidinos.com。
参考资料
- PHP,PHP 8 ChangeLog(8.5.12条目)。
- watchTowr,CVE-2026-109618: Exploited Remote Code Execution in PHP。
- Node.js,Wednesday, October 21, 2026 Security Releases。
- Oracle,Critical Patch Update Advisory - October 2026。