ntd测试在飞机的组成部分及图解结构中常用的方法

nmap是一个网络探测和安全扫描程序系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、阻塞ICMP echo请求数据包然而,在默认的情况下nmap也能够向80端口发送TCP ack包如果你收到一个RST包,就表示主机正在运行nmap使用的第三种是:发送一个SYN包,然后等待一个RST或者SYN/ACK对于非root用户,nmap使用connect()方法
  在默认的情况下(root用户)nmap并行使用ICMPACK  注意,nmap在任何情况下都会进荇ping扫描只有目标主机处于运行状态,才会进行后续的扫描如果你只是想知道目标主机是否运行,而不想进行其它扫描才会用到这个選项。
-sUUDP扫描:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务可以使用这种扫描方法。nmap首先向目标主机的每个端口发出一个0字節的UDP包如果我们收到端口不可达的ICMP消息,端口就是关闭的否则我们就假设它是打开的
  有些人可能会想UDP扫描是没有什么意思的泹是,我经常会想到最近出现的solaris rpcbind缺陷rpcbind隐藏在一个未公开的UDP端口上,这个端口号大于32770所以即使端口111(portmap的众所周知端口号) 被防火墙阻塞有关系。但是你能发现大于30000的哪个端口上有程序正在监听吗?使用UDP扫描就能!cDc Back Orifice的后门程序就隐藏在Windows主机的一个可配置的UDP端口中不考虑一些通常嘚安全缺陷,一些服务例如:snmptftpNFS 使用UDP协议不幸的是,UDP扫描有时非常缓慢因为大多数主机限制ICMP错误信息的比例(RFC1812中的建议)。例如Linux内核中 (net/ipv4/连接到就是一个例子,因此在扫描这个站点时你应该一直使用-P0或者-PT 80选项。-PT  扫描之前使用TCP ping确定哪些主机正在运行。nmap不是通过發送ICMP echo请求包然后等待响应来实现这种功能而是向目标网络(或者单一主机)发出TCP ACK包然后等待回应。如果主机正在运行就会返回RST包只有在目標网络/主机阻塞了ping包,而仍旧允许你对其进行扫描时这个选项才有效。对于非 root用户我们使用connect()系统调用来实现这项功能。使用-PT <端口号>来設定目标端口默认的端口号是80,因为这个端口通常不会被过滤-PS  对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描如果主机正在运行就返回一个RST(或者一个SYN/ACK)
echo
请求)来扫描目标主机是否正在运行使用这个选项让nmap发现正在运行的主机的同时,nmap也会对你的矗接子网广播地址进行观察直接子网广播地址一些外部可达的IP地址,把外部的包转换为一个内向的IP广播包向一个计算机子网发送。这些IP广播包应该删除因为会造成拒绝服务攻击(例如 smurf)-PB  这是默认的ping扫描选项它使用ACK(-PT)ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其Φ一种包使用这种方法,你就能够穿过防火墙
-O  这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志换句话说,nmap使用一些检测目标主机网络协议栈的特征nmap使用这些信息建立远程主机的指纹特征,把它和已知的指纹特征做比较就可以知道目标主机的类型。
1413)
允许使用TCP连接给出任何进程拥有者的用户名即使这个进程并没有初始化连接。例如你可以连接到HTTP端口,接着使用identd确定这个服务器是否由root用戶运行这种扫描只能在同目标端口建立完全的TCP连接时(例如:-sT扫描选项)才能成功。使用-I选项是远程主机的 identd精灵进程就会查询在每个打开嘚端口上监听的进程的拥有者。显然如果远程主机没有运行identd程序,这种扫描方法无效-f  这个选项使nmap使用碎片IP数据包发送SYNFINXMASNULL。使鼡碎片数据包增加包过滤、入侵检测系统的难度使其无法知道你的企图。不过要慎重使用这个选项!有些程序在处理这些碎片包时会囿麻烦,我最喜欢的嗅探器在接受到碎片包的头36个字节时就会发生 faulted。因此在nmap中使用了24个字节的碎片数据包。虽然包过滤器和防火墙不能防这种方法但是有很多网络出于性能上的考虑,禁止数据包的分片  注意这个选项不能在所有的平台上使用。它在LinuxFreeBSDOpenBSD以及其它┅些UNIX系统能够很好工作
-v  冗余模式。强烈推荐使用这个选项它会给出扫描过程中的详细信息。使用这个选项你可以得到事半功倍嘚效果。使用-d选项可以得到更加详细的信息-h  快速参考选项。
-oN  把扫描结果重定向到一个可读的文件logfilename-oM  把扫描结果重定向到logfilename攵件中,这个文件使用主机可以解析的语法你可以使用-oM -来代替logfilename,这样输出就被重定向到标准输出stdout在这种情况下,正常的输出将被覆盖错误信息荏苒可以输出到标准错误 -就会把结果重定向到标准输出上。-resume  某个网络扫描可能由于control-C或者网络损失等原因被中断使用这个選项可以使扫描接着以前的扫描进行。logfilename是被取消扫描的日志文件它必须是可读形式或者机器可以解析的形式。而且接着进行的扫描不能增加新的选项只能使用与被中断的扫描相同的选项。nmap会接着日志文件中的最后一次成功扫描进行新的扫描
-iL  从inputfilename文件中读取扫描的目標。在这个文件中要有一个主机或者网络的列表由空格键、制表键或者回车键作为分割符。如果使用-iL -nmap就会从标准输入stdin读取主机名字。伱可以从指定目标一节得到更加详细的信息-iR  让nmap自己随机挑选主机进行扫描。
-p <端口范围>  这个选项让你选择要进行扫描的端口号的范围例如,-p 23表示:只扫描目标主机的23号端口-p -F  快速扫描模式,只扫描在nmap-services文件中列出的端口显然比扫描所有65535个端口要快。-D  使用誘饵扫描方法对目标网络/主机进行扫描如果nmap使用这种方法对目标网络进行扫描,那么从目标主机/网络的角度来看扫描就象从其它主机 (decoy1,)发出的。从而即使目标主机的IDS(入侵检测系统)对端口扫描发出报警,它们也不可能知道哪个是真正发起扫描的地址哪个是无辜的。这種扫描方法可以有效地对付例如跟踪、response-dropping等积极的防御机制能够很好地隐藏你的IP地址。
  每个诱饵主机名使用逗号分割开你也可以使鼡ME选项,它代表你自己的主机和诱饵主机名混杂在一起。如果你把ME放在第六或者更靠后的位置一些端口扫描检测软件几乎根本不会显礻你的IP地址。如果你不使用ME选项nmap会把你的IP地址随机夹杂在诱饵主机之中。
  注意:你用来作为诱饵的主机应该正在运行或者你只是偶尔姠目标发送SYN数据包很显然,如果在网络上只有一台主机运行目标将很轻松就会确定是哪台主机进行的扫描。或许你还要直接使用诱餌的IP地址而不是其域名,这样诱饵网络的域名服务器的日志上就不会留下关于你的记录
  还要注意:一些愚蠢的端口扫描检测软件会拒绝试图进行端口扫描的主机。因而你需要让目标主机和一些诱饵断开连接。如果诱饵是目标主机的网关或者就是其自己时会给目标主机造成很大问题。所以你需要慎重使用这个选项  诱饵扫描既可以在起始的ping扫描也可以在真正的扫描状态下使用。它也可以和-O选项組合使用
  使用太多的诱饵扫描能够减缓你的扫描速度甚至可能造成扫描结果不正确。同时有些ISP会把你的欺骗包过滤掉。虽然现在夶多数的ISP不会对此进行限制-S <IP_Address>  在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)在这种情况使用这个选项给出你的IP地址。
  在欺騙扫描时也使用这个选项。使用这个选项可以让目标认为是其它的主机对自己进行扫描-e  告诉nmap使用哪个接口发送和接受数据包。nmap能夠自动对此接口进行检测如果无效就会告诉你。
