专 题 |
电脑入门 | 操作系统 | 办公软件 | 电脑DIY | 网页制作 | 等级考试 | 网络专栏 |
会员登陆 | 会员退出
会员注册 | 会员列表
 当前位置:铁通呼伦贝尔信息港 > 网络学院 > 阅读新闻 打印本页


端口扫描

 时间:2004-4-10 10:46:49
 
 

(一) 什么是端口

让我先从因特网提供的一些常见的服务说起。
  
  说到服务,我们首先要明白“连接”和“无连接”的概念。最简单的例子莫过于打电话和写信。两个人如果要通电话,得首先建立连接——即拨号,等待应答后才能相互传递信息,最后还要释放连接——即挂电话。写信就没有那么复杂了,地址姓名填好以后直接往邮筒一扔,收信人就能收到。
  
  因特网上最流行的协议是TCP/IP协议,需要说明的是,TCP/IP协议在网络层是无连接的(数据包只管往网上发,如何传输和到达以及是否到达由网络设备来管理)。而我们一旦谈“端口”,就已经到了传输层。协议里面低于1024的端口都有确切的定义,它们对应着因特网上常见的一些服务。这些常见的服务可以划分为使用TCP端口(面向连接如打电话)和使用UDP端口(无连接如写信)两种。
  
  使用TCP端口常见的有:

  ftp:定义了文件传输协议,使用21端口。常说某某主机开了 ftp服务便是文件传输服务。下载文件,上传主页,都要用到ftp服务。

  telnet:你上BBS吗?以前的BBS是纯字符界面的,支持BBS的服务器将23端口打开,对外提供服务。其实Telnet的真正意思是远程登陆:用户可以以自己的身份远程连接到主机上。

  smtp:定义了简单邮件传送协议。现在很多邮件服务器都用的是这个协议,用于发送邮件。服务器开放的是25端口。

  http:这可是大家用得最多的协议了——超文本传送协议。上网浏览网页就需要用到它,那么提供网页资源的主机就得打开其80端口以提供服务。我们常说“提供www服务”、“Web服务器”就是这个意思。

  pop3:和smtp对应,pop3用于接收邮件。通常情况下,pop3协议所用的是110端口。在263等免费邮箱中,几乎都有pop3收信功能。也就是说,只要你有相应的使用pop3协议的程序(例如Foxmail或Outlook),不需要从Web方式登陆进邮箱界面,即可以收信。

  使用UDP端口常见的有:

  DNS:域名解析服务。因特网上的每一台计算机都有一个网络地址与之对应,这个地址就是我们常说的IP地址,它以纯数字的形式表示。然而这却不便记忆,于是出现了域名。访问主机的时候只需要知道域名,域名和IP地址之间的变换由DNS服务器来完成。DNS用的是53端口。

  snmp:简单网络管理协议,使用161端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。

  聊天软件Oicq:Oicq的程序既接受服务,又提供服务,这样两个聊天的人才是平等的。oicq用的是无连接的协议,其服务器使用8000端口,侦听是否有信息到来;客户端使用4000端口,向外发送信息。如果上述两个端口正在使用(有很多人同时和几个好友聊天),就顺序往上加。
  
  所以可以这样说:端口便是计算机与外部通信的途径,没有它,计算机便又聋又哑。
一个端口就是一个潜在的通信通道,也就是一个入侵通道。对目标计算机进行端口扫描,能得到许多有用的信息。进行扫描的方法很多,可以是手工进行扫描,也可以用端口扫描软件进行。
  在手工进行扫描时,需要熟悉各种命令。对命令执行后的输出进行分析。用扫描软件进行扫描时,许多扫描器软件都有分析数据的功能。通过端口扫描,可以得到许多有用的信息,从而发现系统的安全漏洞。
(二)对计算机常用的端口一览:

端口号 端口类型
1 TCP—MUX
2 COMPRESSNET
5 RJE
7 ECHO
9 DISCARD
11 SYSSTAT
13 DAYTIME
15 NETSTAT
17 QOTD
18 MSP
19 CHARGEN
20 FTP-DATA
21 FTP
23 TELNET
25 SMTP
79 FINGER
80 HTTP
110 POP3
115 SFTP
117 UUCP
139 NETBIOS-SSN
144 NEWS
以上是计算机常用的一些端口,此外还有很多端口,由于我们这次实验没用到,所以就不一一介绍了,有兴趣的同学可以自己查查资料。
  
(三)下面介绍几个常用网络命令,对端口扫描原理进行介绍。
一. Ping 命令
Ping命令经常用来对TCP/IP网络进行诊断。通过目标计算机发送一个数据包,让它将这个数据包反送回来,如果返回的数据包和发送的数据包一致,那就是说你的PING命令成


功了。通过这样对返回的数据进行分析,就能判断计算机是否开着,或者这个数据包从发送到返回需要多少时间。
Ping命令的基本格式:
    ping hostname
其中hostname是目标计算机的地址。Ping还有许多高级使用,下面就是一个例子。
C:> ping -f hostname
  这条命令给目标机器发送大量的数据,从而使目标计算机忙于回应。在Windows 95的计算机上,使用下面的方法:
c:\windows\ping -l 65500 saddam_hussein's.computer.mil
  这样做了之后,目标计算机有可能会挂起来,或从新启动。由于 -l 65510 产生一个巨大的数据包。由于要求返回一个同样的数据包,会使目标计算机反应不过来。
