用联系表格中的脚本隐藏“joomla”这个词

时间:2014-12-29 19:58:06

标签: joomla3.0

每当我在Joomla中创建联系表单时! 3.3.6,某些脚本出现在页面的HTML代码中,其中包含许多单词 Joomla 。我想更改那些 Joomla 字词,并用其他字词(即Foo)替换它们以解决某些安全问题。我想知道我是否能够这样做以及如何做到。

该脚本是:

<script>(function(){var strings={"JLIB_FORM_FIELD_INVALID":"\u0641\u06cc\u0644\u062f \u0646\u0627\u0645\u0639\u062a\u0628\u0631:&#160"};if(typeof Joomla=='undefined'){Joomla={};Joomla.JText=strings;}
else{Joomla.JText.load(strings);}})();</script>

我不知道插件或扩展程序是否创建它。

谢谢 此致

2 个答案:

答案 0 :(得分:1)

我认为你必须在整个目录中搜索脚本(即通过Notepad ++)。它必须是联系表单的插件,其中包含一些内联脚本。 你也使用任何特殊的第三方插件吗?这可能是它的来源。

PS:我也有类似的经历,我不知道我是怎么摆脱这些话的,但是和你一样,我想这样做是为了隐藏我使用joomla的事实安全

答案 1 :(得分:1)

此脚本似乎正在翻译表单在其javascript中使用所需的一些文本,例如验证消息。它使用javascript版本的JText来实现,它是核心Joomla的一部分。有一些关于它是如何工作的信息here。奇怪的是,官方的Joomla文档中似乎没有关于它的信息。

它调用的主要JText函数出现在这里:media / system / js / core.js

我确信在呈现页面之前可以编写一个插件来删除此脚本,然后使用您自己的脚本翻译任何未翻译的文本。但是,我不确定这样做会带来任何安全上的好处,所以这似乎是浪费时间。

最终,有人嗅探网站内置的内容更有可能通过直接转到media / system / js / core.js这样的地方来查看核心文件是否存在,而不是扫描代码中的单词&#34;的Joomla&#34; - 这会引发很多误报(任何刚刚提到Joomla的网站)和底片(任何没有形式的网页)。它也没有透露Joomla的版本,这是黑客更有可能追随的信息。