一、实验名称
信息搜集与漏洞扫描
二、实验目的
掌握信息搜集的最基础技能与常用工具的使用方法。
三、实验内容
1.各种搜索技巧的应用
2.DNS IP注册信息的查询
3.基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点
4.漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞
四、基础知识和实验准备
1.traceroute (Windows系统下是tracert) 命令利用ICMP 协议定位用户计算机和目标计算机之间的所有路由器。TTL 值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP 呼叫报文的TTL 值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。
2.nmap:是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(亦称 fingerprinting),以及用以评估网络系统安全。其基本功能有三个,一是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;还可以推断主机所用的操作系统。
3.OpenVAS:是开放式漏洞评估系统,也可以说它是一个包含着相关工具的网络扫描器。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。最新版kali默认没有安装OpenVAS,需要先行下载安装。
五、实验过程记录
5.1各种搜索技巧的应用
5.1.1使用搜索引擎搜索特定类型的文件
在百度引擎中输入“filetype:doc site:edu.cn 名单”,会出现大量格式为DOC的文件链接,随机点开一个(此处选择第一个),可以发现获奖单位中包含单位地址、负责人姓名和联系方式等信息。
5.1.2使用tracert指令进行路由跟踪
在Windows终端输入“tracert www.besti.edu.cn”,追踪数据包传输路径上的所有路由。
路由跟踪结果如下:
·58.248.21.113
·120.80.120.193
·112.89.0.69
·219.158.112.25
·125.33.186.18
·202.106.36.198、124.65.227.254、124.65.143.6 定位地址均为北京市 联通ADSL
·123.127.3.1
由路由跟踪结果可知,我们学校的ISP应该是中国联通或中国网通,从我所处的位置访问学院官网需要经过广东省地区主干网,国家联通主干网,北京市联通ADSL。
5.1.3搜索网址目录结构
自动化的工具:Metasploit的dir_listing,dir_scanner等辅助模块可以搜索网址的目录结构,过程主要是暴力猜解,相当于穷举法。实验中使用dir_scanner,在kali终端进入msf控制器后,依次输入以下命令:
use auxiliary/scanner/http/dir_scanner
set RHOSTS www.besti.edu.cn/www.gdgzez.com.cn(广东广州二中官网)
set THREADS 50 //设置并发进程数量,加快扫描速度
exploit
在搜索www.besti.edu.cn的目录结构时,发现什么都搜索不到,可能是防御措施相当到位。
我转而搜索广州二中的官网,通过上述指令,可以查询到该网站的目录结构,包括Admin、News、USER等。
5.2 DNS IP注册信息的查询
5.2.1 whois域名注册信息查询
可以得到诸如注册商(Registrar)、注册人(Registrant)、官方注册局ID(Registry Domain ID)、状态、注册时间、注册人联系邮箱等信息。
注意:使用whois查询时需要去掉www前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中大概率查询不到(如上图所示)。
5.2.2 nslookup,dig域名查询
nslookup是一个非常有用的查询域名信息的命令,主要用来诊断域名系统 (DNS) 基础结构的信息,一般得到的是非权威应答。
dig可以从官方DNS服务器上查询精确的结果。
除此之外,dig命令还有很多查询选项,每个查询选项由带前缀(+)的关键字标识。例如:
·+[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。
·+[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
·+[no]short:当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。
·+[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
5.2.3 IP地理位置查询
5.3基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点
5.3.1主机扫描
(1)ping命令探测主机是否在线,但一般会受到防火墙的拦截
在kali终端输入“ping 192.168.1.10(Windows系统的IP)”。
关闭防火墙:
开启防火墙后,就无法ping通目标主机了。为防止洪泛攻击,多数计算机的防火墙设置了对ping不应答(如下图所示)。
(2)nmap扫描
在kali终端输入“nmap -sn 192.168.1.0/24”,查询该网段下的活跃主机。
(3)Metasploit中的模块,如arp_sweep,通过使用ARP请求枚举本地局域网中的活跃主机
在kali终端使用root用户进入msf控制器后,依次输入以下命令:
use auxiliary/scanner/discovery/arp_sweep
set RHOSTS 192.168.1.0/24
set THREADS 50
run
5.3.2端口扫描(此时Windows的IP变更为192.168.1.12)
(1)Metasploit的端口扫描模块
利用metasploit中的auxiliary/scanner/portscan中的扫描器可以进行端口扫描,在kali终端使用root用户进入msf控制器后,输入“use auxiliary/scanner/portscan”,会显示以下五种扫描方式:
·ack :通过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测
·ftpbounce :通过FTP BOUNCE攻击的原理对TCP服务进行枚举
·syn :使用发送TCP SYN标志的方式探测开放的端口
·tcp :通过一次完整的TCP链接来判断端口是否开放
·xmas :一种更为隐蔽的扫描方式,通过发送FIN,PSH,URG标志能够躲避一些TCP标记检测器的过滤
进而选择扫描方式(实验中我选择了TCP SYN和TCP两种方式)
use 2 //选择TCP SYN端口扫描方式
set RHOSTS 192.168.1.12
set THREADS 50
exploit
实验中我发现这种扫描方式耗时相当长,是TCP端口扫描方式耗时的3倍以上,但隐蔽性可能比较好。
换用另一种端口扫描方式,依次在终端输入:
use 3 //选择TCP端口扫描方式
set RHOSTS 192.168.1.12
set THREADS 50
exploit
(2)nmap扫描
在kali终端进入root用户后输入“nmap -sS 192.168.1.12”。
nmap端口扫描常用参数如下:
·-sT:TCP connect扫描
·-sS:TCP SYN扫描
·-sP:ICMP扫描
·-sU:探测目标主机开放了哪些UDP端口
·-sA:TCP ACk扫描
·-Pn:在扫描之前,不发送ICMP echo请求测试目标是否活跃
·-F:快速扫描模式
·-p<端口范围>:指定端口扫描范围(如下图中 -p 0-1024)
5.3.3 OS及服务版本探测
(1)OS探测
在kali终端输入“nmap -O 192.168.1.12”,参数“-O”表示嗅探目标计算机的操作系统等相关信息。
(2)服务版本探测
在kali终端输入“nmap -sV 192.168.1.12”,参数“-sV”表示嗅探目标计算机的详细服务信息及版本。
5.3.4具体服务的查点
(1)Telnet服务扫描
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。
网段内普遍回应都是“unreachable”,意外地发现192.168.1.202可以到达。
(2)SSH服务扫描
SSH(安全外壳协议)是建立在应用层基础上的安全协议。SSH是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
(3)NetBios网络服务扫描
NetBios服务的扫描结果受防火墙的影响比较大,目标计算机开启防火墙后将很难搜索到有用的信息。
Windows开启防火墙:
Windows关闭防火墙:
5.4漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞
5.4.1 OpenVAS的安装和使用
安装时会使用如下指令:
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install openvas
sudo openvas-setup
openvas-check-setup
sudo su
openvasmd --user=admin --new-password=123456
输入“openvas-start”后出现上图所示提示框,直接复制网址https://127.0.0.1:9392,在浏览器中打开,输入上述指令设置的用户名admin和密码123456。
5.4.2 漏洞扫描结构分析
选择Tasks—>Task Wizard,新建一个任务向导,在提示框中输入192.168.1.12(目标主机的IP地址),并单击Start Scans确认,开始扫描。
打开扫描结果的详细信息,点击“Full and fast”
进入后我随意点开了几个看看,此处选择最后一项:Windows:Microsoft Bulletins。
此处我选择了下图第七项“Adobe Flash Player Microsoft Edge and Internet Explorer Security Update(apsb19-19)-Windows”,看看我常用的浏览器Microsoft Edge和IE有什么漏洞(还是10.0分的)。
从下图报告中,我们可以得到此漏洞感染的软件/操作系统(Affected Software/OS)、可造成的冲击(Impact)、解决方案(Solution)以及官方的参考资料(References)等信息。
六、问题回答
1.哪些组织负责DNS,IP的管理。
答:全球根服务器均由美国政府授权的Internet Corporation for Assigned Names and Numbers (ICANN)统一管理,负责全球域名根服务器,DNS和IP地址管理。由其设立的三个支持组织分别是:
(1)地址支持组织(ASO) 负责IP地址系统的管理
(2)域名支持组织(DNSO) 负责互联网上的域名系统(DNS)的管理
(3)协议支持组织(PSO) 负责涉及Internet协议的唯一参数的分配
目前全球有5个地区性注册机构:
(1)ARIN主要负责北美地区业务
(2)RIPE主要负责欧洲地区业务
(3)APNIC主要负责亚太地区业务
(4)LACNIC主要负责拉丁美洲地区业务
(5)AfriNIC主要负责非洲地区业务。
2.什么是3R信息。
答:Registrant(注册人)、Registrar(注册商)、Registry(官方注册局)。
3.评价下扫描结果的准确性。
答:大部分还都比较准确,但受制于目标计算机的防护程度(如防火墙),部分扫描结果会失真。
七、实验总结与体会
通过本次实验,我知道了网络信息的收集方式有网络踩点、网络查点和网络扫描,网络扫描又包括主机扫描、端口扫描、系统类型探查和漏洞扫描,相应的,也学习了很多配套的软件和指令。借助以上方式,我们可以在短时间内获取目标计算机或目标域名的大量信息,甚至可以猜测出目标的网络拓扑结构之类的信息。有矛就会有盾,打开防火墙,减少开放端口,使用端口扫描监测工具,记录日志,应用审计技术进行分析等方法可以有效防范相应的信息搜集技术。
本次实验中,我从一个攻击者的角度对我的笔记本电脑进行了大量的信息搜集,更了解自己电脑的同时,也感慨于现如今的扫描技术之发达。本次实验令我受益匪浅,期待下次的实验能让我对这门课程有更深的理解和感悟。