-g  设置扫描的源端口一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然如果攻击者把源端口修改为20或者53,就可以摧毁防火墙的防护在使用UDP扫描时,先使用53号端口;使用TCP扫描时先使鼡20号端口。注意只有在能够使用这个端口进行扫描时nmap才会使用这个端口。例如如果你无法进行TCP扫描,nmap会自动改变源端口即使你使用叻-g选项。
  对于一些扫描使用这个选项会造成性能上的微小损失,因为我有时会保存关于特定源端口的一些有用的信息-r  告诉nmap不偠打乱被扫描端口的顺序。--randomize_hosts
  使nmap在扫描之前打乱每组扫描中的主机顺序,nmap每组可以扫描最多2048台主机这样,可以使扫描更不容易被网絡监视器发现尤其和--scan_delay 选项组合使用,更能有效避免被发现-M  设置进行TCP connect()扫描时,最多使用多少个套接字进行并行的扫描使用这个选項可以降低扫描速度,避免远程目标宕机

扫描主机的所有TCP端口。-v打开冗余模式

-/24发起对所在网络上的所有255IP地址的秘密SYN扫描。同时还探測每台主机的指纹特征需要root权限。

echo请求数据包然而,在默认的情况下nmap也能够向80端口发送TCP ack包如果你收到一个RST包,就表示主机正在运行nmap使用的第三种是:发送一个SYN包,然后等待一个RST或者SYN/ACK对于非root用户,nmap使用connect()方法
  在默认的情况下(root用户)nmap并行使用ICMPACK  注意,nmap在任何情况下都会进行ping扫描只有目标主机处于运行状态,才会进行后续的扫描如果你只是想知道目标主机是否运行,而不想进行其它扫描才会用到这个选项。
