今天查页面的源代码时发现了一个问题,就是在
中有一段代码,将我某个页面中的表格内容给显示出来了。并且只有在管理员界面中才会出现,而游客访问因为受到限制(被显示的页面为项目名
命名空间下的)无法显示。更奇怪的是,被显示的是该页面中的某个特定表格。从上面两张图中不难发现,script中的代码就是我表格中的内容,但具体为什么会出现在那里真的一点头绪都没有。网上也搜不到相关的信息,不知道算不算是系统的BUG。代码部分是跟MediaWiki的resourceLoader.php有关。
<script>(RLQ=window.RLQ||[]).push(function(){mw.loader.load("……
而且该问题在匿名用户浏览时并不会出现,即便升级MediaWiki后该问题还是存在。
仔细研究内容的话会发现,这些被泄露出来的内容都被保存在visualeditor-findAndReplace-findText
的字段中。从网上有限的资料来看,貌似是一个bug。
打开MediaWiki的数据库,找上述内容中的一部分作为关键字进行搜索,果然有这么一项,位于user_properties
数据表下。
直接删掉visualeditor-findAndReplace-findText
那条记录(放心,删除了也会重新生成的)。
下图是重新生成后的结果,原本数据量为9.5k。
再次刷新页面,代码消失。
1 条评论
很高兴可以从谷歌搜索引擎看到你的文章,主题挺合适的。