二. Tracert 命令
Tracert命令用来跟踪一个消息从一台计算机到另一台计算机所走的路径,比方说从你的计算机走到浙江信息超市。在DOS窗口下,命令如下:
C:\WINDOWS>tracert 202.96.102.4

Tracing route to 202.96.102.4 over a maximum of 30 hops

 1  84 ms  82 ms  95 ms 202.96.101.57
 2  100 ms  100 ms  95 ms 0fa1.1-rtr1-a-hz1.zj.CN.NET [202.96.101.33]
 3  95 ms  90 ms  100 ms 202.101.165.1
 4  90 ms  90 ms  90 ms 202.107.197.98
 5  95 ms  90 ms  99 ms 202.96.102.4
 6  90 ms  95 ms  100 ms 202.96.102.4

Trace complete.
可见,任何人都能通过在命令行里键入一个命令,就能收集到一个域里的所有计算机的重要信息。
  我们利用有用的网络命令,可以收集到许多有用的信息,比方一个域里的名字服务器的地址,一台计算机上的用户名,一台服务器上正在运行什么服务,这个服务是哪个软件提供的,计算机上运行的是什么操作系统。
  如果你知道目标计算机上运行的操作系统和服务应用程序后,就能利用已经发现的他们的漏洞来进行攻击。如果目标计算机的网络管理员没有对这些漏洞及时修补的话,入侵者能轻而易举的闯入该系统,获得管理员权限,并留下后门。
  如果入侵者得到目标计算机上的用户名后,能使用口令破解软件,多次试图登录目标计算机。经过尝试后,就有可能进入目标计算机。得到了用户名,就等于得到了一半的进入权限,剩下的只是使用软件进行攻击而已。

(四)下面对常用的端口扫描技术做一个介绍。

TCP connect() 扫描
  这是最基本的TCP扫描。操作系统提供的connect()系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。这个技术的一个最大的优点是,你不需要任何权限。系


统中的任何用户都有权利使用这个调用。另一个好处就是速度。如果对每个目标端口以线性的方式,使用单独的connect()调用,那么将会花费相当长的时间,你可以通过同时打开多个套接字,从而加速扫描。使用非阻塞I/O允许你设置一个低的时间用尽周期,同时观察多个套接字。但这种方法的缺点是很容易被发觉,并且被过滤掉。目标计算机的logs文件会显示一连串的连接和连接是出错的服务消息,并且能很快的使它关闭。
TCP SYN扫描
  这种技术通常认为是“半开放”扫描,这是因为扫描程序不必要打开一个完全的TCP连接。扫描程序发送的是一个SYN数据包,好象准备打开一个实际的连接并等待反应一样(参考TCP的三次握手建立一个TCP连接的过程)。一个SYN|ACK的返回信息表示端口处于侦听状态。一个RST返回,表示端口没有处于侦听态。如果收到一个SYN|ACK,则扫描程序必须再发送一个RST信号,来关闭这个连接过程。这种扫描技术的优点在于一般不会在目标计算机上留下记录。但这种方法的一个缺点是,必须要有root权限才能建立自己的SYN数据包。
TCP FIN 扫描
  有的时候有可能SYN扫描都不够秘密。一些防火墙和包过滤器会对一些指定的端口进行监视,有的程序能检测到这些扫描。相反,FIN数据包可能会没有任何麻烦的通过。这种扫描方法的思想是关闭的端口会用适当的RST来回复FIN数据包。另一方面,打开的端口会忽略对FIN数据包的回复。这种方法和系统的实现有一定的关系。有的系统不管端口是否打开,都回复RST,这样,这种扫描方法就不适用了。并且这种方法在区分Unix和NT时,是十分有用的。
IP段扫描
  这种不能算是新方法,只是其它技术的变化。它并不是直接发送TCP探测数据包,是将数据包分成两个较小的IP段。这样就将一个TCP头分成好几个数据包,从而过滤器就很难探测到。但必须小心。一些程序在处理这些小数据包时会有些麻烦。

[工具介绍]
1.portscan——是一个极其快速的端口扫描工具,只要知道别人的IP地址,就能查出他的计算机有那些端口开放。
2.Wingate scan——是一个专门扫描Wingate服务器的软件,可以用Wingate作跳板进行Telnet登录。
3.PingPlus——强大的Ping程序,能够快速扫描几个C类地址。
4.Super Scan——一个强大的TCP端口扫描器、Pinger、hostname、reslover,多线的扫描技术使得扫描速度更快,操作界面友好。
5.rscan——用于扫描一定范围的网段内存在特定CGI程序的主机。国产精品。
6.Shadow scan——功能十分强大的扫描软件。
7.追捕——可以很快得到对方计算机的一些常用信息。 

 

【】【 】【关闭】来源:铁通呼伦贝尔信息港   

 ·上一条:谨防黑客通过端口扫描进行攻击 (4-10)
 ·下一条:139端口的攻击与防范 (4-10)
 相关专题:
 尚无信息
 相关信息:端口扫描
· 谨防黑客通过端口扫描进行攻击 (4-10)
· 端口扫描简介 (4-10)
╣ 端口扫描 会员评论[共 0 篇] ╠
╣ 我要评论 ╠
姓 名:   密 码:   新人注册
  推荐文章  
- 铁通PPPoE下载和安装教
- WindowsXP自带PPPoE拨
- PPPOE 的安装、设置方
- ADSL MODEM PPPOE的模
- PPPOE接入软件
- 下载和安装PPPoE虚拟拨
- PPPOE 软件安装说明
- 什么是PPPoE?
- PPPoE + NAT
- 网络协议PPPoE
热门图片信息
尚无热门图片