运行CMD 查看端口命令及端口功能详解

 

在运行里-cmd-netstat -an就会显示出你开的端口了!! 
最近被病毒搞的头昏脑涨的,不过也收获不小哟,知道了点小方法,与大家共勉。 

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

  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是指连接使用的协议名称,LocalAddress是本地计算机的 IP 地址和连接正在使用的端口号,Foreign Address是连接该端口的远程计算机的 IP地址和端口号,State则是表明TCP连接的状态,你可以看到后面三行的监听端口是UDP协议的,所以没有State表示的状态。看!我的机器的7626端口已经开放,正在监听等待连接,像这样的情况极有可能是已经感染了冰河!急忙断开网络,用杀毒软件查杀病毒是正确的做法。  2.工作在windows2000下的命令行工具fport 

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

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

  D:/>fport.exe 

  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.exe 

  748 tcpsvcs -> 9 TCP C:/WINNT/System32/tcpsvcs.exe 

  748 tcpsvcs -> 19 TCP C:/WINNT/System32/tcpsvcs.exe 

  416 svchost -> 135 TCP C:/WINNT/system32/svchost.exe 

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

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

<think>好的,我现在需要回答用户关于如何在Windows命令提示符下查看端口占用情况的问题。首先,我得回忆一下相关的CMD命令,并确保信息准确。用户提到了参考的引用内容,我需要结合这些引用中的信息来组织答案。 首先,用户提供的引用中有多个提到使用netstat命令查看端口占用情况。例如,引用[2]提到使用netstat -aon查看所有端口,或者用netstat -aon | findstr "端口号"来查看指定端口。此外,引用[4]和[5]也提到了类似的方法,以及如何终止进程。所以,我需要将这些步骤整理出来,按照逻辑顺序呈现。 接下来,我需要确保步骤清晰,分点说明。用户可能需要先查看所有端口,再定位到具体端口,找到对应的PID,然后通过taskkill或任务管理器终止进程。同时,要记得提醒用户管理员权限的问题,尤其是终止进程时可能需要管理员权限。 另外,用户的问题主要集中在查看端口占用,但可能也会对终止进程感兴趣,所以可以适当补充这部分内容,但需明确分开步骤,避免混淆。例如,先讲解查看端口,再讲解如何终止。 还要注意命令的正确性,比如netstat的参数是否正确,findstr的使用是否正确。例如,netstat -aon是正确的,-a显示所有连接和监听端口,-o显示进程ID,-n以数字形式显示地址和端口号。这里引用中的命令可能有同的参数组合,需要统一起来,确保用户会出错。 最后,根据用户提供的示例结构,回答需要结构清晰,步骤分点,可能还需要生成相关问题。例如,如何终止占用端口的进程,或者如何查找特定应用程序的端口占用情况等。</think>### Windows CMD查看端口占用命令详解 #### 1. 查看所有端口占用情况 使用`netstat`命令查看所有网络连接状态,配合参数`-aon`显示详细信息: ``` netstat -aon ``` - `-a`:显示所有连接和监听端口 - `-o`:显示进程ID (PID) - `-n`:以数字形式显示地址和端口号 示例输出: ``` TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 1234 ``` #### 2. 查看指定端口占用 通过管道符`|`配合`findstr`过滤结果(以8080端口为例): ``` netstat -aon | findstr "8080" ``` 示例输出: ``` TCP 127.0.0.1:8080 0.0.0.0:0 LISTENING 5678 ``` #### 3. 定位占用端口的进程 根据得到的PID(例如5678),使用以下命令查询进程名称: ``` tasklist | findstr "5678" ``` 示例输出: ``` java.exe 5678 Console 1 2,112 KB ``` #### 4. 终止占用端口的进程 通过PID强制终止进程(需要管理员权限): ``` taskkill /pid 5678 /f ``` 或通过进程名称终止: ``` taskkill /im java.exe /f ``` 参数说明: - `/f`:强制终止进程 - `/pid`:指定进程ID - `/im`:指定进程名称 [^5] #### 5. 清空CMD窗口内容 使用`cls`命令重置屏幕显示: ``` cls ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值