joomla之门
修改默认的 jos_ 数据表前缀
以管理员身份登录到 Joomla! 后台;
进入“全局设置”(global configuration),找到“数据库”标签页,修改原来的数据表前缀 jos_ 为新的前缀(例如:fdasqw_),然后点击“保存”;
通过 phpMyAdmin 访问你的网站数据库;
点击“导出”(export)标签页,所有参数保持默认值,直接点击“执行”按钮。导出过程可能需要一点时间;
导出完成后,打开得到的 sql 文件,选择全部代码并复制,然后粘贴到文本编辑器(例如:Notepad++);
从 phpMyAdmin 中选择你数据库中的全部数据表,删除它们;
在 Notepad++ 中,利用“查找替换”功能,将全部 jos_ 字串替换为刚才设置的新前缀(fdasqw_);
完成替换后,复制全部代码。进入 phpMyAdmin,点击 SQL 标签页,将这些代码粘贴到输入框,然后点击“执行”按钮。
去掉第三方扩展的名称及版本号
大多数安全漏洞只存在于特定扩展的特定版本中。因此,为了防止黑客根据扩展名称及版本号来迅速寻找“肉机”,就有必要去掉网站前台显示的第三方扩展的名称及版本号。
有些开发人员会在后台参数中留下“是否显示作者版权链接”的选项,对于这些扩展,我们选择“否”即可;大多数第三方扩展的作者都会在前台留下一个版权链接,里面含有该扩展的名称和版本号。去掉这些 hardcod 方式的版权链接的方法是:
假设有一个 com_extension 扩展,将 /components/com_extension 目录复制到 PC 上,用 Notepad++ 打开其中一个 php 文件,然后使用“在多个文件中搜索”功能(勾选“搜索子目录”),搜索前台所显示的那个字串,找到之后直接从源代码中删除即可。
使用 SEF 友好网址组件
SEF 友好网址不仅有利于网站的搜索引擎优化(SEO),也有利于提高安全防护作用。原因是:如果不启用 SEF,则 Joomla! 默认的页面 URL 中会含有第三方扩展的名称,如网址中 option=com_contact 这部分,这里 com_contact 就是“联系人管理”组件的名称。
黑客当然不是通过肉眼来寻找 URL 里面的扩展名称,他们会使用 Google 搜索技巧中的 inurl 方法来快速寻找。
推荐使用 Artio JoomSEF,或者 sh404SEF,或者其它某个 SEF 组件来对 Joomla! 默认的动态网址进行静态化重写,一方面隐藏了扩展名称,另一方面也增强了 SEO 效果。
使用最新版本的 Joomla! 核心及扩展
经常了解一下你正在使用的 Joomla! 核心和第三方扩展是否有了新版本。如果有新版,就尽快升级。一般来说,新版本总是能够修复旧版的安全漏洞或功能 bug。
给目录及文件设置正确的权限(chmod)
只有当某个脚本会写入到目录或文件时,才将该目录或文件的权限设置为 777 或 707。其它所有文件和目录的权限都应该设置如下:
PHP 文件:644
配置文件:666
其它目录:755
joomla之门提示:这里所说的 CHMOD 权限系统是 linux/*nix 服务器平台特有的功能,如果你使用的是 windows 平台服务器,就没有这个功能。强烈建议将 Joomla! 运行在 Linux 服务器上。
及时删除残留文件
有时候你可能安装了某个扩展之后不久又不喜欢它了,多数用户这时会进行“取消发布”操作,而不是“卸载”。如果是“取消发布”,则该扩展的文件仍然存放在你的网站空间,如果该扩展的 PHP 文件正好存在一个安全漏洞,就很可能被黑客利用。因此,当你不再需要某个第三方扩展时,立即将它彻底删除,而不要“取消发布”。
Joomla!之门提示:当你通过 Joomla!后台卸载某些组件后,其数据表或许并未删除。如果你确认不再需要该组件,建议通过 phpMyAdmin 将其数据表也彻底删除,以免某个设计不严谨的数据表遭到 SQL Injection 劫持。
修改 .htaccess 文件
用文本编辑器 Notepad++ 打开你 Joomla 网站根目录下的 .htaccess 文件,添加下面的代码进去:
以下为引用的内容:########## Begin - rewrite rules to block out some common exploits## Block out any script trying to set a mosConfig value through the URLrewritecond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [OR]# Block out any script trying to base64_encode crap to send via URLRewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]# Block out any script that includes a < script> tag in URLRewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]# Block out any script trying to set a PHP GLOBALS variable via URLRewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]# Block out any script trying to modify a _request variable via URLRewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2}) [OR]# Block out any script that tries to set CONFIG_EXT (com_extcal2 issue)RewriteCond %{QUERY_STRING} CONFIG_EXT([|%20|%5B).*= [NC,OR]# Block out any script that tries to set sbp or sb_authorname via URL (simpleboard)RewriteCond %{QUERY_STRING} sbp(=|%20|%3D) [OR]RewriteCond %{QUERY_STRING} sb_authorname(=|%20|%3D)# Send all blocked request to homepage with 403 Forbidden ERROR!RewriteRule ^(.*)$ index.php [F,L]########### End - Rewrite rules to block out some common exploits
(原文地址)
相关阅读
ab是一种用于测试Apache超文本传输协议(HTTP)服务器的工具。apache自带ab工具,可以测试apache、IIs、tomcat、nginx等服务器但是ab没
深度 | 从Go高性能日志库zap看如何实现高性能Go组件 原创: 李子昂 高可用架构 导语:zap是uber开源的Go高性能日志库。本文作者
小编为大家带来最新的显卡天梯图(更新至2017年1月)。我们知道显卡天梯图是可以查看历来重要的显卡性能排行榜,一目了然的梯度排名可
一、TCP协议的特点 TCP全称为 “传输控制协议”(Transmission Control Protocol),顾名思义, 要对数据的传输进行一个详细的控制。
到今天双十一就算是过完了吗?不,还没有呢?接下来还有一大波福利向你奔来,让你回回血。那么再见双11是什么活动呢?seo实验室小编这就