登录 注册

登录

点子 2014年9月5日 Joomla之门 网站被黑客劫持及恢复经历概述

更多
2014年09月08日 00:01 #1 作者: Joomla之门
9月5日
我一直都很重视网站安全防护工作。但是没想到,有一天会被黑客无情攻破网站并造成如此大的损失!

2014年9月5日晚21时左右,我在忙完了其它工作之后,在浏览器地址栏输入了熟悉的 www.joomlagate.com 这个网址,回车之后那一幕让我瞬间惊呆了,原本应该显示的网站首页,现在是一个空白页面,只有左上角显示了简单的3个字符:
123

此外没有任何信息。

我立即意识到网站被黑客攻击了。抱着侥幸心理,我又刷新了几次页面,但是看到的依然是这个内容!

当时心情比较沉重,原因是:1、仅仅在1个小时之前,我还访问过网站,一切都正常 2、我上次备份网站是20天之前,一旦这次黑客将网站完全损坏,只能恢复到20天之前的样子,那么最近20天来新增的内容都将丢失!

我尝试访问网站后台,由于安装了 Admin Exile 插件来隐藏后台入口网址,我以为后台应该不会有问题。但是我错了,当我访问后台登录入口时,页面仍然显示了同样的3个字符:
123

除此之外,就是一片空白!

接下来,该怎么办?我能想到的首先是访问 FTP,如果能登录 FTP,就可以尽快下载站内文件,避免被黑客进一步损坏 —— 说不定黑客正在操作呢,我手快一点的话,还能抢救一些文件。

但是,FTP 也登录不上去了!

接下来尝试 phpMyAdmin,OK,这个总算还有效。于是登录进去之后,尽快对整个数据库进行了一次备份。

但是仍然无法对网站做什么,这时时间已经是午夜之后了,9月6日凌晨了。估计主机商也睡觉了,所以就没打扰他。我也困得睁不开眼睛,上床睡觉了。

-- - -- --- --- --- --- --- -- --- 分 割 线 -- - -- --- --- --- --- --- -- ---
9月6日

早上8点多,我联系了主机商 bithost,他们也刚刚发现了服务器被攻击,不仅是我的网站,几乎所有的 joomla 网站都被影响了。 —— 看来黑客不一定是专门冲着我的网站来,而是对整个服务器进行了攻击。

bithost 要我等待,他们在加班修复。

OK,我仍然无事可做,只能继续等。

一天就这么过去了。

-- - -- --- --- --- --- --- -- --- 分 割 线 -- - -- --- --- --- --- --- -- ---

9月7日

下午17时左右,收到 bithost 通知,已经重置了我网站在虚拟主机的账号。我开工了!以下简要记录修复的一些曲折过程,方便遇到同样情况的用户参考:

1、由于重置了账号,所以 FTP 也能登录了。按照以往经验,大多数黑客都是修改 /index.php 文件来使前台页面显示奇怪文字,或者他们的宣言等等。所以,我通过 FTP 检查了一下前台及后台的两个 index.php,看起来似乎没什么不妥(看文件修改日期及文件大小)。为了更放心一点,我干脆从 Joomla 核心原版安装包里面提取这两个文件,分别上传、覆盖。但是网站前台及后台仍然没变化,还是继续显示 123 。

2、随便浏览了几个目录,无意中看到 /libraries/cms.php 这个文件在9月5日被修改过 —— 这正是网站被黑客攻击的日期。马上下载该文件并检查,发现该文件确实被篡改过了,其内容只有 123 三个字符,没有任何其它内容。

解决办法:从 Joomla 核心安装包里面提取这个 cms.php 文件(这是核心文件),上传覆盖被篡改的文件。

3、接下来发现后台入口可以打开了。马上输入管理员账号、密码,准备登录,点击“登录”按钮后却显示了红色警告:

用户名或密码错误!

OK,看来黑客已经把我的管理员账号破解了,修改了管理员密码。

解决办法:登录到 phpMyAdmin,打开 #__users 数据表,找到管理员用户,修改密码。

4、密码修改之后,顺利登录了网站后台。没有看到黑客留下什么记号。庆幸网站后台还能工作。立即通过已安装的 Akeeba Backup 对整个网站进行了一次备份。

5、清除缓存之后,查看网站前台,发现前台首页可以顺利打开,但是其它任何菜单、链接,点击之后都是空白页面。

