问题
当访问一个服务器上的所有网站的时候,所有网页都被插入了一段恶意代码
<iframe src=http://***.com/ width=0 height=0 frameborder=0></Iframe>
这是怎么造成的?
解决方案
首先确认这种情况是由网络被攻击,还是服务器被攻击造成的。
判断方法如下:
1) 从网络访问服务器的页面,则可以看到页面被恶意植入代码。这是被攻击的现象。
2) 到服务器本地上,用文本编辑器打开网页,查找是否被植入恶意代码。
如果此时发现服务器上的文件被修改过了,则说明服务器可能中了某些病毒
服务器上的网页源程序被修改了。
如果此时发现服务器上的源文件是正常的,则说明,这种攻击是网络攻击。
3) 登录到服务器本地上:
linux服务器执行wget http://有问题的网站/index.html之类的命令
windows服务器可以用ie在本地浏览网
来获取网站的首页,检查直接在服务器本地看到的结果是否正常
4) 把站点配置为ssl安全链接站点,然后从别的地方浏览是否正常。
上述盘查问题的过程中,第2/3/4点是非常明确的可以确定问题的
如果在第2/3/4点排查中,网页都是ok,都没有被植入恶意代码
则可以确认为是基于网络的某种数据流攻击
攻击者在被攻击的网段内找一台服务器当作“肉鸡”(即被当作跳板的机器),上边安装数据包转发的软件
这种软件会故意用假mac地址去和本网段的网关争抢,把网关的mac抢过来
这个时候本网段的所有数据都会先流经这台肉鸡,然后由这个肉鸡将数据转发给真正的网关
在肉鸡转发的过程中,非加密的协议如http等协议就会被分析,里边会被加上一些恶意代码
然后重新组合成为http数据流,发送给真正的网关
而这种攻击对于经过ssl安全加密的https站点,一般没有效果
因为攻击者无法解密ssl数据流,也就无法添加上恶意代码
通过上述几个方法,可基本确定服务器上所有站点都被植入恶意代码是网络攻击
要想进一步查找这种网络攻击,则需要在同网段的服务器上安装sniffer软件
如ethereal等抓包软件,分析数据走向
或者干脆找机房要求协查
此类攻击针对windows、linux都有效,目前已遇到过实际情况
对服务器本身而言,没有太好的方法预防,除非站点都启用ssl
另外机房的路由器、交换机如果MAC缓存参数设置合理,则很大程度上可以避免这类攻击
来源:https://www.cnblogs.com/sfqas/p/12181845.html