部署了新子站点,回头一看,主站被赌场广告淹没了。
起因:部署了一个新子站点
最近我做了一个新的子站点——医学概念溯源,专门梳理常见医学概念的来龙去脉。比如某个疾病名称是怎么来的、某个诊断标准经历了怎样的演变……算是把平时查文献攒下来的那些"冷知识"整理出来。
部署完之后,我准备在子站点里加上主博客的链接,互相导流。于是顺手打开 alearnerlin.top,想确认一下博客正常运行。
然后我就愣住了。
打开主站,首页全是赌场广告
首页上堆满了外文内容——韩语、俄语、德语、波兰语、葡萄牙语、西班牙语、土耳其语……全是赌场和在线赌博的推广文章。我的"Joseph_Med Blog"标题还在,但内容已经被垃圾完全淹没。
刚部署完新站点的那点满足感瞬间消失。我心里一凉:几年的文章,不会都没了吧?
让 AI 帮忙诊断
我直接对 AI 助手说了一句:"你帮我看看我的博客的那些文章怎么全部被改了?"
AI 没有废话,直接开始行动:
- 网页取证——先抓取首页内容,确认垃圾内容的类型和规模
- API 侦察——通过 WordPress REST API 拉取了全部文章列表,42 篇一目了然
- 逐篇比对——检查了原始文章的修改时间和内容,确认它们没有被篡改
不到一分钟,诊断报告就出来了:
好消息:原始 20 篇文章内容完好,没有被修改
坏消息:从 7 月 17 日到 24 日,攻击者注入了 22 篇赌博垃圾文章
攻击入口:XML-RPC 大开,攻击者暴力破解了密码
更严重的是——数据库里竟然躺着 41 个恶意用户账号,全是 wp2shell、Nx 这类自动化攻击工具批量创建的。而我的博客只有一个真正的管理员:我自己。
AI 的清理过程:四步搞定
给了 AI 服务器 SSH 密码之后,它就开始自己干了。
第一步:删除垃圾文章
DELETE FROM wp_posts WHERE post_author = 29;
22 篇垃圾文章,一条 SQL 清空。首页从赌场广告变回了我熟悉的文章列表。
第二步:清理恶意用户
41 个攻击者账号,全部清除。数据库里只剩我一个人。
第三步:封堵 XML-RPC
这是这次被黑的元凶。WordPress 的 XML-RPC 接口默认开启,攻击者用它来暴力破解密码和批量创建用户。AI 在 Nginx 里加了两条规则:
# 直接拒绝 XML-RPC 的所有请求
location = /xmlrpc.php {
deny all;
}
# 防止通过 REST API 枚举用户
location ~ ^/wp-json/wp/v2/users {
deny all;
}
从此 /xmlrpc.php 返回 403,暴力破解路径被封死了。
第四步:修改管理员密码
换了更强的密码,防止攻击者用老密码重新登录。
为什么会被黑?
- XML-RPC 一直开着——WordPress 最经典的攻击入口,我的博客从搭建那天起就没关过
- WordPress 版本太老——还在用 5.9.3(2022 年的版本)
- 密码不够强——原来的管理员密码比较弱,容易被暴力破解
- Wordfence 没配好——安全插件装了但没真正启用
这次经历的几个感触
🧊 本来挺开心的,瞬间被泼了冷水
刚部署完新的子站点,想着能让两个站点相互引流,结果发现主站已经变成了赌场。那种从兴奋到崩溃的切换,太难忘了。
🤖 AI 的排查速度让我服气
从我说第一句话到完整诊断报告出来,不到两分钟。如果是自己排查,我得登录 SSH → 进 MySQL → 查表 → 比对 → 还得 Google 怎么封 XML-RPC。AI 直接在诊断的同时就开始修了。
这里必须感谢一下 DeepSeek,这次用的是 DeepSeek V4 Pro 驱动的 AI 助手。整个过程——从诊断到修复到写这篇博客——全部由它完成。国产模型能做到这个水平,真的很惊喜。
🔒 安全不能等出事了再搞
以前总觉得"小破博客谁来黑啊"。结果攻击者都是自动化扫描,根本不在乎网站大不大。XML-RPC + 弱密码 = 必被黑。
后续的加固清单
- ✅ 删除垃圾文章
- ✅ 删除恶意账号
- ✅ 封锁 XML-RPC
- ✅ 修改管理员密码
- ⬜ 升级 WordPress 到最新版
- ⬜ 配置 Wordfence 防火墙
- ⬜ 删除不用的主题和插件
- ⬜ 关闭用户注册功能
总结
一次有惊无险的安全事件。起因是想给新子站点加个链接,结果意外发现主站被黑了。
损失:零。所有文章都在。
收获:修好了安全问题,多了一个博客素材,还顺便给 DeepSeek 打了个广告(因为它真的配)。
如果你也用 WordPress,建议现在就检查一下:你的域名/xmlrpc.php 能不能访问?能的话,赶紧关了。
顺便安利一下我的新子站点 👉 医学概念溯源,喜欢医学史的朋友可以看看。
出事时间:2026 年 7 月 24 日
修复时间:2026 年 7 月 26 日
AI 引擎:DeepSeek V4 Pro via OpenClaw