龙手大都督:必需掌握的8个DOS命令

来源:百度文库 编辑:九乡新闻网 时间:2024/04/29 11:25:09

初级网管或黑客必需撑握的8个DOS命令
一、ping
  它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的治理员或者黑客来说,ping命令是第一个必须把握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地
址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判定目标主机的操作系统等。下面就来看看它的一些常用的操作。先看看帮助吧,在DOS窗口中键入:ping /?

  所示的帮助画面。在此,我们只把握一些基本的很有用的参数就可以了(下同)。

  -t 表示将不间断向目标IP发送数据包,直到我们强迫其停止。试想,假如你使用100M的宽带接入,而目标IP是56K的小猫,那么要不了多久,目标IP就因为承受不了这么多的数据而掉线,呵呵,一次攻击就
这么简单的实现了。

  -l 定义发送数据包的大小,默认为32字节,我们利用它可以最大定义到65500字节。结合上面介绍的-t参数一起使用,会有更好的效果哦。

  -n 定义向目标IP发送数据包的次数,默认为3次。假如网络速度比较慢,3次对我们来说也浪费了不少时间,因为现在我们的目的仅仅是判定目标IP是否存在,那么就定义为一次吧。

  说明一下,假如-t 参数和 -n参数一起使用,ping命令就以放在后面的参数为标准,比如“ping IP -t -n 3”,虽然使用了-t参数,但并不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主机域名,这样就可以得到主机的IP。

  下面我们举个例子来说明一下具体用法。
  这里time=2表示从发出数据包到接受到返回数据包所用的时间是2秒,从这里可以判定网络连接速度的大小 。从TTL的返回值可以初步判定被ping主机的操作系统,之所以说“初步判定”是因为这个值是
可以修改的。这里TTL=32表示操作系统可能是win98。

  (小知识:假如TTL=128,则表示目标主机可能是Win2000;假如TTL=250,则目标主机可能是Unix)

  至于利用ping命令可以快速查找局域网故障,可以快速搜索最快的QQ服务器,可以对别人进行ping攻击……这些就*大家自己发挥了。

二、nBTstat
  该命令使用TCP/IP上的NetBIOS显示协议统计和当前TCP/IP连接,使用这个命令你可以得到远程主机的NETBIOS信息,比如用户名、所属的工作组、网卡的MAC地址等。在此我们就有必要了解几个基本的参数。

  -a 使用这个参数,只要你知道了远程主机的机器名称,就可以得到它的NETBIOS信息(下同)。

  -A 这个参数也可以得到远程主机的NETBIOS信息,但需要你知道它的IP。

  -n 列出本地机器的NETBIOS信息。
  当得到了对方的IP或者机器名的时候,就可以使用nbtstat命令来进一步得到对方的信息了,这又增加了我们入侵的保险系数。

  Ping
  Ping是个使用频率极高的实用程序,用于确定本地主机是否能与另一台主机交换(发送与接收)数据报。根据返回的信息,你就可以推断TCP/IP参数是否设置得正确以及运行是否正常。需要注重的是:成功地与另一台主机进行一次或两次数据报交换并不表示TCP/IP配置就是正确的,你必须执行大量的本地主机与远程主机的数据报交换,才能确信TCP/IP的正确性。

  简单的说,Ping就是一个测试程序,假如Ping运行正确,你大体上就可以排除网络访问层、网卡、MODEM的输入输出线路、电缆和路由器等存在的故障,从而减小了问题的范围。但由于可以自定义所
