前言:
如今同学们对“netstat命令选项含义”大体比较注重,小伙伴们都想要学习一些“netstat命令选项含义”的相关资讯。那么小编在网上搜集了一些对于“netstat命令选项含义””的相关文章,希望各位老铁们能喜欢,小伙伴们一起来了解一下吧!为什么需要获取对外连接
想象一下,一个黑客想要监控一台电脑,获得目标的实时屏幕画面,目标的聊天记录之类的信息,他是不是需要建立一条从黑客的机器到目标机器的网络连接?否则这些数据怎么传到黑客的机器中。
因此,获得我们机器的对外连接十分有必要,假设机器已经被入侵、被监控,那么我们机器与黑客的网络连接很可能就隐藏在这些连接之中,我们再从这些连接中把与黑客的连接找出来,是不是就发现了风险?
什么是netstat
Netstat(网络统计)是一个在Unix,Unix-like,以及Windows的网络工具,用于查看主机的网络连接状态,路由表信息以及网络接口的统计信息。通过netstat,您可以查看哪些网络端口(包括TCP和UDP)正在被您的系统使用,以及哪些程序正在使用这些端口。
我们在Windows下输入Win+R键,弹出的输入框输入cmd后按下回车,在弹出的cmd界面输入"netstat -h",就可以看到netstat的具体用法:
D:\DoneProject\project>netstat -h显示协议统计信息和当前 TCP/IP 网络连接。NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [-x] [-y] [interval] -a 显示所有连接和侦听端口。 -b 显示在创建每个连接或侦听端口时涉及的 可执行文件。在某些情况下,已知可执行文件托管 多个独立的组件,此时会 显示创建连接或侦听端口时 涉及的组件序列。在此情况下,可执行文件的 名称位于底部 [] 中,它调用的组件位于顶部, 直至达到 TCP/IP。注意,此选项 可能很耗时,并且可能因为你没有足够的 权限而失败。 -e 显示以太网统计信息。此选项可以与 -s 选项 结合使用。 -f 显示外部地址的完全限定 域名(FQDN)。 -n 以数字形式显示地址和端口号。 -o 显示拥有的与每个连接关联的进程 ID。 -p proto 显示 proto 指定的协议的连接;proto 可以是下列任何一个: TCP、UDP、TCPv6 或 UDPv6。如果与 -s 选项一起用来显示每个协议的统计信息,proto 可以是下列任何一个: IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 或 UDPv6。 -q 显示所有连接、侦听端口和绑定的 非侦听 TCP 端口。绑定的非侦听端口 不一定与活动连接相关联。 -r 显示路由表。 -s 显示每个协议的统计信息。默认情况下, 显示 IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6 的统计信息; -p 选项可用于指定默认的子网。 -t 显示当前连接卸载状态。 -x 显示 NetworkDirect 连接、侦听器和共享 终结点。 -y 显示所有连接的 TCP 连接模板。 无法与其他选项结合使用。 interval 重新显示选定的统计信息,各个显示间暂停的 间隔秒数。按 CTRL+C 停止重新显示 统计信息。如果省略,则 netstat 将打印当前的 配置信息一次。如何通过netstat获得所有对外连接
我们在Wiondows下输入Win+R键,弹出的输入框输入cmd后按下回车,在弹出的cmd界面输入:
netstat -ano
获得当前电脑的所有TCP、UDP连接以及每个连接对应的进程,如图所示:
下面有几点需要注意:
我们会按照:"协议 本地地址 外部地址 状态 PID"的格式得到所有对外连接的信息,我们关注的是"外部地址"(我们与哪一个外部ip进行连接)以及"PID"是哪个进程控制了这个连接。外部地址的格式是"xxx.xxx.xxx.xxx:xxx",有一个冒号分隔,冒号前是IP地址信息,冒号后是端口号信息。一条连接会占用一个端口号。我们会发现有很多外部IP是"0.0.0.0"(表示任何IP),"127.0.0.1"(表示本机IP)。这两个IP地址是特殊的IP地址,跟黑客入侵没有关系,可以直接忽略掉这些连接。总结
这边文章我们学习了如何通过netstat命令获取了所有的对外链接情况,并排除了部分IP的连接。获取所有对外连接情况是发现可疑连接的基础,后续的文章我会详细说明如何利用这些连接判断是否存在可疑IP连接。