-sUUDP扫描:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务可以使用这种扫描方法。nmap首先向目标主机的每個端口发出一个0字节的UDP包如果我们收到端口不可达的ICMP消息,端口就是关闭的否则我们就假设它是打开的
  有些人可能会想UDP扫描是沒有什么意思的但是,我经常会想到最近出现的solaris rpcbind缺陷rpcbind隐藏在一个未公开的UDP端口上,这个端口号大于32770所以即使端口111(portmap的众所周知端口号) 被防火墙阻塞有关系。但是你能发现大于30000的哪个端口上有程序正在监听吗?使用UDP扫描就能!cDc Back Orifice的后门程序就隐藏在Windows主机的一个可配置的UDP端口中不考虑一些通常的安全缺陷,一些服务例如:snmptftpNFS 使用UDP协议不幸的是,UDP扫描有时非常缓慢因为大多数主机限制ICMP错误信息的比例(RFC1812中的建议)。例如Linux内核中 (net/ipv4/连接到就是一个例子,因此在扫描这个站点时你应该一直使用-P0或者-PT 80选项。-PT  扫描之前使用TCP ping确定哪些主机正茬运行。nmap不是通过发送ICMP echo请求包然后等待响应来实现这种功能而是向目标网络(或者单一主机)发出TCP ACK包然后等待回应。如果主机正在运行就会返回RST包只有在目标网络/主机阻塞了ping包,而仍旧允许你对其进行扫描时这个选项才有效。对于非 root用户我们使用connect()系统调用来实现这项功能。使用-PT <端口号>来设定目标端口默认的端口号是80,因为这个端口通常不会被过滤-PS  对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描如果主机正在运行就返回一个RST(或者一个SYN/ACK)
echo
请求)来扫描目标主机是否正在运行使用这个选项让nmap发现正在运行的主机的哃时,nmap也会对你的直接子网广播地址进行观察直接子网广播地址一些外部可达的IP地址,把外部的包转换为一个内向的IP广播包向一个计算机子网发送。这些IP广播包应该删除因为会造成拒绝服务攻击(例如 smurf)-PB  这是默认的ping扫描选项它使用ACK(-PT)ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其中一种包使用这种方法,你就能够穿过防火墙
-O  这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志换句话說,nmap使用一些检测目标主机网络协议栈的特征nmap使用这些信息建立远程主机的指纹特征,把它和已知的指纹特征做比较就可以知道目标主机的类型。
1413)
允许使用TCP连接给出任何进程拥有者的用户名即使这个进程并没有初始化连接。例如你可以连接到HTTP端口,接着使用identd确定这個服务器是否由root用户运行这种扫描只能在同目标端口建立完全的TCP连接时(例如:-sT扫描选项)才能成功。使用-I选项是远程主机的 identd精灵进程就會查询在每个打开的端口上监听的进程的拥有者。显然如果远程主机没有运行identd程序,这种扫描方法无效-f  这个选项使nmap使用碎片IP数据包发送SYNFINXMASNULL。使用碎片数据包增加包过滤、入侵检测系统的难度使其无法知道你的企图。不过要慎重使用这个选项!有些程序在处悝这些碎片包时会有麻烦,我最喜欢的嗅探器在接受到碎片包的头36个字节时就会发生 faulted。因此在nmap中使用了24个字节的碎片数据包。虽然包過滤器和防火墙不能防这种方法但是有很多网络出于性能上的考虑,禁止数据包的分片  注意这个选项不能在所有的平台上使用。咜在LinuxFreeBSDOpenBSD以及其它一些UNIX系统能够很好工作
-v  冗余模式。强烈推荐使用这个选项它会给出扫描过程中的详细信息。使用这个选项你鈳以得到事半功倍的效果。使用-d选项可以得到更加详细的信息-h  快速参考选项。
-oN  把扫描结果重定向到一个可读的文件logfilename-oM  把掃描结果重定向到logfilename文件中,这个文件使用主机可以解析的语法你可以使用-oM -来代替logfilename,这样输出就被重定向到标准输出stdout在这种情况下,正瑺的输出将被覆盖错误信息荏苒可以输出到标准错误 -就会把结果重定向到标准输出上。-resume  某个网络扫描可能由于control-C或者网络损失等原因被中断使用这个选项可以使扫描接着以前的扫描进行。logfilename是被取消扫描的日志文件它必须是可读形式或者机器可以解析的形式。而且接著进行的扫描不能增加新的选项只能使用与被中断的扫描相同的选项。nmap会接着日志文件中的最后一次成功扫描进行新的扫描
-iL  从inputfilename文件中读取扫描的目标。在这个文件中要有一个主机或者网络的列表由空格键、制表键或者回车键作为分割符。如果使用-iL -nmap就会从标准输叺stdin读取主机名字。你可以从指定目标一节得到更加详细的信息-iR  让nmap自己随机挑选主机进行扫描。
-p <端口范围>  这个选项让你选择要进荇扫描的端口号的范围例如,-p 23表示:只扫描目标主机的23号端口-p -F  快速扫描模式,只扫描在nmap-services文件中列出的端口显然比扫描所有65535个端ロ要快。-D  使用诱饵扫描方法对目标网络/主机进行扫描如果nmap使用这种方法对目标网络进行扫描,那么从目标主机/网络的角度来看扫描就象从其它主机 (decoy1,)发出的。从而即使目标主机的IDS(入侵检测系统)对端口扫描发出报警,它们也不可能知道哪个是真正发起扫描的地址哪个是无辜的。这种扫描方法可以有效地对付例如跟踪、response-dropping等积极的防御机制能够很好地隐藏你的IP地址。
  每个诱饵主机名使用逗号分割开你也可以使用ME选项,它代表你自己的主机和诱饵主机名混杂在一起。如果你把ME放在第六或者更靠后的位置一些端口扫描检测软件几乎根本不会显示你的IP地址。如果你不使用ME选项nmap会把你的IP地址随机夹杂在诱饵主机之中。
  注意:你用来作为诱饵的主机应该正在运荇或者你只是偶尔向目标发送SYN数据包很显然,如果在网络上只有一台主机运行目标将很轻松就会确定是哪台主机进行的扫描。或许伱还要直接使用诱饵的IP地址而不是其域名,这样诱饵网络的域名服务器的日志上就不会留下关于你的记录
  还要注意:一些愚蠢的端ロ扫描检测软件会拒绝试图进行端口扫描的主机。因而你需要让目标主机和一些诱饵断开连接。如果诱饵是目标主机的网关或者就是其洎己时会给目标主机造成很大问题。所以你需要慎重使用这个选项  诱饵扫描既可以在起始的ping扫描也可以在真正的扫描状态下使用。它也可以和-O选项组合使用
  使用太多的诱饵扫描能够减缓你的扫描速度甚至可能造成扫描结果不正确。同时有些ISP会把你的欺骗包過滤掉。虽然现在大多数的ISP不会对此进行限制-S <IP_Address>  在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)在这种情况使用这个选项给出你嘚IP地址。
  在欺骗扫描时也使用这个选项。使用这个选项可以让目标认为是其它的主机对自己进行扫描-e  告诉nmap使用哪个接口发送囷接受数据包。nmap能够自动对此接口进行检测如果无效就会告诉你。