6、在后台“全局设置”中,开启“错误报告”,选择报告级别为“开发”,再刷新前台页面,发现那些空白页面这时候都输出了如下的错误提示:
Notice: Use of undefined constant __DIR__ - assumed '__DIR__' in /www/web/user/joomlagate_com/public_html/libraries/kunena/bootstrap.php on line 16
 
Fatal error: Uncaught exception 'RuntimeException' with message 'Library path __DIR__ cannot be found.' in /www/web/user/joomlagate_com/public_html/libraries/loader.php:251 Stack trace: #0 /www/web/user/joomlagate_com/public_html/libraries/kunena/bootstrap.php(19): JLoader::registerPrefix('Kunena', '__DIR__') #1 /www/web/user/joomlagate_com/public_html/administrator/components/com_kunena/api.php(36): require_once('/user/joomlagat...') #2 /www/web/user/joomlagate_com/public_html/plugins/system/kunena/kunena.php(31): require_once('/user/joomlagat...') #3 /www/web/user/joomlagate_com/public_html/libraries/joomla/plugin/helper.php(194): plgSystemKunena->__construct(Object(JDispatcher), Array) #4 /www/web/user/joomlagate_com/public_html/libraries/joomla/plugin/helper.php(125): JPluginHelper::_import(Object(stdClass), true, NULL) #5 /www/web/user/joomlagate_com/public_html/libraries/joomla/application/application.php(229): JPluginHelper::importPlugin(' in /www/web/user/joomlagate_com/public_html/libraries/loader.php on line 251

看上去似乎涉及到一些核心文件,还有 Kunena 论坛组件的文件。OK,我干脆用 Joomla 核心安装包(除去 installation 目录)重新覆盖一下网站的文件;接下来重新安装 Kunena 组件最新版本。

经过上面两个操作,网站前台这个错误依然存在。

7、我差点都要放弃了,因为实在想不出问题在哪里。无奈之下,进行了简单试验:在网站后台对网站进行全站备份(网站后台现在工作正常)。将备份包下载到本地 PC 上面,用该备份包在本地测试服务器上还原网站。欢迎之后发现,网站前台一切正常!

这是本次修复过程中最让我费解的地方!直到现在也没弄明白为什么。

顾不上去想那么多为什么了。我马上把远程主机上的网站清空,用这个备份包重新在远程主机商安装还原安装一遍,安装结束之后,发现后台、前台似乎都没问题了。刚才看到的那些出错提示再没出现,前台的菜单也能正常打开了 —— 你能阅读到这个帖子,就说明我已经能顺利使用论坛了。

-- - -- --- --- --- --- --- -- --- 分 割 线 -- - -- --- --- --- --- --- -- ---

本次网站被攻击所留下的深刻教训:

1、没有绝对安全的服务器。永远不能抱有侥幸心理。经常提醒自己:不做好安全工作,黑客就会乘虚而入!

2、备份!备份!备份!这个工作的重要性已经无法再强调了。一定要做好备份!并且,备份的频率,应该跟网站内容的变化频率相匹配。比方说:你的网站只是一个企业宣传网站,内容几乎半年都不增加(变化),那么,半年备份一次就够了;如果你的网站也像 joomlagate.com 这样,每天都有新内容(论坛上每天都有新帖子产生),那么,最好每天备份一次。

3、永远不要修改网站上的 Joomla 核心文件。这样,在你怀疑黑客修改了某个核心文件时,可以大胆用原版安装包上传覆盖。

4、一旦发现网站被黑,及时与主机商联系,或许是服务器被攻破了。这种情况下,如果主机商不修复漏洞,你单纯修复你的网站没有意义。

付费下载 Joomla 3 扩展汉化版: 我要付费支持 Joomla 之门!

登录 或者   注册一个会员帐号 来参与讨论

更多
2014年09月09日 17:10 #2 作者: noweb2008
有惊无险的确幸,解决了就好啊!

登录 或者   注册一个会员帐号 来参与讨论

更多
2014年09月09日 17:38 #3 作者: wangqiwei
我说那两天怎么不能正常访问,原来白站也再煎熬中,经验呀,备份、备份、再备份!哈哈,好在正常了,可要当心呀,目前他们的官方网站还不能正常访问,估计他们的技术人员也正在煎熬中

登录 或者   注册一个会员帐号 来参与讨论

更多
2014年10月17日 15:56 #4 作者: BZMT
刚注册缴费,来冒个泡!

登录 或者   注册一个会员帐号 来参与讨论