基于Telnet协议的攻击
⒈Telnet
⑴虚拟终端
Telnet的魔力在于它在两个远隔千里的主机之间建立起了一条ASCII终端连接,其中成功地使用了虚拟终端的技术。
一个虚拟终端至少在表现形式上等同于两台机器之间的一个串行的硬连线式连接。
⑵Telnet的安全性历史
在一些安全性报告中多次交Telnet的问题列上黑名单。Telnet的安全性问题种类繁多,其中很大一部分漏洞都是由于编程错误造成的。然而,编程错误并不是Telnet频繁出现于安全性报告的唯一根据。
ftp://ftp.uwsg.indiana.edu/pub/security/cert/cert_advisories/ca-89:03.telnet.breakin.warning
ftp://info.cert.prg/pub/cert_advisories/ca_91%3a02a.sunod.telnetd.vulnerability
ftp://info.cert.prg/pub/cert_advisories/ca_91%3a11.ultrix.lat-telnet.gateway.vulnerability
⑶这类攻击已经不再有效了么?
错!产生这种观点主要原因是缺乏常识。我们在前面所描述的环境选项攻击,对很多系统还是很有效的。尽管关于这种攻击的报告在Internet上随处可见,此类事件还是屡有发生。
⑷以Telnet为武器
Telnet是一种很有趣的协议。发前所述,通过使用Telnet,你可以学到很多东西。例如,你可以判断当前运行的操作系统版本,多数UNIX系统都会在连接时报告这类消息。在不只一家权威机构的报告中都提到过各种各样的扫描程序,它们以在连接辨别出系统的类型,SATAN 就是其中之一。通过攻击下面所列端口中的任意一个都可以识别操作系统的类型:
端口21:FTP
端口23:Telnet
端口25:Mail
端口70:Gopher
端口80:Http
另一个有趣的现象是,Telnet可用于迅速判断目标是真实域还是虚拟域(其他一些方法也可做到这一点,不过没有这种方法快)。这一点可以帮助入侵者确切地出判断出要获取你的资源应该向哪一台机器下手,更精确地说就是,他该去入侵哪一台机器。
Telnet在快速判断某特定端口是否打开以及服务器上是否运行着特定程序方面也是一个强大的工具。Telnet本身也是用来进行服务拒绝式攻击的有力武器。例如,向Windows NT web 服务器的所在端口发送垃圾数据会导致目标处理器资源消耗高达100%,向其他端口发Telnet请求也可能导致主机挂起或崩溃,尤其是向端口135发送Telnet连接请求时。
⒉小结
Telnet可以被用于进行各种各样的入侵活动,或者用来剔除远程主机发送来的信息。到本书发行时为止,许多新的Telnet攻击技术即将产生。如果你运行网络并为用户提供Telnet服务,那还是小心点为好,尤其对那些新建的Telnet服务器,这些新的Telnet服务器中可能含有未被发现的“臭虫(bug)”。同时,因为Telnet具有很强的交互性并且向用户提供了在远程主机上执行命令的功能,Telnet上的任何漏洞都可能是致命的。在这一点上至少它同FTP和HTTP一样,甚至还会更糟。