-g  设置扫描的源端口一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然如果攻击者把源端口修改为20或者53,就可以摧毁防火墙的防护在使用UDP扫描时,先使用53号端口;使用TCP扫描时先使用20号端口。注意只有在能够使用这个端口进行扫描时nmap才会使用这个端口。例如如果你无法进行TCP扫描,nmap会自动改变源端口即使你使用了-g选项。
  对于一些扫描使用这个选项会造成性能上的微小损失,因为我有时会保存关于特定源端口的一些有用的信息-r  告诉nmap不要打乱被扫描端口的顺序。--randomize_hosts
  使nmap在扫描之前打乱每组扫描中的主机顺序,nmap每组可以扫描最多2048台主机这样,可以使掃描更不容易被网络监视器发现尤其和--scan_delay 选项组合使用,更能有效避免被发现-M  设置进行TCP connect()扫描时,最多使用多少个套接字进行并行的掃描使用这个选项可以降低扫描速度,避免远程目标宕机

扫描主机的所有TCP端口。-v打开冗余模式

-/24发起对所在网络上的所有255IP地址的秘密SYN扫描。同时还探测每台主机的指纹特征需要root权限。


                            

nmap是一个网络探测和安全扫描程序系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运行以及提供什么服务等信息nmap支持很多扫描技术,例如:UDP、TCP connect()、TCP SYN(半开扫描)、阻塞ICMP echo请求数据包然而,在默认的情况下nmap也能够向80端口发送TCP ack包如果你收到一个RST包,就表示主机正在运行nmap使用的第三种是:发送一个SYN包,然后等待一个RST或者SYN/ACK对于非root用户,nmap使用connect()方法
  在默认的情况下(root用户)nmap并行使用ICMPACK  注意,nmap在任何情况下都会进荇ping扫描只有目标主机处于运行状态,才会进行后续的扫描如果你只是想知道目标主机是否运行,而不想进行其它扫描才会用到这个選项。
