Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Netstat 端口查看

Posted on 2009-01-06 16:16 Prayer 阅读(8250) 评论(0)  编辑 收藏 引用 所属分类: LINUX/UNIX/AIX

Netstat  

这个命令可以加一些参数:  
-n 显示IP地址和端口的数目。  
-S 显示每个协议的连接状态。  
-a 显示所有的连接和监听端口。(服务所有连接通常不显示的)  
-e 显示太网的连接状态。最好与-s合用。  
-P PROTO 显示特定的协议连接状态。  


显示:  
    Proto    Local Address            Foreign Address          State  
    TCP      192.168.14.246:1148      61.152.160.154:80        ESTABLISHED  
    TCP      192.168.14.246:1180      222.137.116.47:80        ESTABLISHED  
    TCP      192.168.14.246:1181      222.137.116.47:80        ESTABLISHED  
    TCP      192.168.14.246:1182      159.226.202.59:80        ESTABLISHED  
    TCP      192.168.14.246:1183      207.46.198.60:80         TIME_WAIT  

      不用说都看得懂吧:>>> 主要注意state;个人觉得这个命令好用:>>>相比之下非常方便,当然也有用X-NetStat Professional,或者netxray这些专业软件的.我比较LIKE 直接DOS命令:>>方面,系统自带;这个东东在WEB等服务器上如果遭到攻击用的时候比较多:> ,排除法  




下面是专业网络设备上的一些方法,:>>  
在路由器上我们可以用 show tcp brief all在路由器R1上telnet R1后可以看到如下显示:  

R1#sh tcp bri all  
TCB         Local Address             Foreign Address          (state)  
007736F4    6.6.125.1.11011           6.6.5.5.23               ESTAB  

在命令输出显示的界面中可以清楚的看到显示本地端口11011连到目的端口23。  


几个常用的网络测试命令:   

  #ping   

  #show interface 查看端口状态   

  #show static 查看静态地址映射

netstat命令查看本机开放端口

netstat -a —n命令查看端口!netstat后有一些英文,我来简单说一下这些英文具体都代表什么

LISTEN:侦听来自远方的TCp端口的连接请求

SYN-SENT:再发送连接请求后等待匹配的连接请求

SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认

ESTAbLISHED:代表一个打开的连接

FIN-WAIT-1:等待远程TCp连接中断请求,或先前的连接中断请求的确认

FIN-WAIT-2:从远程TCp等待连接中断请求

CLOSE-WAIT:等待从本地用户发来的连接中断请求

CLOSING:等待远程TCp对连接中断的确认

LAST-ACK:等待原来的发向远程TCp的连接中断请求的确认

TIME-WAIT:等待足够的时间以确保远程TCp接收到连接中断请求的确认

CLOSED:没有任何连接状态

当前最为常见的木马通常是基于TCP/UDP协议进行client端与server端之间的通讯的,既然利用到这两个协议,就不可避免要在server端(就是被种了木马的机器了)打开监听端口来等待连接。例如鼎鼎大名的冰河使用的监听端口是7626,Back Orifice 2000则是使用54320等等。那么,我们可以利用查看本机开放端口的方法来检查自己是否被种了木马或其它黑客程序。以下是详细方法介绍。

  1. Windows本身自带的netstat命令

  关于netstat命令,我们先来看看windows帮助文件中的介绍:

  Netstat

  显示协议统计和当前的 TCP/IP 网络连接。该命令只有在安装了 TCP/IP 协议后才可以使用。

  netstat [-a] [-e] [-n] [-s] [-p protocol] [-r] [interval]

  参数

  -a

  显示所有连接和侦听端口。服务器连接通常不显示。

  -e

  显示以太网统计。该参数可以与 -s 选项结合使用。

  -n

  以数字格式显示地址和端口号(而不是尝试查找名称)。
