信息搜集
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f8e990c4815ac623f619f55779aa0d6e.jpeg#pic_center)
前言
黑客入侵网络的过程一般是首先利用扫描工具搜集目标主机或网络的详细信息,进而发现目标系统的漏洞或脆弱点,然后根据脆弱点的位置、详细说明展开攻击。安全管理员可以利用扫描工具的扫描结果及时发现系统漏洞并采取相应的补救措施,已避免受入侵者攻击。
主机发现
工作原理
在黑客和安全管理员利用扫描工具收集主机信息时,对活动主机的探测是扫描工作的第一步,因为只有收集活动的主机的信息才有意义。活动主机探测是指向目标主机或目标主机的指定端口发送探测数据包,并记录目标主机的响应。
活动主机探测技术主要有如下几种:
1.ICMP Ping
向目标主机发送ICMP回显请求(Echo Request)报文,期待从运行主机得到ICMP回显应答(Echo Reply)报文,从而判断出目标主机的存活状态。通过并行轮转形式发送大量的ICMP Ping请求,可以用来对一个网段进行大范围扫射,由此来确定主机的存活情况。尽管并行轮转探测的准确率率和效率都比较高,但是一般的路由器或防火墙都通过阻塞ICMP报文限制了ICMP Ping探测。
2.TCP SYN Ping
向目标主机的常用端口发送设置标志位为SYN的TCP数据报文,如果目标主机处于活动状态,则其将会返回标志位为SYN | ACK或RST的TCP数据报文。在目标主机活动的情况下,如果这个常用端口处于关闭的状态,则目标主机将返回RST数据报文,反之,就进行TCP第三次握手的第二步,目标主机就返回SYN | ACK TCP数据报文。这种常用端口打开的探测是半开放的探测,因为探测程序没有必要去打开一个完全的TCP连接,当探测主机收到SYN |ACK TCP数据报文时,其会马上向目标主机发送RST包,来终止TCP的第三次握手。这种探测的缺点是,必须要有root权限才能构造和发送SYN数据包,并且在通常情况下,大多数管理员会配置自己的路由器或其他简单的防火墙来封锁SYN数据报文。
3.TCK ACK Ping
向目标主机的常用端口发送设置标志位为ACK的TCP数据报文。如果目标主机处于活动状态,则无论这个端口打开还是关闭,其都会返回标志位为RST的数据报文,这种方法也同样需要root权限。有一种常用的防火墙,它是利用有状态的规则来封锁预期的数据报文,开始这一特性之存在于高端防火墙,但是这些年来应用越来越普遍。这些防火墙会根据连接的状态把报文进行分类,通常ACK报文会被识别而被过滤掉。
4.UDP Ping
向目标主机的指定端口发送UDP数据报文,如果目标主机处于活跃状态,并且所指定端口为关闭的,那么目标主机就会返回ICMP端口无法到达的回应报文;如果指定端口是一个开放的端口,则大多服务会忽略这个报文而不做任何回应。因此这个指定端口通常必须是一些不常用的端口,因为只有选这些不常用的端口才能保证此方法的有效性和可行性,这种探测方法可以穿越只过滤TCP的防火墙或过滤器。
实验
Nmap简介
用于发现活动主机的扫描工具有很多,常用的有SuperScan、X-scan、流光、Nmap等,也可以使用命令如Ping、nbtstat来探测活动主机。这里使用Nmap演示。
Nmap(网络映射器)是一款用于网络发现和安全审计的网络安全工具,它是自由软件。软件名字Nmap是Network Mapper的简称。通常情况下,Nmap用于:
- 列举网络主机清单
- 管理服务升级调度
- 监控主机
- 服务运行状况
Nmap可以检测目标主机是否在线、端口开放情况、侦测运行的服务类型及版本信息、侦测操作系统与设备类型等信息。 它是网络管理员必用的软件之一,用以评估网络系统安全。
Nmap 是不少黑客及脚本小子爱用的工具 。系统管理员可以利用Nmap来探测工作环境中未经批准使用的服务器,黑客通常会利用Nmap来搜集目标电脑的网络设定,从而计划攻击的方法。
Nmap通常用在信息搜集阶段,用于搜集目标机主机的基本状态信息。扫描结果可以作为漏洞扫描、漏洞利用和权限提升阶段的输入。例如,业界流行的漏洞扫描工具Nessus与漏洞利用工具Metasploit都支持导入Nmap的XML格式结果,而Metasploit框架内也集成了Nmap工具(支持Metasploit直接扫描)。
______维基百科
实验拓扑图如下:
1.-sL(列表扫描)
列表扫描仅仅列出指定网络上的每台主机,而不发送任何报文到目标主机。默认情况下,nmap仍然对主机进行反向域名解析 ,以获取他们的名字,主机名有时能给出有用的信息。Nmap最后还会报告IP地址总数。列表扫描可以很好地确保用户拥有正确的目标IP。
列表扫描的方式:
nmap -v -sL 192.168.2.0/24
其中,-v参数是启用verbose模式,可以查看Nmap运行的详细过程,或者加上-vv获得更加详细的信息。
2.-sP(Ping扫描)
该选项告诉Nmap仅仅进行Ping扫描,然后打印出对扫描做出响应的主机。其比列表扫描更积极,常常用于和列表扫描相同的目的。对于攻击者来说,了解多少主机正在运行比列表扫描提供的一列IP和主机名更有价值。它可以很方便的得出网络上的多少机器正在运行或者监视服务器是否正常运行。
Ping扫描的方式:
nmap -v -sP 192.168.2.0/24
可以看到扫描了256个ip,扫描到6台设备。
3.-PS [portlist](TCP SYN Ping)
该选项发送一个设置了SYN标志位的空报文。SYN标志位告诉对方你正试图建立一个连接,通常目标端口是关闭的,目标主机返回RST(复位)数据报文。如果端口是开放的,则目标会进行TCP三步握手的第二步,回应一个SYN | ACK TCP报文,然后运行Nmap的机器会扼杀这个正在建立的连接;否则,一个完全的连接将会建立。Nmap并不关心端口开放还是关闭。无论RST还是SYN | ACK响应都告诉Nmap该机器正在运行。
TCP SYN Ping扫描方式:
nmap -v -PS 192.168.38.180
端口扫描
原理简介
通过端口扫描,可以得到很多有用的信息,从而发现系统的安全漏洞。它是系统用户了解系统目前向外界提供了哪些服务,从而为系统用户管理网络提供了一种手段。一个端口就是一个潜在的通信信道,也就是一个入侵通道。端口扫描技术是一项自动探测本地和远程系统端口开放情况的策略及方法。端口扫描技术的原理是端口扫描向目标主机的TCP / IP 服务端口发送探测数据包,并记录目标主机的响应。通过分析响应来判断服务端口是打开还是关闭,就可以得知端口提供的服务或信息。端口扫描也可以通过捕获本地主机或服务器的流入流出IP数据包来监视本地主机的运行情况,他通过对接收到的数据进行分析,帮助人们发现目标主机的某些内在弱点。
实验
本实验同样使用的Nmap扫描系统,网络拓扑图如下:
1.扫描模式与参数
输入要探测的主机IP地址作为参数。如
nmap 192.168.38.180
以上是对目标主机进行全面扫描后的结果,显示了监听端口的服务情况。这一基本操作不需要任何参数,缺点是运行了日志服务的主机可以很容易的监测到这类扫描。
nmap最基本的几种扫描方式:
- TCP connect()端口扫描(-sT参数)是nmap的默认扫描方式
- TCP同步端口扫描(SYN)(-sS参数)
-sS选项可以进行更加隐蔽的端口扫描,并防止被目标主机检测到。 - UDP端口扫描(-sU参数)
-sU选项是监听目标的UDP而不是默认的TCP端口。 - ping扫描(-SP参数)
2.操作系统探测
-O选项是用来探测目标主机的操作系统,可以与上述命令联合使用或单独调用。如:
nmap -O 192.168.38.180
3.扫描主机群
除了一次扫描一个目标主机,也可以同时扫描一个主机群
nmap -sT -O 192.168.38.1-200
总结
网络资源搜集就是对目标主机及相关设施、管理人员进行检测、了解、对目标操作系统的鉴别等。这是黑客发起攻击的前奏,也是发起攻击的基础。本章简单据介绍了信息搜集中的主机发现与端口扫描,以及nmap的使用方法,因博主水平有限,有不足之处还望大佬指正!