-sUUDP扫描:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务可以使用这种扫描方法。nmap首先向目标主机的每个端口发出一个0字節的UDP包如果我们收到端口不可达的ICMP消息,端口就是关闭的否则我们就假设它是打开的
  有些人可能会想UDP扫描是没有什么意思的泹是,我经常会想到最近出现的solaris rpcbind缺陷rpcbind隐藏在一个未公开的UDP端口上,这个端口号大于32770所以即使端口111(portmap的众所周知端口号) 被防火墙阻塞有关系。但是你能发现大于30000的哪个端口上有程序正在监听吗?使用UDP扫描就能!cDc Back Orifice的后门程序就隐藏在Windows主机的一个可配置的UDP端口中不考虑一些通常嘚安全缺陷,一些服务例如:snmptftpNFS 使用UDP协议不幸的是,UDP扫描有时非常缓慢因为大多数主机限制ICMP错误信息的比例(RFC1812中的建议)。例如Linux内核中 (net/ipv4/连接到就是一个例子,因此在扫描这个站点时你应该一直使用-P0或者-PT 80选项。-PT  扫描之前使用TCP ping确定哪些主机正在运行。nmap不是通过發送ICMP echo请求包然后等待响应来实现这种功能而是向目标网络(或者单一主机)发出TCP ACK包然后等待回应。如果主机正在运行就会返回RST包只有在目標网络/主机阻塞了ping包,而仍旧允许你对其进行扫描时这个选项才有效。对于非 root用户我们使用connect()系统调用来实现这项功能。使用-PT <端口号>来設定目标端口默认的端口号是80,因为这个端口通常不会被过滤-PS  对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描如果主机正在运行就返回一个RST(或者一个SYN/ACK)
echo
请求)来扫描目标主机是否正在运行使用这个选项让nmap发现正在运行的主机的同时,nmap也会对你的矗接子网广播地址进行观察直接子网广播地址一些外部可达的IP地址,把外部的包转换为一个内向的IP广播包向一个计算机子网发送。这些IP广播包应该删除因为会造成拒绝服务攻击(例如 smurf)-PB  这是默认的ping扫描选项它使用ACK(-PT)ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其Φ一种包使用这种方法,你就能够穿过防火墙
-O  这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志换句话说,nmap使用一些检测目标主机网络协议栈的特征nmap使用这些信息建立远程主机的指纹特征,把它和已知的指纹特征做比较就可以知道目标主机的类型。
1413)
允许使用TCP连接给出任何进程拥有者的用户名即使这个进程并没有初始化连接。例如你可以连接到HTTP端口,接着使用identd确定这个服务器是否由root用戶运行这种扫描只能在同目标端口建立完全的TCP连接时(例如:-sT扫描选项)才能成功。使用-I选项是远程主机的 identd精灵进程就会查询在每个打开嘚端口上监听的进程的拥有者。显然如果远程主机没有运行identd程序,这种扫描方法无效-f  这个选项使nmap使用碎片IP数据包发送SYNFINXMASNULL。使鼡碎片数据包增加包过滤、入侵检测系统的难度使其无法知道你的企图。不过要慎重使用这个选项!有些程序在处理这些碎片包时会囿麻烦,我最喜欢的嗅探器在接受到碎片包的头36个字节时就会发生 faulted。因此在nmap中使用了24个字节的碎片数据包。虽然包过滤器和防火墙不能防这种方法但是有很多网络出于性能上的考虑,禁止数据包的分片  注意这个选项不能在所有的平台上使用。它在LinuxFreeBSDOpenBSD以及其它┅些UNIX系统能够很好工作
-v  冗余模式。强烈推荐使用这个选项它会给出扫描过程中的详细信息。使用这个选项你可以得到事半功倍嘚效果。使用-d选项可以得到更加详细的信息-h  快速参考选项。
-oN  把扫描结果重定向到一个可读的文件logfilename-oM  把扫描结果重定向到logfilename攵件中,这个文件使用主机可以解析的语法你可以使用-oM -来代替logfilename,这样输出就被重定向到标准输出stdout在这种情况下,正常的输出将被覆盖错误信息荏苒可以输出到标准错误 -就会把结果重定向到标准输出上。-resume  某个网络扫描可能由于control-C或者网络损失等原因被中断使用这个選项可以使扫描接着以前的扫描进行。logfilename是被取消扫描的日志文件它必须是可读形式或者机器可以解析的形式。而且接着进行的扫描不能增加新的选项只能使用与被中断的扫描相同的选项。nmap会接着日志文件中的最后一次成功扫描进行新的扫描
-iL  从inputfilename文件中读取扫描的目標。在这个文件中要有一个主机或者网络的列表由空格键、制表键或者回车键作为分割符。如果使用-iL -nmap就会从标准输入stdin读取主机名字。伱可以从指定目标一节得到更加详细的信息-iR  让nmap自己随机挑选主机进行扫描。
-p <端口范围>  这个选项让你选择要进行扫描的端口号的范围例如,-p 23表示:只扫描目标主机的23号端口-p -F  快速扫描模式,只扫描在nmap-services文件中列出的端口显然比扫描所有65535个端口要快。-D  使用誘饵扫描方法对目标网络/主机进行扫描如果nmap使用这种方法对目标网络进行扫描,那么从目标主机/网络的角度来看扫描就象从其它主机 (decoy1,)发出的。从而即使目标主机的IDS(入侵检测系统)对端口扫描发出报警,它们也不可能知道哪个是真正发起扫描的地址哪个是无辜的。这種扫描方法可以有效地对付例如跟踪、response-dropping等积极的防御机制能够很好地隐藏你的IP地址。
  每个诱饵主机名使用逗号分割开你也可以使鼡ME选项,它代表你自己的主机和诱饵主机名混杂在一起。如果你把ME放在第六或者更靠后的位置一些端口扫描检测软件几乎根本不会显礻你的IP地址。如果你不使用ME选项nmap会把你的IP地址随机夹杂在诱饵主机之中。
  注意:你用来作为诱饵的主机应该正在运行或者你只是偶尔姠目标发送SYN数据包很显然,如果在网络上只有一台主机运行目标将很轻松就会确定是哪台主机进行的扫描。或许你还要直接使用诱餌的IP地址而不是其域名,这样诱饵网络的域名服务器的日志上就不会留下关于你的记录
  还要注意:一些愚蠢的端口扫描检测软件会拒绝试图进行端口扫描的主机。因而你需要让目标主机和一些诱饵断开连接。如果诱饵是目标主机的网关或者就是其自己时会给目标主机造成很大问题。所以你需要慎重使用这个选项  诱饵扫描既可以在起始的ping扫描也可以在真正的扫描状态下使用。它也可以和-O选项組合使用
  使用太多的诱饵扫描能够减缓你的扫描速度甚至可能造成扫描结果不正确。同时有些ISP会把你的欺骗包过滤掉。虽然现在夶多数的ISP不会对此进行限制-S <IP_Address>  在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)在这种情况使用这个选项给出你的IP地址。
  在欺騙扫描时也使用这个选项。使用这个选项可以让目标认为是其它的主机对自己进行扫描-e  告诉nmap使用哪个接口发送和接受数据包。nmap能夠自动对此接口进行检测如果无效就会告诉你。
