WinGate是目前应用非常广泛的一种Win95/NT代理防火墙软件,局域网内部用户可以通过一台安装有WinGate的主机访问Internet。由于它自身也存在着几个安全漏洞,所以网络"骇客"经常利用这些漏洞伪装成WinGate主机的身份,对其它计算机发动攻击,而且这种攻击非常难于被跟踪和记录。
导致WinGate安全漏洞的原因大多数是管理员没有根据网络的实际情况对WinGate代理防火墙软件进行合理的设置,只是简单地从缺省设置安装完毕后就让软件运行,这就给攻击者可乘之机。
一.非授权Web访问
某些WinGate版本(如运行在NT系统下的2.1d版本)在误配置情况下,允许外部主机完全匿名地访问因特网。因此,外部攻击者就可以利用WinGate主机来对Web服务器发动各种Web攻击(如CGI的漏洞攻击等),同时由于Web攻击的所有报文都是从80号Tcp端口穿过的,因此,很难追踪到攻击者的来源。
检测WinGate主机是否有这种安全漏洞的方法如下:
1.以一个不会被过滤掉的连接(譬如说拨号连接)连接到因特网上。
2.把浏览器的代理服务器地址指向待测试的WinGate主机。
如果浏览器能访问到因特网,则WinGate主机存在着非授权Web访问漏洞。非授权Socks访问在WinGate的缺省配置中,Socks代理(1080号Tcp端口)同样存在安全漏洞。与打开的Web代理(80号Tcp端口)一样,外部攻击者可以利用Socks代理访问因特网。
要防止攻击WinGate的这个安全漏洞,管理员可以限制特定服务的捆绑。在多宿主(multihomed)系统上,执行以下步骤以限定如何提供代理服务:
选择Socks或WWWProxyServer属性→选择Bindings标签→按下"ConnectionsWillBeAcceptedOnTheFollowingInterfaceOnly"按钮,并指定WinGate服务器的内部接口。
二.非授权Telnet访问
它是WinGate最具威胁的安全漏洞。通过连接到一个误配置的WinGate服务器的Telnet服务,攻击者可以使用别人的主机隐藏自己的踪迹,随意发动攻击。
检测:检测WinGate主机是否有这种安全漏洞的方法如下:
1.使用telnet尝试连接到一台WinGate服务器。
root@happy/tmp?#telnet172.29.11.191
Trying172.29.11.191….
Connectedto172.29.11.191.
Escapecharacteris'^?'.
Wingate>10.50.21.5
2.如果接受到如上的响应文本,那就输入待连接到的网站。
3.如果看到了该新系统的登录提示符,那么该服务器是脆弱的。
Connectedtohost10.50.21.5…Connected
SunOS5.6
Login
对策:防止这种安全脆弱点的方法和防止非授权Socks访问的方法类似。在WinGate中简单地限制特定服务的捆绑就可以解决这个问题。一般来说,多宿主(multihomed)系统管理员可以通过执行以下步骤来完成:
选择TelnetSever属性→选择Bindings标签→按下"ConnectionsWillBeAcceptedOnTheFollowingInterfaceOnly"按钮,并指定WinGate服务器的内部接口。