20171113曾英特《信息搜集与漏洞扫描》实验报告
一、实验名称
信息搜集与漏洞扫描
二、实验目的
掌握信息搜集的最基础技能与常用工具的使用方法。
三、实验内容
1.各种搜索技巧的应用
2.DNS IP注册信息的查询
3.基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点
4.漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞
四、基础知识和实验准备
1.traceroute (Windows系统下是tracert) 命令利用ICMP 协议定位用户计算机和目标计算机之间的所有路由器。TTL 值可以反映数据包经过的路由器或网关的数量,通过操纵独立ICMP 呼叫报文的TTL 值和观察该报文被抛弃的返回信息,traceroute命令能够遍历到数据包传输路径上的所有路由器。
2.nmap:是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(亦称 fingerprinting),以及用以评估网络系统安全。其基本功能有三个,一是探测一组主机是否在线;其次是扫描主机端口,嗅探所提供的网络服务;还可以推断主机所用的操作系统。
3.OpenVAS:是开放式漏洞评估系统,也可以说它是一个包含着相关工具的网络扫描器。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。最新版kali默认没有安装OpenVAS,需要先行下载安装。
五、实验步骤
各种搜索技巧的应用(使用搜索引擎搜索服务器子域名、爆破、在Windows使用tracert探测路由结构等)
1.使用搜索引擎搜索服务器子域名
在百度中搜索filetype:xls site:edu.cn姓名,可以看到许多以XLS为文件格式的网址,其中含有姓名等敏感信息
- 随便选择一个网址进入便能够下载相关的excel表格,包含个人敏感信息。
2.搜索网址目录结构
- 原理:暴力破解一般就是指穷举法,它的原理就是使用攻击者自己的用户名和密码字典,一个一个去枚举,尝试是否能够登录。因为理论上来说,只要字典足够庞大,枚举总是能够成功的!(本实验以dir_scanner模块为例,获取网站目录结构)
- msf > use auxiliary/scanner/http/dir_scanner
- msf auxiliary(scanner/http/dir_scanner) > set THREADS 50
- msf auxiliary(scanner/http/dir_scanner) > set RHOSTS www.baidu.com
- msf auxiliary(scanner/http/dir_scanner) > exploit
3.在Windows使用tracert探测路由结构
-
tracert可用于对经过的路由进行探测:在主机cmd中输入命令tracert www.baidu.com
DNS IP注册信息的查询(whois、dig、nslookup等)
1.whois域名注册信息查询
- whois用来进行域名注册信息查询。在终端输入whois baidu.com可查询到3R注册信息,包括注册人的姓名、组织和城市等信息。下图为查询百度网址的信息:
- 可以看到Domain Name域名为baidu.com
- Registry Domain ID注册机构ID为11181110_DOMAIN_COM-VRSN
- Registrar WHOIS Server注册服务器为whois.markmonitor.com
- Domain Status是指域名状态为clientUpdateProhibited 表示客户端禁止转移 该状态由注册商设置,域名可以更新(域名信息修改)、续费、删除,最少需要填写一个DNS才能正常解析。
2.nslookup,dig域名查询
nslookup
- nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。在终端输入nslookup gitee.com
- dig可以从官方DNS服务器上查询精确的结果。从图中可以看到,查询百度的域名,这两种方式得到的结果是一样的。在终端输入命令dig baidu.com
另外,dig命令还存在其他查询选项内容,在+后添加你需要的关键词,如下:
+[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。
+[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
+[no]identify:当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。
+[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
3.IP2Location 地理位置查询
- 在www.maxmind.com网站直接搜索可以根据IP查询地理位置。先通过ping百度找到百度的地址
- 在www.ip-adress.com网站可以查找到更详细的IP信息,输入自己想查询的网址即可
4.IP2反域名查询
- 使用shodan搜索引擎可以进行反域名查询,可以搜索到该IP的地理位置、服务占用端口号,以及提供的服务类型。打开网站,输入IP地址,可以看到地理位置,端口号和提供的服务具体信息。
基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点
主机发现
ping命令
- 使用ping命令用发送ICMP报文的方法检测活跃主机,ping www.baidu.com
metasploit中的arp_sweep模块和 udp_sweep 模块 - arp_sweep和udp_sweep都是metasploit中位于modules/auxiliary/scanner/discovery中的模块。arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机;udp_sweep模块除了可以探测到存活主机之外,还可以获得主机名称信息
- arp_sweep,打开msfconsole,依次输入:
- msf > use auxiliary/scanner/discovery/arp_sweep //进入arp_sweep 模块
- msf auxiliary(scanner/discovery/arp_sweep) > set RHOSTS 10.10.10.0/24 //用set进行hosts主机段设置
- msf auxiliary(scanner/discovery/arp_sweep) > set THREADS 50 //加快扫描速度
- msf auxiliary(scanner/discovery/arp_sweep) > show options //查询模块参数
- msf auxiliary(scanner/discovery/arp_sweep) > run //执行run进行扫描
- 不知道因为什么原因,失败了
- nmap探测,在Linux下使用nmap -sn 192.168.40.132/24寻找该网段下的活跃主机:
-sS:TCP SYN扫描,可以穿透防火墙;-sA:TCP ACK扫描。有时候由于防火墙会导致返回过滤/未过滤端口;-sP:发送ICMP echo探测;-sT:TCP connect扫描,最准确,但是很容易被IDS检测到,不推荐;-sF/-sX/-sN:扫描特殊的标志位以避开设备或软件的监测;-O:启用TCP/IP协议栈的指纹特征信息扫描以获取远程主机的操作系统信息;-sV:获取开放服务的版本信息;
端口扫描
- 在命令行输入nmap -sS -p 80-90 -v [IP地址](sS是扫描端口,-p是指定端口,-v是详细信息)
具体服务的查点
Telnet服务扫描
- msf > use auxiliary/scanner/telnet/telnet_version //进入telnet模块
- msf auxiliary(telnet_version) > set RHOSTS 192.168.40.132/24 //扫描网段
- msf auxiliary(telnet_version) > set THREADS 100 //提高查询速度
- msf auxiliary(telnet_version) > run
SSH服务扫描
- msf > use auxiliary/scanner/ssh/ssh_version
- msf auxiliary(ssh_version) > set RHOSTS 192.168.3.0/24
- msf auxiliary(ssh_version) > set THREADS 200
- msf auxiliary(ssh_version) > run
Oracle数据库服务查点
- msf > use auxiliary/scanner/oracle/tnslsnr_version
- msf auxiliary(scanner/oracle/tnslsnr_version) > set RHOSTS 192.168.40.132/24
- msf auxiliary(scanner/oracle/tnslsnr_version) > set THREADS 200
- msf auxiliary(scanner/oracle/tnslsnr_version) > run
开放代理探测:open_proxy模块
- msf > use auxiliary/scanner/http/open_proxy
- msf5 auxiliary(scanner/http/open_proxy) > set RHOSTS 192.168.40.132/24
- msf5 auxiliary(scanner/http/open_proxy) > set THREADS 200
- msf5 auxiliary(scanner/http/open_proxy) > run
OS系统版本探测
- 操作系统侦测用于检测目标主机运行的操作系统类型及设备类型等信息。
- Nmap拥有丰富的系统数据库nmap-os-db,目前可以识别2600多种操作系统与设备类型。
- OS侦测用法
-O: 指定Nmap进行OS侦测。 --osscan-limit: 限制Nmap只对确定的主机的进行OS探测(至少需确知该主机分别有一个open和closed的端口)。 --osscan-guess: 大胆猜测对方的主机的系统类型。由此准确性会下降不少,但会尽可能多为用户提供潜在的操作系统。
漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞
- OpenVAS(Open Vulnerability Assessment System)是开放式漏洞评估系统,其核心部分是一个服务器。
- 该服务器包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
- 该工具是基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,用户通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。
- 安装openvas:
apt-get dist-upgrade
apt-get install openvas
openvas-setup
- 安装需要较长的时间,慢慢等。我这边安装成功后出现了下面的问题,但是别担心。只需要手动输入网页,选择advanced选项即可。
- 进入网站,可以先修改密码,openvasmd --user admin --new-password xxxxxx
- 选择IP地址扫描,在菜单栏选择"Scans"->"Tasks",进入后点击紫色烟花"Task Wizard"新建一个任务向导,在栏里输入待扫描主机的IP地址,并单击"Start Scans"确认,开始扫描
查看结果分析
六、实验要求
问题一:哪些组织负责DNS,IP的管理?
- 全球根服务器均由美国政府授权的ICANN统一进行管理,负责全球的域名根服务器、DNS和IP地址管理。
- 全球根域名服务器:绝大多数在欧洲和北美,全球13台,用A~M编号;中国仅拥有镜像服务器备份。
- ICANN理事会是ICANN的核心权利机构,它设立三个支持组织。
- 地址支持组织(ASO)负责IP地址系统的管理;
- 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理;
- 协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配。
问题二:什么是3R信息。
- 注册人(Registrant) →注册商(Registrar) →官方注册局(Registry)
问题三:评价下扫描结果的准确性
- 总体来说,扫描大部分是准确的,但是并不全面。又是可能会出现扫描相同的软件出现不同的结果的情况,这也是无可厚非的。另外有可能出现被扫描的目标使用了一定的防御手段,从而导致结果是假的。
七、实验感想
这次实验是网络对抗的第五次实验,主要内容是进行信息搜集这一环节。信息搜集环节是渗透测试的非常重要的环节,需要占用渗透测试的极大一部分的时间,因此是很重要的。本次实验比较麻烦的是安装openvas,它花费了好长的时间,然后我还遇到了网站打不开的情况。结果询问同学,发现可以手动打开,利用advanced直接进入网站。信息搜集的方式方法也有很多,而且很多效果显著的方法其实是不需要太多技术含量的,这次实验让我们充分体会到了这一点。我们上网的时候也要提高安全意识,不能放心地把所有信息都交给网站。