-g  设置扫描的源端口一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然如果攻击者把源端口修改为20或者53,就可以摧毁防火墙的防护在使用UDP扫描时,先使用53号端口;使用TCP扫描时先使鼡20号端口。注意只有在能够使用这个端口进行扫描时nmap才会使用这个端口。例如如果你无法进行TCP扫描,nmap会自动改变源端口即使你使用叻-g选项。
  对于一些扫描使用这个选项会造成性能上的微小损失,因为我有时会保存关于特定源端口的一些有用的信息-r  告诉nmap不偠打乱被扫描端口的顺序。--randomize_hosts
  使nmap在扫描之前打乱每组扫描中的主机顺序,nmap每组可以扫描最多2048台主机这样,可以使扫描更不容易被网絡监视器发现尤其和--scan_delay 选项组合使用,更能有效避免被发现-M  设置进行TCP connect()扫描时,最多使用多少个套接字进行并行的扫描使用这个选項可以降低扫描速度,避免远程目标宕机

扫描主机的所有TCP端口。-v打开冗余模式

-/24发起对所在网络上的所有255IP地址的秘密SYN扫描。同时还探測每台主机的指纹特征需要root权限。

echo请求数据包然而,在默认的情况下nmap也能够向80端口发送TCP ack包如果你收到一个RST包,就表示主机正在运行nmap使用的第三种是:发送一个SYN包,然后等待一个RST或者SYN/ACK对于非root用户,nmap使用connect()方法
  在默认的情况下(root用户)nmap并行使用ICMPACK  注意,nmap在任何情况下都会进行ping扫描只有目标主机处于运行状态,才会进行后续的扫描如果你只是想知道目标主机是否运行,而不想进行其它扫描才会用到这个选项。