发数据报的大小及无休止的高速发送,Ping也被某些别有专心的人作为DDOS(拒绝服务攻击)的工具,前段时间Yahoo就是被黑客利用数百台可以高速接入互联网的电脑连续发送大量Ping数据报而瘫痪的。

  按照缺省设置,Windows上运行的Ping命令发送4个ICMP(网间控制报文协议)回送请求,每个32字节数据,假如一切正常,你应能得到4个回送应答。

  Ping能够以毫秒为单位显示发送回送请求到返回回送应答之间的时间量。假如应答时间短,表示数据报不必通过太多的路由器或网络连接速度比较快。Ping还能显示TTL(Time To Live存在时间)值,你可以通过TTL值推算一下数据包已经通过了多少个路由器:源地点TTL起始值(就是比返回TTL略大的一个2的乘方数)-返回时TTL值。例如,返回TTL值为119,那么可以推算数据报离开源地址的TTL起始值为128,而源地点到目标地点要通过9个路由器网段(128-119);假如返回TTL值为246,TTL起始值就是256,源地点到目标地点要通过9个路由器网段。

    通过Ping检测网络故障的典型次序
  正常情况下,当你使用Ping命令来查找问题所在或检验网络运行情况时,你需要使用许多Ping命令,假如所有都运行正确,你就可以相信基本的连通性和配置参数没有问题;假如某些Ping命令出现运行故障,它也可以指明到何处去查找问题。下面就给出一个典型的检测次序及对应的可能故障:

  ping 127.0.0.1--这个Ping命令被送到本地计算机的IP软件,该命令永不退出该计算机。假如没有做到这一点,就表示TCP/IP的安装或运行存在某些最基本的问题。

  ping 本机IP--这个命令被送到你计算机所配置的IP地址,你的计算机始终都应该对该Ping命令作出应答,假如没有,则表示本地配置或安装存在问题。出现此问题时,局域网用户请断开网络电缆,然后重新发送该命令。假如网线断开后本命令正确,则表示另一台计算机可能配置了相同的IP地址。

  ping 局域网内其他IP--这个命令应该离开你的计算机,经过网卡及网络电缆到达其他计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正确。但假如收到0个回送应答,那么表示子网掩码(进行子网分割时,将IP地址的网络部分与主机部分分开的代码)不正确或网卡配置错误或电缆系统有问题。

  ping 网关IP--这个命令假如应答正确,表示局域网中的网关路由器正在运行并能够作出应答。

  ping 远程IP--假如收到4个应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP的DNS会有问题)。

  ping localhost--localhost是个作系统的网络保留名,它是127.0.0.1的别名,每太计算机都应该能够将该名字转换成该地址。假如没有做到这一带内,则表示主机文件(/Windows/host)中存在问题。

  ping www.yahoo.com--对这个域名执行Pin ... 地址,通常是通过DNS 服务器 假如这里出现故障,则表示DNS服务器的IP地址配置不正确或DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置
