UEditor 是一款颇为老旧的富文本编辑器,曾经普遍流行过所以在一些老的项目里面,还会存在。但是该项目到目前为止已经永久停止更新,所以当发现漏洞时,只能自己维护。最好停止使用并更换富文本编辑器组件,个人推荐modstart-lib/ueditor-plus、Notadd/Neditor。这些都是UEditor为核心的二次开发项目,方便升级。
1、漏洞原理
网上关于这个漏洞已经有了十分详细的解释、各路大神已经指明了道路,这边简单介绍一下出现的位置与原理。
1.1出现漏洞的代码位置
文件上传漏洞影响UEditor 的.Net版本,其他版本暂未影响,漏洞出现在图中的CrawlerHandler.cs中,其中controller.ashx是入口。
UEditor 在抓取远程数据源的时候,会进入【catchimage】这个分支里面。然后就进入了漏洞出现的CrawlerHandler类中