-s

  显示每个协议的统计。默认情况下,显示 TCP、UDP、ICMP 和 IP 的统计。-p 选项可以用来指定默认的子集。

  -p protocol

  显示由 protocol 指定的协议的连接;protocol 可以是 tcp 或 udp。如果与 -s 选项一同使用显示每个协议的统计,protocol 可以是 tcp、udp、icmp 或 ip。

  -r

  显示路由表的内容。

  interval

  重新显示所选的统计,在每次显示之间暂停 interval 秒。按 CTRL+B 停止重新显示统计。如果省略该参数,netstat 将打印一次当前的配置信息。

  好了,看完这些帮助文件,我们应该明白netstat命令的使用方法了。现在就让我们现学现用,用这个命令看一下自己的机器开放的端口。进入到命令行下,使用netstat命令的a和n两个参数:

  C:\\>netstat -an

  Active Connections

  Proto Local Address Foreign Address State
  TCP 0.0.0.0:80 0.0.0.0:0 LISTENING
  TCP 0.0.0.0:21 0.0.0.0:0 LISTENING
  TCP 0.0.0.0:7626 0.0.0.0:0 LISTENING
  UDP 0.0.0.0:445 0.0.0.0:0
  UDP 0.0.0.0:1046 0.0.0.0:0
  UDP 0.0.0.0:1047 0.0.0.0:0

  解释一下,Active Connections是指当前本机活动连接,Proto是指连接使用的协议名称,Local Address是本地计算机的 IP 地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的 IP 地址和端口号,State则是表明TCP 连接的状态,你可以看到后面三行的监听端口是UDP协议的,所以没有State表示的状态。看!我的机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河!急忙断开网络,用杀毒软件查杀病毒是正确的做法。

  2.工作在windows2000下的命令行工具fport

  使用windows2000的朋友要比使用windows9X的幸运一些,因为可以使用fport这个程序来显示本机开放端口与进程的对应关系。

Fport是FoundStone出品的一个用来列出系统中所有打开的TCP/IP和UDP端口,以及它们对应应用程序的完整路径、PID标识、进程名称等信息的软件。在命令行下使用,请看例子:

  D:\\>fport
  FPort v1.33 - TCP/IP Process to Port Mapper
  Copyright 2000 by Foundstone, Inc.
  http://www.foundstone.com

  Pid Process Port Proto Path
  748 tcpsvcs -> 7 TCP C:\\WINNT\\System32\\ tcpsvcs
  748 tcpsvcs -> 9 TCP C:\\WINNT\\System32\\tcpsvcs
  748 tcpsvcs -> 19 TCP C:\\WINNT\\System32\\tcpsvcs
  416 svchost -> 135 TCP C:\\WINNT\\system32\\svchost

  是不是一目了然了。这下,各个端口究竟是什么程序打开的就都在你眼皮底下了。如果发现有某个可疑程序打开了某个可疑端口,可千万不要大意哦,也许那就是一只狡猾的木马!

  Fport的最新版本是2.0。在很多网站都提供下载,但是为了安全起见,当然最好还是到它的老家去下:http://www.foundstone.com/knowledge/zips/fport.zip

  3.与Fport功能类似的图形化界面工具Active Ports

  Active Ports为SmartLine出品,你可以用来监视电脑所有打开的TCP/IP/UDP端口,不但可以将你所有的端口显示出来,还显示所有端口所对应的程序所在的路径,本地IP和远端IP(试图连接你的电脑IP)是否正在活动。下面是软件截图:

  是不是很直观?更棒的是,它还提供了一个关闭端口的功能,在你用它发现木马开放的端口时,可以立即将端口关闭。这个软件工作在Windows NT/2000/XP平台下。你可以在http://www.smartline.ru/software/aports.zip得到它。

  其实使用windows xp的用户无须借助其它软件即可以得到端口与进程的对应关系,因为windows xp所带的netstat命令比以前的版本多了一个O参数,使用这个参数就可以得出端口与进程的对应来。

  上面介绍了几种查看本机开放端口,以及端口和进程对应关系的方法,通过这些方法可以轻松的发现基于TCP/UDP协议的木马,希望能给你的爱机带来帮助。但是对木马重在防范,而且如果碰上反弹端口木马,利用驱动程序及动态链接库技术制作的新木马时,以上这些方法就很难查出木马的痕迹了。所以我们一定要养成良好的上网习惯,不要随意运行邮件中的附件,安装一套杀毒软件,像国内的瑞星就是个查杀病毒和木马的好帮手。从网上下载的软件先用杀毒软件检查一遍再使用,在上网时打开网络防火墙和病毒实时监控,保护自己的机器不被可恨的木马入侵。



只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理