DNS服务器了)。顺便说一句:你也可以利用该命令实现域名对IP地址的转换功能。

  假如上面所列出的所有Ping命令都能正常运行,那么你对你的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示你所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。

  Ping命令的常用参数选项
  ping IP -t--连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断。

  ping IP -l 2000--指定Ping命令中的数据长度为2000字节,而不是缺省的32字节。

  ping IP -n--执行特定次数的Ping命令。
  Netstat   Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

  假如你的计算机有时候接受到的数据报会导致出错数据删除或故障,你不必感到希奇,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但假如累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。

  NBTSTAT命令可以用来查询涉及到NetBIOS信息的网络机器。另外,它还可以用来消除NetBIOS高速缓存器和预加载LMHOSTS文件。这个命令在进行安全检查时非常有用。

  用法:nbtstat [-a RemoteName] [-A IP_address] [-c] [-n] [-R] [-r] [-S]

  [-s]
  [interval]
  参数-a列出为其主机名提供的远程计算机名字表。
  -A列出为其IP地址提供的远程计算机名字表。
  -c列出包括了IP地址的远程名字高速缓存器。
  -n列出本地NetBIOS名字。
  -r列出通过广播和WINS解析的名字。
  -R消除和重新加载远程高速缓存器名字表。
  -S列出有目的地IP地址的会话表。
  -s列出会话表对话。
  NBTSTAT生成的列标题具有以下含义:
  Input
  接收到的字节数。
  Output
  发出的字节数。
  In/Out
  无论是从计算机(出站)还是从另一个系统连接到本地计算机(入站)。

  Life
  在计算机消除名字表高速缓存表目前“度过”的时间。
  Local Name
  为连接提供的本地NetBIOS名字。
  Remote Host
  远程主机的名字或IP地址。
  Type
  一个名字可以具备两个类型之一:unique or group

  在16个字符的NetBIOS名中,最后一个字节往往有具体含义,因为同一个名可以在同一台计算机上出现多次。这表明该名字的最后一个字节被转换成了16进制。

  State
  NetBIOS连接将在下列“状态”(任何一个)中显示:
  状态含义:
  Accepting: 进入连接正在进行中。
  Associated: 连接的端点已经建立,计算机已经与IP地址联系起来。

  Connected: 这是一个好的状态!它表明您被连接到远程资源上。

  Connecting: 您的会话试着解析目的地资源的名字-IP地址映射。

  Disconnected: 您的计算机请求断开,并等待远程计算机作出这样的反应。

  Disconnecting: 您的连接正在结束。
  Idle: 远程计算机在当前会话中已经打开,但现在没有接受连接。

  Inbound: 入站会话试着连接。
  Listening: 远程计算机可用。
  Outbound: 您的会话正在建立TCP连接。
  Reconnecting: 假如第一次连接失败,就会显示这个状态,表示试着重新连接.

  下面是一台机器的NBTSTAT反应样本:
  C:\>nbtstat CA x.x.x.x
  NetBIOS Remote Machine Name Table

  Name Type Status
  DATARAT <00> UNIQUE Registered

  R9LABS <00> GROUP Registered

   DATARAT <20> UNIQUE Registered

  DATARAT <03> UNIQUE Registered

  Ghost <03> UNIFQUE Registered

  DATARAT <01> UNIQUE Registered

  MAC Address = 00-00-00-00-00-00

  您通过下表能把握有关该机器的哪些知识呢?
  名称编号类型的使用:
  00 U 工作站服务
  01 U 邮件服务
  \\_M好好学习ROWSE_ 01 G 主浏览器
  03 U 邮件服务
  06 U RAS服务器服务
  1F U NetDDE服务
  20 U 文件服务器服务
  21 U RAS客户机服务
  22 U Exchange Interchange
  23 U Exchange Store
  24 U Exchange Directory
  30 U 调制解调器共享服务器服务
  31 U 调制解调器共享客户机服务
  43 U SMS客户机远程控制
  44 U SMS治理远程控制工具
  45 U SMS客户机远程聊天
  46 U SMS客户机远程传输
  4C U DEC Pathworks TCP/IP服务
  52 U DEC Pathworks TCP/IP服务
  87 U Exchange MTA
  6A U Exchange IMC
  BE U网络监控代理
  BF U网络监控应用
  03 U邮件服务
  00 G域名
  1B U域主浏览器
  1C G域控制器
  1D U主浏览器
  1E G浏览器服务选择
  1C G Internet信息服务器
  00 U Internet信息服务器
  [2B] U Lotus Notes服务器
  IRISMULTICAST [2F] G Lotus Notes

  IRISNAMESERVER [33] G Lotus Notes

  Forte_$ND800ZA [20] U DCA Irmalan网关服务

  Unique (U): 该名字可能只有一个分配给它的IP地址。在网络设备上,一个要注册的名字

  可以出现多次,但其后缀是唯一的,从而使整个名字是唯一的。

  Group (G): 一个正常的群;一个名字可以有很多个IP地址。

  Multihomed (M): 该名字是唯一的,但由于在同一台计算机上有多个网络接口,

  这个配置可答应注册。这些地址的最大编号是25。
  Internet Group (I): 这是用来治理WinNT域名的组名字的非凡配置。

  Domain Name (D): NT 4.0提供的新内容。

  网络入侵者可以通过上表和从nbtstat获得的输出信息开始收集有关您的机器的信息

