一,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命令就以放在后面的参数为标准,比如“pingIP-t-n3”,虽然使用了-t参数,但并不是一直ping下去,而是只ping3次。另外,ping命令不一定非得pingIP,也可以直接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命令来进一步得到对方的信息了,这又增加了我们入侵的保险系数。
三,netstat
这是一个用来查看网络状态的命令,操作简便功能强大。
-a查看本地机器的所有开放端口,可以有效发现和预防木马,可以知道机器所开的服务等信息,如图4。
这里可以看出本地机器开放有FTP服务、Telnet服务、邮件服务、WEB服务等。用法:netstat-aIP。
-r列出当前的路由信息,告诉我们本地机器的网关、子网掩码等信息。用法:netstat-rIP。
四,tracert
跟踪路由信息,使用此命令可以查出数据从本地机器传输到目标主机所经过的所有途径,这对我们了解网络布局和结构很有帮助。如图5。
这里说明数据从本地机器传输到192.168.0.1的机器上,中间没有经过任何中转,说明这两台机器是在同一段局域网内。用法:tracertIP。
五,net
这个命令是网络命令中最重要的一个,必须透彻掌握它的每一个子命令的用法,因为它的功能实在是太强大了,这简直就是微软为我们提供的最好的入侵工具。首先让我们来看一看它都有那些子命令,键入net/?回车如图6。
在这里,我们重点掌握几个入侵常用的子命令。
netview
使用此命令查看远程主机的所以共享资源。命令格式为netview[url=file://IP/]\\IP[/url]。
netuse
把远程主机的某个共享资源影射为本地盘符,图形界面方便使用,呵呵
命令格式为netusex:[url=file://IP/sharename]\\IP\sharename[/url]。上面一个表示把192.168.0.5IP的共享名为magic的目录影射为本地的Z盘。下面表示和192.168.0.7建立IPC$连接(netuse[url=file://IP/IPC$]\\IP\IPC$[/url]"password"/user:"name"),
建立了IPC$连接后,呵呵,就可以上传文件了:copync.exe[url=file://192.168.0.7/admin$]\\192.168.0.7\admin$[/url],表示把本地目录下的nc.exe传到远程主机,结合后面要介绍到的其他DOS命令就可以实现入侵了。
netstart
使用它来启动远程主机上的服务。当你和远程主机建立连接后,如果发现它的什么服务没有启动,而你又想利用此服务怎么办?就使用这个命令来启动吧。用法:netstartservername,如图9,成功启动了telnet服务。
netstop
入侵后发现远程主机的某个服务碍手碍脚,怎么办?利用这个命令停掉就ok了,用法和netstart同。
netuser
查看和帐户有关的情况,包括新建帐户、删除帐户、查看特定帐户、激活帐户、帐户禁用等。这对我们入侵是很有利的,最重要的,它为我们克隆帐户提供了前提。键入不带参数的netuser,可以查看所有用户,包括已经禁用的。下面分别讲解。
1,netuserabcd1234/add,新建一个用户名为abcd,密码为1234的帐户,默认为user组成员。
2,netuserabcd/del,将用户名为abcd的用户删除。
3,netuserabcd/active:no,将用户名为abcd的用户禁用。
4,netuserabcd/active:yes,激活用户名为abcd的用户。
5,netuserabcd,查看用户名为abcd的用户的情况
netlocalgroup
查看所有和用户组有关的信息和进行相关操作。键入不带参数的netlocalgroup即列出当前所有的用户组。在入侵过程中,我们一般利用它来把某个帐户提升为administrator组帐户,这样我们利用这个帐户就可以控制整个远程主机了。用法:netlocalgroupgroupnameusername/add。
现在我们把刚才新建的用户abcd加到administrator组里去了,这时候abcd用户已经是超级管理员了,呵呵,你可以再使用netuserabcd来查看他的状态,和图10进行比较就可以看出来。但这样太明显了,网管一看用户情况就能漏出破绽,所以这种方法只能对付菜鸟网管,但我们还得知道。现在的手段都是利用其他工具和手段克隆一个让网管看不出来的超级管理员,这是后话。有兴趣的朋友可以参照《黑客防线》第30期上的《由浅入深解析隆帐户》一文。
nettime
这个命令可以查看远程主机当前的时间。如果你的目标只是进入到远程主机里面,那么也许就用不到这个命令了。但简单的入侵成功了,难道只是看看吗?我们需要进一步渗透。这就连远程主机当前的时间都需要知道,因为利用时间和其他手段(后面会讲到)可以实现某个命令和程序的定时启动,为我们进一步入侵打好基础。
用法:nettime[url=file://IP/]\\IP[/url]。
六,at
这个命令的作用是安排在特定日期或时间执行某个特定的命令和程序(知道nettime的重要了吧?)。当我们知道了远程主机的当前时间,就可以利用此命令让其在以后的某个时间(比如2分钟后)执行某个程序和命令。用法:attimecommand[url=file://computer/]\\computer[/url]。
表示在6点55分时,让名称为a-01的计算机开启telnet服务(这里netstarttelnet即为开启telnet服务的命令)。
七,ftp
大家对这个命令应该比较熟悉了吧?网络上开放的ftp的主机很多,其中很大一部分是匿名的,也就是说任何人都可以登陆上去。现在如果你扫到了一台开放ftp服务的主机(一般都是开了21端口的机器),如果你还不会使用ftp的命令怎么办?下面就给出基本的ftp命令使用方法。
首先在命令行键入ftp回车,出现ftp的提示符,这时候可以键入“help”来查看帮助(任何DOS命令都可以使用此方法查看其帮助)。
大家可能看到了,这么多命令该怎么用?其实也用不到那么多,掌握几个基本的就够了。
首先是登陆过程,这就要用到open了,直接在ftp的提示符下输入“open主机IPftp端口”回车即可,一般端口默认都是21,可以不写。接着就是输入合法的用户名和密码进行登陆了,这里以匿名ftp为例介绍。
用户名和密码都是ftp,密码是不显示的。当提示****loggedin时,就说明登陆成功。这里因为是匿名登陆,所以用户显示为Anonymous。
接下来就要介绍具体命令的使用方法了。
dir跟DOS命令一样,用于查看服务器的文件,直接敲上dir回车,就可以看到此ftp服务器上的文件。
cd进入某个文件夹。
get下载文件到本地机器。
put上传文件到远程服务器。这就要看远程ftp服务器是否给了你可写的权限了,如果可以,呵呵,该怎么利用就不多说了,大家就自由发挥去吧。
delete删除远程ftp服务器上的文件。这也必须保证你有可写的权限。
bye退出当前连接。
quit同上。
八,telnet
功能强大的远程登陆命令,几乎所有的入侵者都喜欢用它,屡试不爽。为什么?它操作简单,如同使用自己的机器一样,只要你熟悉DOS命令,在成功以administrator身份连接了远程机器后,就可以用它来干你想干的一切了。下面介绍一下使用方法,首先键入telnet回车,再键入help查看其帮助信息。
然后在提示符下键入openIP回车,这时就出现了登陆窗口,让你输入合法的用户名和密码,这里输入任何密码都是不显示的。
当输入用户名和密码都正确后就成功建立了telnet连接,这时候你就在远程主机上具有了和此用户一样的权限,利用DOS命令就可以实现你想干的事情了。这里我使用的超级管理员权限登陆的。
到这里为止,网络DOS命令的介绍就告一段落了,这里介绍的目的只是给菜鸟网管一个印象,让其知道熟悉和掌握网络DOS命令的重要性。其实和网络有关的DOS命令还远不止这些,这里只是抛砖引玉,希望能对广大菜鸟网管有所帮助。学好DOS对当好网管有很大的帮助,特别的熟练掌握了一些网络的DOS命令。
另外大家应该清楚,任何人要想进入系统,必须得有一个合法的用户名和密码(输入法漏洞差不多绝迹了吧),哪怕你拿到帐户的只有一个很小的权限,你也可以利用它来达到最后的目的。所以坚决消灭空口令,给自己的帐户加上一个强壮的密码,是最好的防御弱口令入侵的方法。
最后,由衷的说一句,培养良好的安全意识才是最重要的
TTL是数据包生存周期,根据减少的数可以判断经过了多少中间设备
在没有经过修改的情况下:
UNIX及类UNIX操作系统ICMP回显应答的TTL字段值为255
Compaq Tru64 5.0 ICMP回显应答的 TTL字段值为64
微软Windows NT/2K操作系统ICMP回显应答的TTL字段值为128
微软Windows 95操作系统ICMP回显应答的 TTL字段值为32
-------------------------------------------------------------------------------------------
大家知道,通过Ping和Tracert程序就能判断目标主机类型 ,Ping最主要的用处就是检测目标主机是否能连通。Tracert利 用ICMP数据包和IP数据包头部中的TTL值,防止数据包不断在IP 互联网上永不终止地循环。
许多入侵者首先会Ping一下你的机子,如看到TTL值为 128就认为你的系统为Windows NT/2000;如果TTL值为32则认为目标主机操作系统为Windows 95/98;如果TTL值为255/64就认为是UNIX/Linux操作系统。既 然入侵者相信TTL值所反映出来的结果,那么我们只要修改TTL 值,入侵者就无法入侵电脑了。
操作步骤:
1.打开“记事本”程序,编写批处理命令:
@echo REGEDIT4>>ChangeTTL.reg
@echo.>>ChangeTTL.reg
@echo [HKEY_LOCAL_MACHlNE\System\CurrentControlSet\Services\T cpip\Parameters]>>ChangeTTL.reg
@echo "DefaultTTL"=dword:000000">>ChangeTTL.reg
@REGEDIT /S/C ChangeTTL.reg
2.把编好的程序另存为以.bat为扩展名的批处理文件, 点击这个文件,你的操作系统的缺省TTL值就会被修改为ff,即 10进制的255,也就是说把你的操作系统人为地改为UNIX系统了 。同时,在该文件所在的文件夹下会生成一个名为 ChangeTTL.reg 的注册表文件。如果你想运行完这个批处理文件而不产生 ChangeTTL.reg文件,可以在此批处理文件的最后一行加上 deltree/Y ChangeTTL.reg,就可以无须确认自动删除ChangeTTL.reg文件 。
说明:在上面的命令中,echo是DOS下的回显命令,如 果想看到程序执行过程,请将“@”去掉。“> >”产生的内容将追加到它后面的文件即ChangeTTL.reg中。 而“DefaultTTL"=dword?000000ff”则是用来设置系统缺省TTL 值的,如果你想将自己的操作系统的TTL值改为其他操作系统的 ICMP回显应答值,请改变“"DefaultTTL"”的键值,要注意将 对应操作系统的TTL值改为十六进制才可以。
这样,当入侵者Ping你的机器时,他得到的就是一个假 的TTL值,这个假的TTL值就会误导对方,使入侵者的判断出现 失误,因为针对不同的操作系统的入侵方法并不一样,所以用 这个方法欺骗对方,可以让他摸不着头脑!利用这个方法欺骗 入侵者是不是很妙啊?快试试吧!
32=WIN 98 95(基本没人用)
64=LINUX系列(不多)
128=XP.2000.NT.ME(ME好象是)
255=UNIX系列(蛮多)
过一个路由减一是知道的吧。。。
REGEDIT可修改,所以不可靠,TTL只是初步判断。
UNIX 及类 UNIX操作系统 ICMP 回显应答的 TTL 字段值为 255
Compaq Tru64 5.0 ICMP 回显应答的 TTL 字段值为 64
WINXP-32bit 回显应答的 TTL 字段值为 128
微软 Windows NT/2K/2003操作系统 ICMP 回显应答的 TTL 字段值为 128
微软 Windows 95 操作系统 ICMP 回显应答的 TTL 字段值为 32
当然,返回的TTL值是相同的
但有些情况下有所特殊
LINUX Kernel 2.2.x & 2.4.x ICMP 回显应答的 TTL 字段值为 64
FreeBSD 4.1, 4.0, 3.4;
Sun Solaris 2.5.1, 2.6, 2.7, 2.8;
OpenBSD 2.6, 2.7,
NetBSD HP UX 10.20 ICMP 回显应答的 TTL 字段值为 255
Windows 95/98/98SE Windows ME ICMP 回显应答的 TTL 字段值为 32 Windows NT4 WRKS Windows NT4 Server Windows 2000 Windows XP ICMP 回显应答的 TTL 字段值为 128