windows网络相关的命令
一、netstat命令
显示协议统计信息和当前 TCP/IP 网络连接。
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [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 将打印当前的配置信息一次。
二、ping命令
用法: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
[-4] [-6] target_name
选项:
-t #Ping 指定的主机,直到停止。
#若要查看统计信息并继续操作,请键入 Ctrl+Break;
#若要停止,请键入 Ctrl+C。
-a #将地址解析为主机名。
-n count #要发送的回显请求数。
-l size #发送缓冲区大小。
-f #在数据包中设置“不分段”标记(仅适用于 IPv4)。
-i TTL #生存时间。
-v TOS #服务类型(仅适用于 IPv4。该设置已被弃用,
#对 IP 标头中的服务类型字段没有任何
#影响)。
-r count #记录计数跃点的路由(仅适用于 IPv4)。
-s count #计数跃点的时间戳(仅适用于 IPv4)。
-j host-list #与主机列表一起使用的松散源路由(仅适用于 IPv4)。
-k host-list #与主机列表一起使用的严格源路由(仅适用于 IPv4)。
-w timeout #等待每次回复的超时时间(毫秒)。
-R #同样使用路由标头测试反向路由(仅适用于 IPv6)。
#根据 RFC 5095,已弃用此路由标头。
#如果使用此标头,某些系统可能丢弃
#回显请求。
-S srcaddr #要使用的源地址。
-c compartment #路由隔离舱标识符。
-p #Ping Hyper-V 网络虚拟化提供程序地址。
-4 #强制使用 IPv4。
-6 #强制使用 IPv6。
三、arp命令:
显示和修改地址解析协议(ARP)使用的“IP 到物理”地址转换表。
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
-a #通过询问当前协议数据,显示当前 ARP 项。
#如果指定 inet_addr,则只显示指定计算机
#的 IP 地址和物理地址。如果不止一个网络
#接口使用 ARP,则显示每个 ARP 表的项。
-g #与 -a 相同。
-v #在详细模式下显示当前 ARP 项。所有无效项
#和环回接口上的项都将显示。
inet_addr #指定 Internet 地址。
-N if_addr #显示 if_addr 指定的网络接口的 ARP 项。
-d #删除 inet_addr 指定的主机。inet_addr 可
#以是通配符 *,以删除所有主机。
-s #添加主机并且将 Internet 地址 inet_addr
#与物理地址 eth_addr 相关联。物理地址是用
#连字符分隔的 6 个十六进制字节。该项是永久的。
eth_addr #指定物理地址。
if_addr #如果存在,此项指定地址转换表应修改的接口
#的 Internet 地址。如果不存在,则使用第一
# 个适用的接口。
示例:
> arp -s 157.55.85.212 00-aa-00-62-c6-09.... #添加静态项。
> arp -a .... #显示 ARP 表。
arp -a :显示arp表(查看每一个网络接口下ip地址对应的的物理地址)
四、route 命令
操作网络路由表。
ROUTE [-f] [-p] [-4|-6] command [destination]
[MASK netmask] [gateway] [METRIC metric] [IF interface]
-f 清除所有网关项的路由表。如果与某个
命令结合使用,在运行该命令前,
应清除路由表。
-p 与 ADD 命令结合使用时,将路由设置为
在系统引导期间保持不变。默认情况下,重新启动系统时,
不保存路由。忽略所有其他命令,
这始终会影响相应的永久路由。
-4 强制使用 IPv4。
-6 强制使用 IPv6。
command 其中之一:
PRINT 打印路由
ADD 添加路由
DELETE 删除路由
CHANGE 修改现有路由
destination 指定主机。
MASK 指定下一个参数为“netmask”值。
netmask 指定此路由项的子网掩码值。
如果未指定,其默认设置为 255.255.255.255。
gateway 指定网关。
interface 指定路由的接口号码。
METRIC 指定跃点数,例如目标的成本。
用于目标的所有符号名都可以在网络数据库
文件 NETWORKS 中进行查找。用于网关的符号名称都可以在主机名称
数据库文件 HOSTS 中进行查找。
如果命令为 PRINT 或 DELETE。目标或网关可以为通配符,
(通配符指定为星号“*”),否则可能会忽略网关参数。
如果 Dest 包含一个 * 或 ?,则会将其视为 Shell 模式,并且只
打印匹配目标路由。“*”匹配任意字符串,
而“?”匹配任意一个字符。示例: 157.*.1、157.*、127.*、*224*。
只有在 PRINT 命令中才允许模式匹配。
诊断信息注释:
无效的 MASK 产生错误,即当 (DEST & MASK) != DEST 时。
示例: > route ADD 157.0.0.0 MASK 155.0.0.0 157.55.80.1 IF 1
路由添加失败: 指定的掩码参数无效。
(Destination & Mask) != Destination。
示例:
> route PRINT //打印路由表
> route PRINT -4 //打印IPv4的路由表
> route PRINT -6 //打印IPv6的路由表
> route PRINT 157* .... 只打印那些匹配 157* 的项
> route ADD 157.0.0.0 MASK 255.0.0.0 157.55.80.1 METRIC 3 IF 2
destination^ ^mask ^gateway metric^ ^
Interface^
如果未给出 IF,它将尝试查找给定网关的最佳
接口。
> route ADD 3ffe::/32 3ffe::1
> route CHANGE 157.0.0.0 MASK 255.0.0.0 157.55.80.5 METRIC 2 IF 2
CHANGE 只用于修改网关和/或跃点数。
> route DELETE 157.0.0.0
> route DELETE 3ffe::/32
五、net命令
这个命令是网络命令中最重要的一个,必须透彻掌握它的每一个子命令的用法,因为它的功能实在是太强大了,这简直就是 微软为我们提供的最好的入侵工具。
(1) net view :使用此命令查看远程主机的所以共享资源。命令格式为net view /IP。
(2) net use
把远程主机的某个共享资源影射为本地盘符,图形界面方便使用,呵呵。命令格式为net use x: /IP/sharename。上面一个表示把192.168.0.5IP的共享名为magic的目录影射为本地的Z盘。下面表示和192.168.0.7建立IPC$连接(net use /IP/IPC$ "password" /user:"name"),
建立了IPC$连接后,呵呵,就可以上传文件了:copy nc.exe /192.168.0.7/admin$,表示把本地目录下的nc.exe传到远程主机,结合后面要介绍到的其他DOS命令就可以实现入侵了。
(3)net start
使用它来启动远程主机上的服务。当你和远程主机建立连接后,如果发现它的什么服务没有启动,而你又想利用此服务怎么办?就使用这个命令来启动吧。用法:net start servername
(4)net stop
入侵后发现远程主机的某个服务碍手碍脚,怎么办?利用这个命令停掉就ok了,用法和net start同。
(5)net user
查看和帐户有关的情况,包括新建帐户、删除帐户、查看特定帐户、激活帐户、帐户禁用等。这对我们入侵是很有利的,最重要的,它为我们克隆帐户提供了前提。键入不带参数的net user,可以查看所有用户,包括已经禁用的。下面分别讲解。
1,net user abcd 1234 /add,新建一个用户名为abcd,密码为1234的帐户,默认为user组成员。
2,net user abcd /del,将用户名为abcd的用户删除。
3,net user abcd /active:no,将用户名为abcd的用户禁用。
4,net user abcd /active:yes,激活用户名为abcd的用户。
5,net user abcd,查看用户名为abcd的用户的情况
(6)net localgroup
查看所有和用户组有关的信息和进行相关操作。键入不带参数的net localgroup即列出当前所有的用户组。在入侵过程中,我们一般利用它来把某个帐户提升为administrator组帐户,这样我们利用这个帐户就可以控制整个远程主机了。用法:net localgroup groupname username /add。
现在我们把刚才新建的用户abcd加到administrator组里去了,这时候abcd用户已经是超级管理员了,呵呵,你可以再使用net user abcd来查看他的状态,和图10进行比较就可以看出来。但这样太明显了,网管一看用户情况就能漏出破绽,所以这种方法只能对付菜鸟网管,但我们还得知道。现在的手段都是利用其他工具和手段克隆一个让网管看不出来的超级管理员,这是后话。有兴趣的朋友可以参照《黑客防线》第30期上的《由浅入深解析隆帐户》一文。
(7) net time
这个命令可以查看远程主机当前的时间。如果你的目标只是进入到远程主机里面,那么也许就用不到这个命令了。但简单的入侵成功了,难道只是看看吗?我们需要进一步渗透。这就连远程主机当前的时间都需要知道,因为利用时间和其他手段(后面会讲到)可以实现某个命令和程序的定时启动,为我们进一步入侵打好基础。用法:net time /IP。