三、netstat
  这是一个用来查看网络状态的命令,操作简便功能强大。
  -a 查看本地机器的所有开放端口,可以有效发现和预防木马,可以知道机器所开的服务等信息,如图4。

  这里可以看出本地机器开放有FTP服务、Telnet服务、邮件服务、WEB服务等。用法:netstat -a IP。

  -r 列出当前的路由信息,告诉我们本地机器的网关、子网掩码等信息。用法:netstat -r IP。

  netstat 的一些常用选项:
  netstat -s--本选项能够按照各个协议分别显示其统计数据。假如你的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么你就可以用本选项来查看一下所显示的信息。你需要仔细查看统计数据的各行,找到出错的要害字,进而确定问题所在。

  netstat -e--本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。

  netstat -r--本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。

  netstat -a--本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。

  netstat -n--显示所有已建立的有效连接。
  Netstat的妙用
  经常上网的人一般都使用ICQ的,不知道你有没有被一些讨厌的人骚扰得不敢上线,想投诉却又不知从和下手?其实,你只要知道对方的IP,就可以向他所属的ISP投诉了。但怎样才能通过ICQ知道对方的IP呢?假如对方在设置ICQ时选择了不显示IP地址,那你是无法在信息栏中看到的。其实,你只需要通过Netstat就可以很方便的做到这一点:当他通过ICQ或其他的工具与你相连时(例如你给他发一条ICQ信息或他给你发一条信息),你马上在DOS Prompt下输入netstat -n或netstat -a就可以看到对方上网时所用的IP或ISP域名了。甚至连所用Port都完全暴露了,假如你想给他一些教训,这些信息已经足够……

四、tracert
  跟踪路由信息,使用此命令可以查出数据从本地机器传输到目标主机所经过的所有途径,这对我们了解网络布局和结构很有帮助。如图5。

  这里说明数据从本地机器传输到192.168.0.1的机器上,中间没有经过任何中转,说明这两台机器是在同一段局域网内。用法:tracert IP。

五、net
  这个命令是网络命令中最重要的一个,必须透彻把握它的每一个子命令的用法,因为它的功能实在是太强大了,这简直就是微软为我们提供的最好的入侵工具。首先让我们来看一看它都有那些子命令,键入net /?

  如图6。
  在这里,我们重点把握几个入侵常用的子命令。
  net view
  使用此命令查看远程主机的所以共享资源。命令格式为net view \\\\IP。

  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命令就可以实现入侵了。

  net start
  使用它来启动远程主机上的服务。当你和远程主机建立连接后,假如发现它的什么服务没有启动,而你又想利用此服务怎么办?就使用这个命令来启动吧。用法:net start servername,如图9,成功启动了telnet服务。

  net stop
  入侵后发现远程主机的某个服务碍手碍脚,怎么办?利用这个命令停掉就ok了,用法和net start同。

  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的用户的情况

  net localgroup
  查看所有和用户组有关的信息和进行相关操作。键入不带参数的net localgroup即列出当前所有的用户组。在入侵过程中,我们一般利用它来把某个帐户提升为administrator组帐户,这样我们利用这个帐户就可以控制整个远程主机了。用法:net localgroup groupname username /add。

  现在我们把刚才新建的用户abcd加到administrator组里去了,这时候abcd用户已经是超级治理员了,呵呵,你可以再使用net user abcd来查看他的状态,和图10进行比较就可以看出来。但这样太明显了,网管一看用户情况就能漏出破绽,所以这种方法只能对付菜鸟网管,但我们还得知道。现在的手段都是利用其他工具和手段克隆一个让网管看不出来的超级治理员,这是后话。有爱好的朋友可以参照《黑客防线》第30期上的《由浅入深解析隆帐户》一文。

  net time
  这个命令可以查看远程主机当前的时间。假如你的目标只是进入到远程主机里面,那么也许就用不到这个命令了。但简单的入侵成功了,难道只是看看吗?我们需要进一步渗透。这就连远程主当前的时间都需要知道,因为利用时间和其他手段(后面会讲到)可以实现某个命令和程序的定时启动,为我们进一步入侵打好基础。用法:net time \\\\IP。

