真正的高手大多都精通linux、UNIX或者windows下的基础命令,并熟悉各种系统下的攻击和防护,而所有的高手都经历过菜鸟时期,都要从最基础的开始,并且基础是关键。因此,了解和熟悉常见的DOS基础命令就显得十分重要,所以我根据自己的个人经验和网上的一些资料,总结整理了一些作为网络安全工作者比较常用的DOS命令给大家分享一下,希望对大家有所帮助。
六、网络命令
1、ping命令
ping命令是TCP/IP协议中最有用的命令之一,它通过向计算机发送ICM回应报文并监听回应报文的返回,校验与远程计算机或者本地计算机的连接。对每个发送的报文,ping命令最多等待1秒,并打印发送和接受报文的数量。比较每个接受报文和发送报文,以校验其有效性。默认情况下发送4个回应报文,每个报文包含64字节数据,格式如下:
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] [-4] [-6] target_name
“-t”表示Ping 指定的主机,直到停止,若要查看统计信息并继续操作 ,请键入 Control-Break;若要停止,请键入 Control-C;
“-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);
“-S srcaddr ”表示要使用的源地址;
“-4 ”表示强制使用 IPv4;
“-6 ”表示强制使用 IPv6。
也可以输入“ping /?”查看帮助信息,如下图:
ping /?
2、nbtstat命令
nbtstat命令可以用于查询涉及NetBIOS信息的网络计算机,还可以用于消除NetBIOS高速缓存器和预加载LMHOSTS文件,该命令在进行安全检查时非常有用,格式如下:
NBTSTAT [ [-a RemoteName] [-A IP address] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [interval] ]
“-a”表示(适配器状态) 列出指定名称的远程机器的名称表;
“-A”表示(适配器状态) 列出指定 IP 地址的远程机器的名称表;
“-c ”表示(缓存) 列出远程[计算机]名称及其 IP 地址的 NBT 缓存;
“-n ”表示(名称) 列出本地 NetBIOS 名称;
“-r ”表示(已解析) 列出通过广播和经由 WINS 解析的名称;
“-R ”表示(重新加载) 清除和重新加载远程缓存名称表;
“-S”表示(会话) 列出具有目标 IP 地址的会话表;
“-s ”表示(会话) 列出将目标 IP 地址转换成计算机 NETBIOS 名称的会话表;
“-RR ”表示(释放刷新) 将名称释放包发送到 WINS,然后启动刷新;
“RemoteName”表示远程主机计算机名;
“IP address”表示用点分隔的十进制表示的 IP 地址;
“interval ”表示重新显示选定的统计、每次显示之间暂停的间隔秒数,按 Ctrl+C 停止重新显示统计。
也可以输入“nbtstat /?”查看帮助信息,如下图:
nbtstat /?
3、netstat命令
netstat命令用于显示活动的TCP连接、路由表和网络接口信息等,可以让用户得知目前有哪些网络连接正在运行,格式如下:
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-t] [interval]
“-a”表示显示所有连接和侦听端口,常与参数“n”配合使用查看当前所有网络连接;
“-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;
“-r ”表示显示路由表;
“-s ”表示显示每个协议的统计。默认情况下,显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP 和 UDPv6的统计;
“-p ”表示选项可用于指定默认的子网。
-t 显示当前连接卸载状态。
“interval ”表示重新显示选定的统计,各个显示间暂停的间隔秒数。按 CTRL+C 停止重新显示统计。如果省略,则 netstat将打印当前的配置信息一次。
也可以输入“netstat /?”查看帮助信息,如下图:
netstat /?
4、nslookup命令
nslookup命令的功能是查询一台机器的IP地址和其对应的域名,它通常需要一台域名服务器提供域名服务,格式如下:
nslookup [IP地址/域名]
nslookup [-opt ...] # 使用默认服务器的交互模式;
nslookup [-opt ...] - server # 使用 "server" 的交互模式;
nslookup [-opt ...] host # 仅查找使用默认服务器的 "host";
nslookup [-opt ...] host server # 仅查找使用 "server" 的 "host"。
也可以输入“netstat /?”查看帮助信息,如下图:
nslookup /?
5、finger命令
finger命令用于显示指定系统上运行 finger 服务的用户信息,格式如下:
FINGER [-l] [user]@host [...]
“-l ”表示以长列表格式显示信息。
“user”表示指定需要其信息的用户。省略 user 参数将显示与指定主机上所有用户有关的信息。
“@host”表示指定需要其用户信息的远程系统上的服务器。
也可以输入“finger /?”查看帮助信息,如下图:
finger /?
6、ftp命令
FTP是“FileTransfer Protocol”(文件传输协议) 的简称。FTP命令是Internet用户使用最频繁的命令之一。FTP命令使用户能在两台联网的计算机之间传输文件, 是在互联网上传输文件的最主要的方法。知道FTP服务器的IP地址、端口、用户名称和密码, 即可从服务器上下载或者上传文件。除此之外, 还可以进行目录操作、文件操作及执行命令等。目前, 一些FTP服务器应用软件,如Serv-U等, 可以设置用户可否执行DOS等命令。利用FTP留后门也是控制计算机(肉机) 的方法之一。FTP命令的功能非常强大, 因此, 掌握一些常用的FTP命令对于顺利进行网络攻防而言,是非常有必要的,格式如下:
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [host]
“-v ”表示禁止显示远程服务器响应;
“-n ”表示禁止在初始连接时自动登录;
“-i ”表示关闭多文件传输过程中的交互式提示;
“-d ”表示启用调试;
“-g”表示禁用文件名通配(请参阅 GLOB 命令);
“-s:filename”表示指定包含 FTP 命令的文本文件;命令在 FTP 启动后自动运行;
“-a 表示”在绑字数据连接时使用所有本地接口;
“-A ”表示匿名登录;
“-x:send sockbuf ”表示覆盖默认的 SO_SNDBUF 大小 8192;
“-r:recv sockbuf”表示覆盖默认的 SO_RCVBUF 大小 8192;
“-b:async count”表示覆盖默认的异步计数 3;
“-w:windowsize ”表示覆盖默认的传输缓冲区大小 65535。host 指定主机名称或要连接到的远程主机的 IP 地址。
也可以输入“ftp /?”查看帮助信息,如下图:
ftp /?
7、telnet命令
Telnet用于Internet的远程登录, 它可以使已上网的计算机通过网络连接另一台计算机已上网的计算机, 实现两台计算机的互相连通。Telnet主要用于远程执行命令, 与DOS命令提示符窗口类似,目前的很多木马和远程控制软件都有这项功能, 在一些情况下, 还可以利用Telnet保留后门。Telnet服务器端的默认端口为23, 格式如下:
telnet[-a] [-e escape char] [-f logfile] [-l user] [-t term] [host[port] ]
“-a”表示企图自动登录,除了用当前已登录的用户以外,与“-l”相同;
“-e”表示跳过字符, 进入Telnet客户提示;
“-f”表示客户端登录的文件名;
“-1”用于指定登录远程系统时使用的用户名, 要求远程系统支持“TELNET ENVIRON”选项;
“-t”用于指定终端类型。支持的终端类型仅有vtl 00、vt 52、ansi和v tnt。
“host”用于指定要连接的远程计算机的主机名或IP地址。
“port”用于指定端口号或服务名。
8、at命令
at命令是入侵时使用的一个重要命令,通过它可以指定时间执行木马程序或命令,使用at命令时,其“Task Scheduler”服务的状态必须是“启动”,格式如下:
AT [\computername] [ [id] [/DELETE] | /DELETE [/YES]]
AT [\computername] time [/INTERACTIVE]
[ /EVERY:date[,...] | /NEXT:date[,...]] "command"
“\computername ”表示指定远程计算机。如果省略这个参数,会计划在本地计算机上运行命令。
“id ”表示指定给已计划命令的识别号。
“/delete”表示删除某个已计划的命令。如果省略 id,计算机上所有已计划的命令都会被删除。
“/yes ”表示不需要进一步确认时,跟删除所有作业的命令一起使用。
“time ”表示指定运行命令的时间。
“/interactive ”表示允许作业在运行时,与当时登录的用户桌面进行交互。
“/every:date[,...] ”表示指定在每周或每月的特定日期运行命令。如果省略日期,则默认为在每月的本日运行。
“/next:date[,...] ”表示指定在下一个指定日期(如,下周四)运行命令。如果省略日期,则默认为在每月的本日运行。
“"command" ”表示准备运行的 Windows NT 命令或批处理程序。
也可以输入“at /?”查看帮助信息,如下图:
at /?
9、tracert命令
tracert命令用于验证远程主机路径的实用程序,格式如下:
tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
“-d ”表示不将地址解析成主机名;
“-h maximum_hops”表示搜索目标的最大跃点数;
“-j host-list ”表示与主机列表一起的松散源路由(仅适用于 IPv4);
“-w timeout”表示等待每个回复的超时时间(以毫秒为单位);
“-R”表示跟踪往返行程路径(仅适用于 IPv6);
“-S srcaddr”表示要使用的源地址(仅适用于 IPv6);
“-4 ”表示强制使用 IPv4;
“-6 ”表示强制使用 IPv6。
也可以输入“tracert /?”查看帮助信息,如下图:
以上就是我总结的渗透测试常用的cmd命令——网络命令篇,欢迎大家补充,至此渗透测试常用的cmd命令已经全部总结整理完成,谢谢大家支持,欢迎关注@科技兴了解更多科技尤其是网络安全方面的知识。