Archive for 8月, 2007

服务器受到Arp欺骗攻击

星期二, 8月 21st, 2007

前几天就看到服务器日志记录一大堆网关的网卡Mac地址在 00:1a:6c:53:11:47 和 00:20:ed:13:c1:32 换来换去,觉得挺奇怪,也没怎么在意。
之后服务器上一个站点被人插入cool.47555.com的病毒代码,查到服务器上文件被修改,因为那个站点的程序也论坛都是从网上下载,以为是有漏洞被利用修改了服务器上的文件,结果把程序都删除了事。
可是第二天服务器上的另一个站点也被插入代码,继而服务器上的所有站点的所有网页都被插入了代码,查看服务器上的文件又没有被插入的代码,服务器也没有被入侵的痕迹,想到网关的网卡Mac地址的变化,应该是在机房有台服务器使用Arp欺骗使得所有数据包通过它,然后插入代码转发给网关,使用命令: arp -a 查看,网关的Mac是 00:20:ed:13:c1:32 ,这个Mac一定有问题,使用命令:

arp -s 网关ip 00:1a:6c:53:11:47

设置网关的Mac为 00:1a:6c:53:11:47 ,再次访问,果然没有了插入代码。

第二天把情况反馈给机房处理,应该是有台服务器有漏洞被黑被利用了,通过网络查找 cool.47555.com ,发现有很多人都被这个站点的恶意代码所困扰,这种情况确实很难发现和处理,并且Ftp和网站用户密码都可能被截获,从而造成更大的破坏。

Apache日志记录通过squid反向代理访问的客户端ip

星期三, 8月 15th, 2007

通过squid反向代理访问时,apache日志中,不管使用 %h 还是 %a 格式字符串,记录的都是代理服务器的ip,而不是客户端的真实ip。

在squid发到apache的http请求头中有一项: X-Forwarded-For ,是真实客户端的ip,可以在apache中定义日志格式,把 %{X-Forwarded-For}i 代替 %h 就可以记录客户端的真实ip。

在 httpd.conf 中定义:

LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Host}i\" \"%{Referer}i\" \"%{User-Agent}i\"" combinedIpHost
CustomLog logs/access_log combinedIpHost

其中 %{X-Forwarded-For}i 为客户端真实ip, %{Host}i 是访问的主机名,如果网站绑定多个域名时,可以区分是通过那个域名访问的, %{Referer}i 是引用页,其他格式可以通过Apache文档找到。

JavaScript全屏漂浮广告代码

星期六, 8月 11th, 2007

广告图片全屏漂浮,鼠标放上去停在浮动,鼠标移出后继续浮动,JavaScript代码: (more…)

PHP生成文件自动下载

星期六, 8月 11th, 2007

通过php把数据库中的内容生成文件,让客户端自动下载,代码:

<?php
$cont = 从数据库中读取的内容;

$cont_len = strlen($cont);

Header(”Content-Disposition: attachment; filename=\”文件名\”");
Header(”Content-Type: application/x-unknown”); // 具体文件类型可以使用相应的mine类型
Header(”Content-Transfer-Encoding: none”);
Header(”Pragma: no-cache”);
Header(”Expires: 0″);
Header(”Content-Length: $cont_len”);

echo $cont;

?>


闽ICP备05021301号