六、at
  这个命令的作用是安排在特定日期或时间执行某个特定的命令和程序(知道net time的重要了吧?)。当我们知道了远程主机的当前时间,就可以利用此命令让其在以后的某个时间(比如2分钟后)执行某个程序和命令。用法:at time command \\\\computer。

  表示在6点55分时,让名称为a-01的计算机开启telnet服务(这里net start telnet即为开启telnet服务的命令)。

七、ftp
  大家对这个命令应该比较熟悉了吧?网络上开放的ftp的主机很多,其中很大一部分是匿名的,也就是说任何人都可以登陆上去。现在假如你扫到了一台开放ftp服务的主机(一般都是开了21端口的机器),假如你还不会使用ftp的命令怎么办?下面就给出基本的ftp命令使用方法。

  首先在命令行键入ftp
  ,出现ftp的提示符,这时候可以键入“help”来查看帮助(任何DOS命令都可以使用此方法查看其帮助)。

  大家可能看到了,这么多命令该怎么用?其实也用不到那么多,把握几个基本的就够了。

  首先是登陆过程,这就要用到open了,直接在ftp的提示符下输入“open 主机IP ftp端口”

  即可,一般端口默认都是21,可以不写。接着就是输入合法的用户名和密码进行登陆了,这里以匿名ftp为例介绍。

  用户名和密码都是ftp,密码是不显示的。当提示**** logged in时,就说明登陆成功。这里因为是匿名登陆,所以用户显示为Anonymous。

  接下来就要介绍具体命令的使用方法了。
  dir 跟DOS命令一样,用于查看服务器的文件,直接敲上dir

  ,就可以看到此ftp服务器上的文件。
  cd 进入某个文件夹。
  get 下载文件到本地机器。
  put 上传文件到远程服务器。这就要看远程ftp服务器是否给了你可写的权限了,假如可以,呵呵,该怎么 利用就不多说了,大家就自由发挥去吧。

  删除 删除远程ftp服务器上的文件。这也必须保证你有可写的权限。

  bye 退出当前连接。
  quit 同上。
八、telnet

   功能强大的远程登陆命令,几乎所有的入侵者都喜欢用它,屡试不爽。为什么?它操作简单,如同使用自己的机器一样,只要你熟悉DOS命令,在成功以administrator身份连接了远程机器后,就可以用它来干你想干的一切了。下面介绍一下使用方法,首先键入telnet

  ,再键入help查看其帮助信息。
  然后在提示符下键入open IP
  ,这时就出现了登陆窗口,让你输入合法的用户名和密码,这里输入任何密码都是不显示的。

  当输入用户名和密码都正确后就成功建立了telnet连接,这时候你就在远程主机上具有了和此用户一样的权限,利用DOS命令就可以实现你想干的事情了。这里我使用的超级治理员权限登陆的。

  到这里为止,网络DOS命令的介绍就告一段落了,这里介绍的目的只是给菜鸟网管一个印象,让其知道熟悉和把握网络DOS命令的重要性。其实和网络有关的DOS命令还远不止这些,这里只是抛砖引玉,希望能对广大菜鸟网管有所帮助。学好DOS对当好网管有很大的帮助,非凡的熟练把握了一些网络的DOS命令。

  另外大家应该清楚,任何人要想进入系统,必须得有一个合法的用户名和密码(输入法漏洞差不多绝迹了吧),哪怕你拿到帐户的只有一个很小的权限,你也可以利用它来达到最后的目的。所以坚决消灭空口令,给自己的帐户加上一个强壮的密码,是最好的防御弱口令入侵的方法。