过人科技网

例如:scanme.nmap.org,microsoft.com

简介: 例如:scanme.nmap.org,microsoft.com / 24、192.168.0.1; 10.0.0-255.1-254-iL <输入文件名>:来自主机/网络列表的输入-iR :选择随机目标

名称nmap-网络探索工具和安全性/端口扫描程序概要nmap [扫描类型...] [选项] {目标规格}Nmap 7.70SVN(https://nmap.org)用法:nmap [扫描类型] [选项] {目标规范}目标规格:可以传递主机名,IP地址,网络等。

例如:scanme.nmap.org,microsoft.com / 24、192.168.0.1; 10.0.0-255.1-254-iL <输入文件名>:来自主机/网络列表的输入-iR :选择随机目标--exclude :排除主机/网络--excludefile :从文件中排除列表主机发现:-sL:列出扫描-仅列出要扫描的目标-sn:Ping扫描-禁用端口扫描-Pn:将所有主机视为联机-跳过主机发现-PS / PA / PU / PY [端口列表]:对给定端口的TCP SYN / ACK,UDP或SCTP发现-PE / PP / PM:ICMP回显,时间戳和网络掩码请求发现探针-PO [协议列表]:IP协议Ping-n / -R:从不解析DNS /始终解析[默认值:有时]--dns-servers :指定自定义DNS服务器--system-dns:使用操作系统的DNS解析器--traceroute:到每个主机的跃点路径扫描技术:-sS / sT / sA / sW / sM:TCP SYN / Connect()/ ACK / Window / Maimon扫描-sU:UDP扫描-sN / sF / sX:TCP空,FIN和Xmas扫描--scanflags <标志>:自定义TCP扫描标志-sI <僵尸主机[:probeport]>:空闲扫描-sY / sZ:SCTP INIT / COOKIE-ECHO扫描-sO:IP协议扫描-b :FTP退回扫描端口规格和扫描顺序:-p <端口范围>:仅扫描指定的端口例如:-p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9--exclude-ports <端口范围>:从扫描中排除指定端口-F:快速模式-扫描的端口少于默认扫描-r:连续扫描端口-不要随机化--top-ports <编号>:扫描<编号>最常见的端口--port-ratio <比率>:扫描端口比<比率>更常见服务/版本检测:-sV:探测打开的端口以确定服务/版本信息--version-intensity <级别>:设置为0(浅)到9(尝试所有探针)--version-light:限制为最可能的探针(强度2)--version-all:尝试每个探针(强度9)--version-trace:显示详细的版本扫描活动(用于调试)脚本扫描:-sC:相当于--script = default--script = 是逗号分隔的列表目录,脚本文件或脚本类别--script-args = :脚本参数--script-args-file =文件名:在文件中NSE脚本args--script-trace:显示所有发送和接收的数据--script-updatedb:更新脚本数据库。

是脚本文件的逗号分隔列表,或脚本类别。

操作系统检测:-O:启用操作系统检测--osscan-limit:将操作系统检测限制为有希望的目标--osscan-guess:更积极地猜测操作系统时序和性能:花费

--max-retries :限制端口扫描探针重传的次数。

--host-timeout <时间>:在很长一段时间后放弃目标--scan-delay /-max-scan-delay <时间>:调整探头之间的延迟--min-rate :每秒发送数据包的速度不低于--max-rate :每秒发送数据包的速度不超过防火墙/标识闪避和疏散:-F; --mtu :分段数据包(可选,带有给定的MTU)-D :用诱饵掩盖扫描-S :欺骗源地址-e :使用指定的接口-g /-source-port <端口号>:使用给定的端口号--proxies :通过HTTP / SOCKS4代理中继连接--data <十六进制字符串>:将自定义有效负载附加到发送的数据包--data-string <字符串>:将自定义ASCII字符串附加到发送的数据包--data-length :将随机数据追加到发送的数据包中--ip-options <选项>:发送具有指定ip选项的数据包--ttl :设置IP生存时间字段--spoof-mac :欺骗您的MAC地址--badsum:发送带有虚假TCP / UDP / SCTP校验和的数据包输出:-oN / -oX / -oS / -oG <文件>:以普通,XML,s |

-oA :一次以三种主要格式输出-v:提高详细程度(使用-vv或更高的效果更好)-d:提高调试级别(使用-dd或更多以获得更大的效果)--reason:显示端口处于特定状态的原因--open:仅显示打开(或可能打开)的端口--packet-trace:显示所有发送和接收的数据包--iflist:打印主机接口和路由(用于调试)--append-output:追加而不是破坏指定的输出文件--resume <文件名>:恢复中止的扫描--stylesheet <路径/ URL>:XSL样式表,可将XML输出转换为HTML--webxml:Nmap.Org的参考样式表,用于更便携式的XML--no-stylesheet:防止关联带有XML输出的XSL样式表MISC:-6:启用IPv6扫描-A:启用操作系统检测,版本检测,脚本扫描和路由--datadir <目录名>:指定自定义Nmap数据文件位置--send-eth /-send-ip:使用原始以太网帧或IP数据包发送--privileged:假设用户具有完全特权--unprivileged:假设用户缺乏原始套接字特权-V:打印版本号-h:打印此帮助摘要页面。

例子:nmap -v -A scanme.nmap.orgnmap -v -sn 192.168.0.0/16 10.0.0.0/8nmap -v -iR 10000 -Pn -p 80有关更多选项和示例,请参见手册页(https://nmap.org/book/man.html)目标规格Nmap命令行上不是选项(或选项参数)的所有内容被视为目标主机规范。

将主机名作为目标时,将通过域名解析系统(DNS)确定要扫描的IP地址。

使Nmap全部扫描解析的地址而不是仅第一个,使用--resolve-all选项。

为此,Nmap支持CIDR样式的寻址。

您可以将/ numbits附加到IP地址或主机名和Nmap将扫描第一个位数为的每个IP地址与给定的参考IP或主机名相同。

例如,192.168.10.0/24将扫描192.168.10.0之间的256个主机(二进制:11000000 10101000 00001010 00000000)和192.168.10.255(二进制:1100000010101000 00001010 11111111)(含)。

192.168.10.40/24会准确扫描相同的目标。

假设主机scanme.nmap.org位于IP地址64.13.134.52,规范scanme.nmap.org/16将扫描65,536 IP地址在64.13.0.0和64.13.255.255之间。

IPv4的最大值是/ 32,这是因为所有地址位都是固定的,所以仅扫描命名的主机或IP地址。

IPv6的最大值是/ 128,它执行相同的操作。

例如,您可能想扫描192.168.0.0/16,但跳过任何以.0或.255结尾的IP,因为它们可以用作子网网络和广播地址。

您无需指定普通的IP地址,可以为每个八位位组指定逗号分隔的数字或范围列表。

对于例如,192.168.0-255.1-254将跳过以结尾的范围内的所有地址.0或.255,以及192.168.3-5,7.1将扫描四个地址192.168.3.1,192.168.4.1、192.168.5.1和192.168.7.1。

范围不需要限于最后八位位组:说明符0-255.0-255.13.37将执行在Internet范围内扫描所有以13.37结尾的IP地址。

IPv6地址可以由其完全限定的IPv6地址指定,也可以由主机名或子网的CIDR表示法。

在Unix上系统,这是一个百分号,后跟一个接口名称;一套完整的地址可能是fe80 :: a8bb:ccff:fedd:eeff%eth0。

Nmap在命令行上接受多个主机规范,但它们不必须是相同的类型。

命令nmap scanme.nmap.org 192.168.0.0/810.0.0,1,3-7.-达到您的期望。

虽然通常在命令行上指定目标,但以下内容选项也可用于控制目标的选择:-iL输入文件名(来自列表的输入)从输入文件名读取目标规范。

传递大量的主机在命令行上通常很尴尬,但这是一个普遍的愿望。

对于例如,您的DHCP服务器可能会导出10,000个当前租约的列表您要扫描的。

只是生成要扫描的主机列表,并将该文件名作为-iL选项的参数。

参赛作品可以采用任何接受的格式通过Nmap在命令行(IP地址,主机名,CIDR,IPv6或八位字节)范围)。

-iR个主机(选择随机目标)对于互联网范围的和其他研究,您可能需要选择随机瞄准。

请记住,有些网络管理员会对其网络进行未经授权的扫描,并且可能抱怨。

如果你真的发现自己无聊的一个下雨的下午,尝试执行命令nmap -Pn -sS -p 80 -iR 0 --open查找随机Web服务器进行浏览。

--exclude host1 [,host2 [,...]](不包括主机/网络)指定以逗号分隔的目标列表,以将其排除在扫描之外即使它们是您指定的整个网络范围的一部分。

名单您传入时使用的是常规Nmap语法,因此它可以包含主机名,CIDR网络块,八位位组范围等。

当您希望使用网络时,此功能很有用扫描包括不可触摸的关键任务服务器,已知会对端口扫描或其他站点管理的子网产生不利影响人。

--excludefile exclude_file(从文件中排除列表)它与--exclude选项相同的功能,除了排除的目标以换行符,空格或制表符分隔exclude_file,而不是在命令行上。

主机发现任何网络侦察任务的第一步,就是减少一组(有时是巨大的)IP范围,分为一系列活跃或有趣的IP主机。

扫描每个IP地址的每个端口都很慢,通常不必要。

当然,使主机变得有趣的原因在很大程度上取决于扫描目的。

网络管理员可能只对正在运行的主机感兴趣某种服务,而安全审核员可能会关心每一个设备与IP地址。

管理员可能只使用ICMP就可以了ping以在其内部网络上定位主机,同时进行外部渗透测试员可能会使用各种各样的数十种探针来逃避尝试防火墙限制。

由于主机发现需求如此多样,因此Nmap了各种各样的用于定制所用技术的选项。

主机发现有时称为ping扫描,但它远远超出了简单的ICMP回显请求数据包与无所不在的ping工具相关联。

用户可以跳过ping步骤完全使用列表扫描(-sL)或通过禁用ping(-Pn),或使用多端口TCP SYN / ACK,UDP,SCTP INIT任意组合的网络和ICMP探针。

如果未主机发现选项,则Nmap发送ICMP回显请求,即TCPSYN数据包到端口443,TCP ACK数据包到端口80,以及ICMP时间戳请求。

(对于IPv6,省略了ICMP时间戳记请求,因为它不是这些默认值等效于-PE -PS443 -PA80 -PP选项。

ARP(IPv4)和邻居发现是例外(用于IPv6)扫描,用于本地以太网上的任何目标。

对于非特权的Unix Shell用户,默认探测器是SYN数据包,用于端口80和443使用connect系统调用。

该主机发现通常是扫描本地网络时已足够,但更全面的建议使用发现探针进行安全审核。

你可以增加通过使用以下方式发送许多探测器类型,您有可能穿透严格的防火墙不同的TCP端口/标志和ICMP代码。

另请注意,ARP /邻居默认情况下,针对本地以太网网络上的目标执行发现(-PR)即使您指定了其他-P *选项,因为它几乎总是更快并且更加有效。

默认情况下,Nmap会进行主机发现,然后针对它确定的每个主机都在线。

即使您指定也是如此非默认主机发现类型,例如UDP探针(-PU)。

了解有关-sn的信息选项以了解如何仅执行主机发现,或使用-Pn跳过主机发现和端口扫描所有目标主机。

以下选项控制主机发现:-sL(列表扫描)列表扫描是主机发现的简并形式,仅列出指定网络的每个主机,而不会将任何数据包发送到目标主机。

例如,fw.chi是一家公司的芝加哥防火墙。

名单扫描是一个很好的检查,以确保您具有正确的IP地址为您的目标。

如果主机使用您不认识的域名,值得进一步以防止扫描错误的公司网络。

由于该想法只是打印目标主机的列表,因此更高级的功能,例如端口扫描,操作系统检测或ping扫描不能与此结合。

如果您想禁用ping扫描,同时仍执行此类高级功能,请继续阅读在-Pn(跳过ping)选项上。

-sn(无端口扫描)此选项告诉Nmap在主机发现后不要进行端口扫描,并且仅打印出响应主机发现的可用主机探针。

这通常称为“ ping扫描”,但您也可以要求运行traceroute和NSE主机脚本。

默认情况下这是一个步骤比列表扫描更具侵入性,并且通常可以用于相同的目的。

知道有多少主机在运行更有价值对于攻击者而言,比对每个IP进行列表扫描所的列表要多,并且主机名。

使用-sn完成的默认主机发现包含一个ICMP回显请求,TCP SYN到端口443,TCP ACK到端口80,以及ICMP时间戳记请求默认。

由非特权用户执行时,仅发送SYN数据包(使用连接呼叫)到目标上的端口80和443。

当一个特权用户尝试扫描本地以太网ARP上的目标除非指定了--send-ip,否则将使用请求。

-sn选项可以是与任何发现探针类型(-P *选项,不包括-Pn)以获得更大的灵活性。

当使用严格的防火墙位于运行Nmap的源主机和目标网络之间,建议使用那些高级技术。

在Nmap的早期版本中,-sn被称为-sP。

通常,Nmap使用在此阶段,确定要进行较重扫描的活动计算机。

默认,Nmap仅执行繁重的探测,例如端口扫描,版本检测或针对发现正常的主机进行操作系统检测。

禁用主机使用-Pn进行发现会导致Nmap尝试请求的扫描功能针对指定的每个目标IP地址。

所以如果B类目标地址在命令行上指定空格(/ 16),所有65,536个IP地址均为扫描。

与列表扫描一样,将跳过正确的主机发现,但是而不是停止并打印目标列表,Nmap继续就像每个目标IP处于活动状态一样执行请求的功能。

跳过ping扫描和端口扫描,同时仍允许NSE运行,请使用两个选项-Pn -sn在一起。

对于本地以太网上的计算机,ARP扫描仍将是执行(除非指定了--disable-arp-ping或--send-ip),因为Nmap需要MAC地址以进一步扫描目标主机。

-PS端口列表(TCP SYN Ping)此选项将发送一个空的TCP数据包,并设置SYN标志。

默认值目标端口为80(可在编译时通过更改进行配置nmap.h中的DEFAULT_TCP_PROBE_PORT_SPEC)。

通常,目标端口将关闭,并且发送回的RST(复位)数据包。

如果端口恰好是开放的,则目标将通过响应进行TCP三向握手的第二步SYN / ACK TCP数据包。

然后,运行Nmap的机器将新生的计算机通过响应RST而不是发送ACK数据包进行连接这将完成三向握手并建立完整的连接。

RST数据包由运行机器的内核发送Nmap响应意外的SYN / ACK,而不是Nmap本身。

RST或先前讨论的SYN / ACK响应告诉Nmap主机可用和反应迅速。

如果连接快速成功或ECONNREFUSED失败,则返回TCP堆栈必须已收到SYN / ACK或RST,并且主机已标记可用。

-PA端口列表(TCP ACK Ping)TCP ACK ping与刚刚讨论的SYN ping非常相似。

的您可能猜到的不同是,TCP ACK标志已设置而不是SYN标志。

此类ACK数据包声称已被确认通过已建立的TCP连接发送数据,但不存在这样的连接。

所以远程主机应始终以RST数据包作为响应,公开其存在的过程。

-PA选项使用与SYN探针(80)相同的默认端口,并且可以还应采用相同格式的目标端口列表。

如果非特权用户尝试此操作,前面讨论过的连接解决方法用来。

此解决方法是不完善的,因为连接实际上正在发送SYN数据包而不是ACK。

许多管理员配置路由器并其他简单的防火墙可以阻止传入的SYN数据包,除了那些指定用于公司网站或邮件服务器之类的公共服务。

当无状态防火墙规则由于已安装到位,因此在以下情况下,SYN ping探针(-PS)可能会被阻塞发送到封闭的目标端口。

的LinuxNetfilter / iptables系统通过--state选项支持此操作根据连接状态对数据包进行分类。

SYN探针更有可能在这种系统上工作,因为通常会出现意外的ACK数据包被认为是伪造的并掉了下来。

-PU端口列表(UDP Ping)另一个主机发现选项是UDP ping,它将UDP数据包发送到给定的端口。

对于大多数端口,数据包将为空,尽管有些使用特定于协议的有效负载,更有可能引发响应。

数据包的内容也可能会受到--data,--data-string和--data-length选项。

高度不常见的端口由默认,因为发送到开放端口通常是不希望的特定的扫描类型。

击中目标计算机上的关闭端口后,UDP探针应返回ICMP端口不可达的数据包。

许多其他类型的ICMP错误,如主机/网络无法访问或超过TTL表示出现故障或无法访问的主机。

这就是默认探针端口为40125的原因,这是极不可能被使用的。

一些服务,例如字符生成器(计费)协议,将响应一个空的UDP数据包,从而向Nmap透露该机器可用。

这种扫描类型的主要优点是它绕过了防火墙,仅筛选TCP的过滤器。

该设备的外部接口已过滤默认情况下,所有TCP端口均可用,但UDP探针仍会引出端口无法访问的消息,从而丢失了设备。

-PY端口列表(SCTP INIT Ping)此选项发送包含最小INIT块的SCTP数据包。

的默认目标端口为80(可在编译时通过更改配置nmap.h中的DEFAULT_SCTP_PROBE_PORT_SPEC)。

语法与-p相同,只是端口类型不同不允许使用S:这样的说明符。

如果端口碰巧是开放的,则目标将采取以下方式进行SCTP四次握手的第二步用INIT-ACK块响应。

如果运行Nmap的计算机上有一个功能性的SCTP堆栈,然后通过用ABORT块响应而不是发送COOKIE-ECHO块这将是四路握手的下一步。

ABORT数据包由运行Nmap的计算机的内核发送,以响应意外的INIT-ACK,不是Nmap本身。

中止或先前讨论的INIT-ACK响应告诉Nmap主机是可用且响应迅速。

-PE; -PP; -PM(ICMP Ping类型)除了异常的TCP,UDP和SCTP主机发现类型前面讨论过,Nmap可以发送由无处不在的ping程序。

Nmap发送ICMP类型8(回显请求)数据包到目标IP地址,期望输入0(回显)可用主机。

不幸的是,对于网络浏览器,许多主机和防火墙现在阻止了这些数据包,而不是按要求进行响应RFC 1122 [2]。

因此,仅ICMP扫描不够可靠针对Internet上的未知目标。

但是对于系统管理员监视内部网络,它们可以是切实有效的方法。

虽然echo请求是标准的ICMP ping查询,但Nmap不会停止那里。

ICMP标准(RFC 792 [3]和RFC 950 [4])也指定了时间戳记请求,信息请求和地址掩码请求数据包分别为代码13、15和17。


以上是文章"

例如:scanme.nmap.org,microsoft.com

"的内容,欢迎阅读过人科技网的其它文章