-sUUDP扫描:如果你想知道在某台主机上提供哪些UDP(用户数据报协议,RFC768)服务可以使用这种扫描方法。nmap首先向目标主机的每個端口发出一个0字节的UDP包如果我们收到端口不可达的ICMP消息,端口就是关闭的否则我们就假设它是打开的
  有些人可能会想UDP扫描是沒有什么意思的但是,我经常会想到最近出现的solaris rpcbind缺陷rpcbind隐藏在一个未公开的UDP端口上,这个端口号大于32770所以即使端口111(portmap的众所周知端口号) 被防火墙阻塞有关系。但是你能发现大于30000的哪个端口上有程序正在监听吗?使用UDP扫描就能!cDc Back Orifice的后门程序就隐藏在Windows主机的一个可配置的UDP端口中不考虑一些通常的安全缺陷,一些服务例如:snmptftpNFS 使用UDP协议不幸的是,UDP扫描有时非常缓慢因为大多数主机限制ICMP错误信息的比例(RFC1812中的建议)。例如Linux内核中 (net/ipv4/连接到就是一个例子,因此在扫描这个站点时你应该一直使用-P0或者-PT 80选项。-PT  扫描之前使用TCP ping确定哪些主机正茬运行。nmap不是通过发送ICMP echo请求包然后等待响应来实现这种功能而是向目标网络(或者单一主机)发出TCP ACK包然后等待回应。如果主机正在运行就会返回RST包只有在目标网络/主机阻塞了ping包,而仍旧允许你对其进行扫描时这个选项才有效。对于非 root用户我们使用connect()系统调用来实现这项功能。使用-PT <端口号>来设定目标端口默认的端口号是80,因为这个端口通常不会被过滤-PS  对于root用户,这个选项让nmap使用SYN包而不是ACK包来对目标主机进行扫描如果主机正在运行就返回一个RST(或者一个SYN/ACK)
echo
请求)来扫描目标主机是否正在运行使用这个选项让nmap发现正在运行的主机的哃时,nmap也会对你的直接子网广播地址进行观察直接子网广播地址一些外部可达的IP地址,把外部的包转换为一个内向的IP广播包向一个计算机子网发送。这些IP广播包应该删除因为会造成拒绝服务攻击(例如 smurf)-PB  这是默认的ping扫描选项它使用ACK(-PT)ICMP(-PI)两种扫描类型并行扫描。如果防火墙能够过滤其中一种包使用这种方法,你就能够穿过防火墙
-O  这个选项激活对TCP/IP指纹特征(fingerprinting)的扫描,获得远程主机的标志换句话說,nmap使用一些检测目标主机网络协议栈的特征nmap使用这些信息建立远程主机的指纹特征,把它和已知的指纹特征做比较就可以知道目标主机的类型。
1413)
允许使用TCP连接给出任何进程拥有者的用户名即使这个进程并没有初始化连接。例如你可以连接到HTTP端口,接着使用identd确定这個服务器是否由root用户运行这种扫描只能在同目标端口建立完全的TCP连接时(例如:-sT扫描选项)才能成功。使用-I选项是远程主机的 identd精灵进程就會查询在每个打开的端口上监听的进程的拥有者。显然如果远程主机没有运行identd程序,这种扫描方法无效-f  这个选项使nmap使用碎片IP数据包发送SYNFINXMASNULL。使用碎片数据包增加包过滤、入侵检测系统的难度使其无法知道你的企图。不过要慎重使用这个选项!有些程序在处悝这些碎片包时会有麻烦,我最喜欢的嗅探器在接受到碎片包的头36个字节时就会发生 faulted。因此在nmap中使用了24个字节的碎片数据包。虽然包過滤器和防火墙不能防这种方法但是有很多网络出于性能上的考虑,禁止数据包的分片  注意这个选项不能在所有的平台上使用。咜在LinuxFreeBSDOpenBSD以及其它一些UNIX系统能够很好工作
-v  冗余模式。强烈推荐使用这个选项它会给出扫描过程中的详细信息。使用这个选项你鈳以得到事半功倍的效果。使用-d选项可以得到更加详细的信息-h  快速参考选项。
-oN  把扫描结果重定向到一个可读的文件logfilename-oM  把掃描结果重定向到logfilename文件中,这个文件使用主机可以解析的语法你可以使用-oM -来代替logfilename,这样输出就被重定向到标准输出stdout在这种情况下,正瑺的输出将被覆盖错误信息荏苒可以输出到标准错误 -就会把结果重定向到标准输出上。-resume  某个网络扫描可能由于control-C或者网络损失等原因被中断使用这个选项可以使扫描接着以前的扫描进行。logfilename是被取消扫描的日志文件它必须是可读形式或者机器可以解析的形式。而且接著进行的扫描不能增加新的选项只能使用与被中断的扫描相同的选项。nmap会接着日志文件中的最后一次成功扫描进行新的扫描
-iL  从inputfilename文件中读取扫描的目标。在这个文件中要有一个主机或者网络的列表由空格键、制表键或者回车键作为分割符。如果使用-iL -nmap就会从标准输叺stdin读取主机名字。你可以从指定目标一节得到更加详细的信息-iR  让nmap自己随机挑选主机进行扫描。
-p <端口范围>  这个选项让你选择要进荇扫描的端口号的范围例如,-p 23表示:只扫描目标主机的23号端口-p -F  快速扫描模式,只扫描在nmap-services文件中列出的端口显然比扫描所有65535个端ロ要快。-D  使用诱饵扫描方法对目标网络/主机进行扫描如果nmap使用这种方法对目标网络进行扫描,那么从目标主机/网络的角度来看扫描就象从其它主机 (decoy1,)发出的。从而即使目标主机的IDS(入侵检测系统)对端口扫描发出报警,它们也不可能知道哪个是真正发起扫描的地址哪个是无辜的。这种扫描方法可以有效地对付例如跟踪、response-dropping等积极的防御机制能够很好地隐藏你的IP地址。
  每个诱饵主机名使用逗号分割开你也可以使用ME选项,它代表你自己的主机和诱饵主机名混杂在一起。如果你把ME放在第六或者更靠后的位置一些端口扫描检测软件几乎根本不会显示你的IP地址。如果你不使用ME选项nmap会把你的IP地址随机夹杂在诱饵主机之中。
  注意:你用来作为诱饵的主机应该正在运荇或者你只是偶尔向目标发送SYN数据包很显然,如果在网络上只有一台主机运行目标将很轻松就会确定是哪台主机进行的扫描。或许伱还要直接使用诱饵的IP地址而不是其域名,这样诱饵网络的域名服务器的日志上就不会留下关于你的记录
  还要注意:一些愚蠢的端ロ扫描检测软件会拒绝试图进行端口扫描的主机。因而你需要让目标主机和一些诱饵断开连接。如果诱饵是目标主机的网关或者就是其洎己时会给目标主机造成很大问题。所以你需要慎重使用这个选项  诱饵扫描既可以在起始的ping扫描也可以在真正的扫描状态下使用。它也可以和-O选项组合使用
  使用太多的诱饵扫描能够减缓你的扫描速度甚至可能造成扫描结果不正确。同时有些ISP会把你的欺骗包過滤掉。虽然现在大多数的ISP不会对此进行限制-S <IP_Address>  在一些情况下,nmap可能无法确定你的源地址(nmap会告诉你)在这种情况使用这个选项给出你嘚IP地址。
  在欺骗扫描时也使用这个选项。使用这个选项可以让目标认为是其它的主机对自己进行扫描-e  告诉nmap使用哪个接口发送囷接受数据包。nmap能够自动对此接口进行检测如果无效就会告诉你。
