修复 Typecho 反序列化漏洞最直接有效的方法是升级至官方安全版本 1.2.1 或更高,并在安装完成后立即删除根目录下的 install.php 文件。
先说结论:Typecho 1.2.0 及以下版本存在反序列化漏洞风险,官方已在 1.2.1 版本修复,升级并删除安装文件是必要操作。
- 先判断:检查当前站点版本是否低于 1.2.1,确认是否仍保留 install.php 文件。
- 优先做:备份数据库和文件,下载 1.2.1 及以上版本源码覆盖核心文件。
- 再验证:访问后台确认版本号,尝试访问 install.php 确认无法直接利用。
命令速用版
如果你熟悉服务器命令行操作,可以参考以下流程进行备份和文件清理,具体升级建议通过后台或手动替换核心文件完成。
# 进入网站根目录
cd /www/wwwroot/your_site
# 备份当前程序文件
tar -zcf typecho_backup_$(date +%F).tar.gz .
# 删除 install.php 文件(升级完成后)
rm install.php
# 检查文件权限,确保配置文件不可写
chmod 644 config.inc.php为什么会这样
漏洞根源在于 install.php 文件未对 Cookie 中的__typecho_config 参数进行安全校验,导致攻击者可构造恶意序列化数据执行代码。
Typecho 在安装完成后,install.php 本应不再使用,但旧版本未强制删除或禁用该文件。攻击者通过构造特定的 Cookie 值,利用 PHP 的 unserialize 函数触发反序列化漏洞,进而调用__toString 或__get 魔术方法形成利用链,最终实现命令执行。官方在 1.2.1 版本中修复了相关逻辑并增强了输入过滤。
分步处理
按照以下步骤操作可确保漏洞修复且不影响站点正常运行,每一步完成后请确认无误再进行下一步。
1. 全量备份
在操作前务必备份数据库和整个网站目录,防止升级过程中出现兼容性问题导致站点无法访问。可通过主机控制面板或 mysqldump 命令导出数据库。
2. 确认当前版本
登录 Typecho 后台,在底部查看版本号。如果显示 1.2.0 或更低,或者无法登录但文件存在,均视为受影响版本。公开资料中没有看到可靠的量化数据统计具体受影响站点数量,但安全社区普遍建议所有旧版本用户升级。
3. 下载安全版本
访问 Typecho 官方 GitHub 发布页面下载 1.2.1 或更新版本。不要从第三方不明来源下载,避免植入后门。
4. 覆盖核心文件
解压 downloaded 包,将除 config.inc.php 和 user 目录外的核心文件覆盖到网站根目录。保留配置文件确保数据库连接不变。
5. 删除 install.php
升级完成后,立即删除根目录下的 install.php 文件。这是防止漏洞被利用的关键物理隔离措施。
怎么验证是否生效
修复完成后,通过以下方法确认漏洞已修复且站点功能正常。
1. 版本核对
后台首页底部应显示 1.2.1 或更高版本号。
2. 文件检查
使用 FTP 或文件管理器确认根目录下不存在 install.php 文件。
3. 漏洞测试
尝试访问 http://yourdomain/install.php,页面应提示错误或跳转,不应显示安装界面。使用安全扫描工具检测反序列化漏洞应显示不存在。
常见坑
处理过程中容易遇到以下问题,需提前注意规避。
1. 主题兼容性问题
部分旧主题可能不兼容新版本核心代码,升级后若前台显示异常,建议暂时切换回默认主题排查。
2. 配置文件权限
升级后检查 config.inc.php 权限,建议设置为 644 或 444,防止被恶意写入。
3. 插件冲突
某些旧插件可能调用已废弃的接口,升级后若后台报错,需禁用可疑插件并联系作者更新。
常见问题
只删除 install.php 不升级可以吗?
不建议,删除文件只能防止通过该入口利用,但代码层面的反序列化风险仍可能存在于其他调用链中,升级才是根本修复。
1.2.0 版本是否安全?
不安全,公开漏洞分析指出 Typecho <= 1.2.0 均受影响,必须升级至 1.2.1 或更高版本。
升级后需要重新安装吗?
不需要,覆盖核心文件并保留 config.inc.php 即可,数据不会丢失,但建议操作前备份数据库。
参考来源
- Typecho 重大漏洞,官方已发布 1.2.1 版本修复此问题,https://github.com/typecho/typecho/releases/tag/v1.2.1-rc
- Typecho CMS 反序列化漏洞 (CVE-2018-18753) 复现,漏洞影响版本:Typecho <= 1.2.0
- Typecho install.php 存在的反序列化漏洞分析 (含 EXP),FreeBuf 原创奖励计划