|
网络安全:Telnet中的安全问题(1)
1、Telnet面临的主要安全问题 使用者认证 数据传送保密 防范针对telnet的攻击 Telnet本身没有很好的保护机制,所以要借助其他外部的保护。 Telnet本身的缺陷是: 没有口令保护,远程用户的登陆传送的帐号和密码都是明文,使用普通的sniffer都可以被截获 没有强力认证过程。只是验证连接者的帐户和密码。 没有完整性检查。传送的数据没有办法知道是否完整的,而不是被篡改过的数据。 传送的数据都没有加密。 SSH是一个很好的telnet安全保护系统,但是如果是要更严格的保护,你必须使用其他的telnet安全产品。SSH在前面的介绍中都已经详细地介绍过了,这里主要是介绍安全原理和安全产品。 1.1 使用者认证 对使用者的认证有以下几种方式: NULL 不使用认证 KERBEROS_V4 使用Kerberos_v4 KERBEROS_V5 使用Kerberos_v5 SPX 使用SPX RSA 使用RSA公钥私钥认证 LOKI 使用LOKl 有关认证的相关的内容请参阅相关的RFC文档。 相关的RFC文档和连接是: RFC1409   http://andrew2.andrew.cmu.edu/rfc/rfc1409.html RFC1411   http://andrew2.andrew.cmu.edu/rfc/rfc1411.html Kerberos Version4认证的RFC文档 RFC1416  http:// www.faqs.org/rfCS/rfc1416.html,这是一个关于telnet认证选项的RFC文档。 对使用者的认证,和本身网络的安全级别有关系。不同的安全级别使用不同的认证方法。具体使用的认证协议不是本书讨论的范围。 1.2 数据传送保密 使数据在Telnet会话中安全传送的方法有: ·使用DES、TripleDES、IDEA的随机密钥加密会话 ·使用Diffie-Hellman进行密钥交换。 ·使用公钥私钥加密签名。 1.3 防范针对telnet的攻击 与其说对Telnet的攻击,不如说是利用Telnet攻击。Telnet是一个很好的工具。早期的攻击主要是针对环境变量的使用攻击。例如在支持RFC1048或者是RFC1572的系统中,如果用户登陆的服务器的Telnetd支持共享对象库的话,就可以传递环境变量,这个环境变量是影响telnet守护进程的调用和登陆。使用环境变量的初衷是测试使用的二进制库的,例如你可以改变路径,而不必改变原来的库的位置。但是如果是攻击者把自己定义的库加入其中,然后改变环境变量,根据自己的库的位置设置环境变量中有关路径的参数,可以取得root的权限。幸运的是,现在的安全专家已经意识到了这个问题,例如使用忽略环境变量的setuid等程序。 用户可以利用Telnet获得很多的关于服务主机的情况。例如服务器的操作系统的种类等。而且,Telnet不仅仅可以使用端寇23,而且也可以连接到其他服务的端口。例如端口21是FTP,端口25是SMTP,端口80是HTTP等。 例如一个登陆到自己的端口25的例子: $telnet localhost 25
|