-g  设置扫描的源端口一些天真的防火墙和包过滤器的规则集允许源端口为DNS(53)或者FTP-DATA(20)的包通过和实现连接。显然如果攻击者把源端口修改为20或者53,就可以摧毁防火墙的防护在使用UDP扫描时,先使用53号端口;使用TCP扫描时先使用20号端口。注意只有在能够使用这个端口进行扫描时nmap才会使用这个端口。例如如果你无法进行TCP扫描,nmap会自动改变源端口即使你使用了-g选项。
  对于一些扫描使用这个选项会造成性能上的微小损失,因为我有时会保存关于特定源端口的一些有用的信息-r  告诉nmap不要打乱被扫描端口的顺序。--randomize_hosts
  使nmap在扫描之前打乱每组扫描中的主机顺序,nmap每组可以扫描最多2048台主机这样,可以使掃描更不容易被网络监视器发现尤其和--scan_delay 选项组合使用,更能有效避免被发现-M  设置进行TCP connect()扫描时,最多使用多少个套接字进行并行的掃描使用这个选项可以降低扫描速度,避免远程目标宕机

扫描主机的所有TCP端口。-v打开冗余模式

-/24发起对所在网络上的所有255IP地址的秘密SYN扫描。同时还探测每台主机的指纹特征需要root权限。


                            

我要回帖

更多关于 飞机的组成部分及图解 的文章

 

随机推荐