使用工具:Kali Linux、Metaspoliatable(作为攻击目标)
一般系统都会自带的ping
命令:
ping <target_ip>
在Kali Linux中,自带有比ping
更强大的fping
命令:
一个使用fping扫描某一网段活动主机的命令如下:
fping -a -g <start_ip> <end_ip> >hosts.txt
其中选项-a
表示在输出中只显示活动主机,-g
用于指定我们想要扫描的IP地址范围。>hosts.txt
表示将结果重定向到hosts.txt中。
当发现主机以后,就可以进行端口的扫描了。在Kali Linux中,自带有非常强大的端口扫描工具Nmap。
在第一种扫描方式中,Nmap试图在每个端口上完成三次握手,之后又通过友好的方式断开连接,因此不会对目标造成洪泛攻击并使其崩溃。
命令如下:
nmap -sT -p- -Pn <target_ip>
参数-sT
表示Nmap运行了一个TCP扫描,-s
表示扫描的类型,-T
表示TCP扫描。-p-
用来告诉Nmap要扫描所有的端口。-Pn
用来跳过主机发现阶段,对所有地址进行扫描。
如果需要对整个子网或某一IP地址段进行扫描,只需在命令最后指定IP地址范围:
nmap -sT -p- -Pn <start_ip>-<end_ip>
如果需要扫描一组IP地址不连续的主机,可以创建一个文本文件并将每个IP地址逐行填入文件中,然后在Nmap中使用-iL <path_of_the_file>
即可。
和TCP扫描类似,SYN扫描只进行TCP三次握手的前两步,因此速度更快,也是Nmap的默认扫描模式。
nmap [-sS] -p- -Pn <target_ip>
其中参数-sS
用方括号括起来表示可选,如果不加这个参数,则默认使用SYN扫描模式。
在端口扫描中,一个很重要的部分就是对UDP端口的扫描,而这往往被初学者所忽视。
nmap -sU <target_ip>
注意到在上面的命令中-p-
和-Pn
选项没有了。UDP扫描的一个缺点是速度非常慢,即使是使用默认的1000个常用端口扫描,也要花费很多时间。
图1. 使用SYN方式扫描
略
NSE(Nmap Script Engine)极大地丰富了Nmap的功能,包括授权(Auth)、广播(Broadcast)、暴力法(Brute)、默认(Default)、发现(Discovery)、Dos、漏洞利用(Exploit)、外部(External)、漏洞检查(Fuzzer)、入侵(Intrusive)、恶意软件(Malware)、安全(Safe)、版本(Version)和漏洞(Vuln)等多个类别。NSE可以在 http://nmap.org/nsedoc/ 上找到。
在nmap命令中使用--script
参数,后面加上脚本名称即可。
nmap --script <script_name> <target_ip>
-sV
参数用于版本扫描,Nmap会尽可能地提供被扫描系统服务的详细信息。-T
参数用于改变扫描速度,0表示最慢而5表示最快。-O
参数用于识别操作系统,当识别出操作系统之后,攻击可以变得更有针对性。且听下回分解