fckeditor编辑器漏洞
2009年某个深夜,辑器某政府网站被挂上黑色横幅,漏洞管理员凌晨三点爬起来一看——服务器成了别人的辑器“肉鸡”。攻击者用的漏洞不是什么高深0day,而是辑器fckeditor那个传了十年的“经典”漏洞。这玩意儿比大多数网管的漏洞工龄还长,可直到今天,辑器它依然能撬开一堆老站点的漏洞门。 fckeditor,辑器一款诞生于2003年的漏洞富文本编辑器,PHP/ASP/JSP通吃,辑器当年几乎每个建站教程都推荐它。漏洞它的辑器漏洞史就是一部“裸奔史”,其中最臭名昭著的漏洞是文件上传漏洞——默认配置下,它允许你直接上传任意文件,辑器包括PHP webshell。你只要把“shell.php.jpg”这种双后缀名文件传上去,服务器解析时就能直接执行代码。更离谱的是,某些版本连文件名过滤都没有,直接传个“shell.php”也照单全收。 有人可能会问:这漏洞都公开多少年了,官方早就发布补丁了,怎么还有站点中招? 现实很骨感。很多政府、教育、老企业网站用的是十年前的CMS系统,后台嵌着老版fckeditor,运维人员换了一茬又一茬,没人敢动核心代码——怕改坏了影响整个站。补丁?不存在的,能跑就不动。这就好比你家老房子水管锈穿了,但房东说“别修,修了墙会塌”,于是你只能天天拿桶接水。攻击者最喜欢这种“稳定”环境,扫描器一挂,全网搜“fckeditor/editor/filemanager/connectors”路径,一抓一个准。 还有个隐蔽的坑:connector探测漏洞。fckeditor的服务端连接器(connector)默认开启目录浏览和文件操作功能,攻击者可以直接通过URL枚举服务器目录结构,甚至读取敏感配置文件。我见过一个案例,某企业官网用fckeditor上传产品图片,结果攻击者顺着connector路径翻到了web.config,里面明文写着数据库连接字符串。整个过程不到五分钟,比点外卖还快。 你以为这就完了?不,还有跨站脚本(XSS)。fckeditor的某些版本在解析图片属性时,对“onerror”事件过滤不严,攻击者构造个恶意图片标签,当管理员在后台预览内容时,脚本就悄悄执行了。轻则窃取管理员cookie,重则直接后台沦陷。这种攻击最阴的地方在于——受害者压根不知道编辑器是入口,还以为是服务器被“黑科技”入侵了。 为什么到现在还有人在用?说白了,换编辑器成本高。老系统里几千篇文章的格式、图片路径、附件链接全绑在fckeditor的DOM结构上,迁移到新编辑器(比如CKEditor)得改模板、改数据库、改前端样式,工作量巨大。很多单位宁可每年花钱请安全公司“加固”,也不愿动这老祖宗。可加固只是打补丁,补丁总有绕过方式——比如用畸形编码绕过后缀名过滤,或者直接调用旧版connector接口。 另一个现实是,新手程序员压根不认识这玩意儿。我认识个做渗透测试的朋友,他说现在扫站遇到fckeditor,反而觉得“亲切”——因为漏洞利用代码太成熟了,GitHub上一搜一大把,连小学生都能照着跑。相比之下,有些新编辑器虽然也有漏洞,但至少得花点心思研究。 最后说句掏心窝的:如果你还在维护老站点,别迷信“改个配置就安全”的鬼话。最彻底的办法是断臂求生——备份数据,重写前端,换用现代编辑器。实在没预算,至少把connector目录的权限改成只读,再给上传目录加个“禁止执行脚本”的规则。不然哪天半夜三点,你可能就得爬起来看服务器上多出来的那个“test.php”文件了——那可不是什么好兆头。fckeditor编辑器漏洞:一个老古董为何至今仍在“作妖”
-
上一篇
-
下一篇