ike-scan是VPN检测器和扫描器, 是排名全球100强黑客工具之一,它是一款检测IKE服务传输特性的利器。众所皆知,IKE是VPN网络中服务器和远程客户端建立连接的机制。在扫描到VPN服务器的IP地址后,将改造过的IKE数据包分发给VPN网中的每一主机,只要是运行IKE的主机就会发回反馈来证明它存在。此工具然后对这些反馈数据包进行记录和显示,并将它们与一系列已知的VPN产品指纹进行对比。该工具有Windows和Linux两个版本。
现在的VPN网络都是基于IPsec技术搭建的。这类VPN默认使用UDP协议,端口为500。由于不监听TCP端口,所以无法被TCP扫描发现。同时,它不会发送ICMP无法抵达包,所以也不会被UDP端口扫描所发现。由于IPsec规定,服务不会对错误格式包响应,所以即使使用UDP协议,向端口500发送垃圾数据,也不会探测到VPN服务。
要想判断VPN服务,必须遵循IPsec技术规范,发送正确格式的包,才能嗅探服务器是否存在VPN服务。Kali Linux默认集成了ike-scan工具。该工具功能强大,不仅支持IPsec VPN的两种工作连接模式,进行指纹识别,还可以伪造各种不规范包,以获取更多的信息。
ike-scan [选项] [主机地址…]
–help或-h显示此使用信息并退出。
–file = <fn>或-f <fn>从指定的文件中读取主机名或地址而不是从命令行。一个名字或IP每行地址对标准输入使用“ – ”。
–sport = <p>或-s <p>将UDP源端口设置为<p>,default = 500,0 = random。
一些IKE实现需要客户端使用UDP源端口500,不会与其他端口通话。请注意,通常需要超级用户权限使用低于1024的非零源端口系统上的一个进程可以绑定到给定的源端口,在任何一个时间使用–nat-t选项更改,默认源端口为4500
–dport = <p>或-d <p>将UDP目标端口设置为<p>,default = 500。
UDP端口500是ISAKMP的分配的端口号,这是大多数(如果不是全部)IKE使用的端口实现。使用–nat-t选项更改,默认目标端口为4500
–retry = <n>或-r <n>将每个主机的总尝试次数设置为<n>,默认= 3。
–timeout = <n>或-t <n>将每个主机超时的初始设置设置为<n> ms,默认= 500。
此超时是发送到每个主机的第一个数据包。随后的超时乘以回退系数设置为–backoff。
–bandwidth = <n>或-B <n>将所需的出站带宽设置为<n>,默认= 56000
默认值为每秒位数。如果你将“K”附加到值,则单位是千比特每秒;如果你附“M”值,单位是兆比特每秒。“K”和“M”后缀代表十进制,而不是二进制,倍数。
所以64K是64000,而不是65536。
–interval = <n>或-i <n>将最小数据包间隔设置为<n> ms。
分组间隔将不小于此数。指定的时间间隔默认为毫秒。如果“u”附加到该值,则间隔是微秒,如果附加了“s”间隔是秒。如果你想要使用一个给定的带宽,那就是更容易使用–bandwidth选项。您不能同时指–interval和–bandwidth,因为他们只是改变的不同方法相同的底层变量。
–backoff = <b>或-b <b>将超时退避因子设置为<b>,默认= 1.50。
每个主机的超时乘以这个因素每次超时后所以,如果重试的次数是3,初始的每个主机超时是500ms和退货因子是1.5,那么第一个超时就是500ms,第二个750ms和第三个1125ms。
–verbose或-v显示详细的进度消息。
使用多次以获得更大的效果:
1 – 显示每个通行证何时完成收到包含无效Cookie的数据包。
2 – 显示发送和接收的每个数据包主机从列表中删除。
3 – 显示主机,供应商ID和退货清单扫描开始之前。X-45454545 CEEC X-这样打印出较少的协议信息输出线较短。
– multiline或-M分割多行的有效载荷解码。
–lifetime = <s>或-l <s>将IKE生存期设置为秒,默认= 28800。
–lifesize = <s>或-z <s>将IKE生活设置为千字节,默认= 0。
–auth = <n>或-m <n>设置身份验证。方法为<n>,default = 1(PSK)。
RFC定义的值为1到5.请参见RFC 2409附录A.检查点混合模式为64221。GSS(Windows“Kerberos”)为65001。XAUTH使用65001到65010。这不适用于IKEv2。
–version或-V显示程序版本并退出。
–vendor = <v>或-e <v>将供应商ID字符串设置为十六进制值<v>。