一、实践目标
掌握信息搜集的最基础技能与常用工具的使用方法。
二、实践内容
(一)各种搜索技巧的应用
1.搜索网址目录结构
方法是利用msf自动化的工具,例如dir_scanner等辅助模块,暴力破解。
- dir_scanner模块
使用此模块需要msf里面的dir_scanner模块,故在kali中输入以下命令:
msfconsole use auxiliary/scanner/http/dir_scanner set RHOSTS www.baidu.com set THREADS 20 exploit
其中:set RHOSTS是设置扫描路径,set THREADS设置并发进程数(数目越大搜索越快)。
分析:前面为+号的,表示有所发现,但是百度下面的文件应该不止这些,可见此模板作用有限。
- dir_listing模块
use auxiliary/scanner/http/dir_listing set RHOSTS www.cnblogs.com set THREADS 30 exploit
分析:扫描这个网站什么也没发现。
- brute_dirs模块
use auxiliary/scanner/http/brute_dirs set RHOSTS www.gitee.com set THREADS 30 exploit
分析:又是什么也没有发现。
2.搜索特定类型的文件
在搜索栏里输入filetype:xls site:edu.cn 【关键字】搜索特定类型的文件(百度对这个文件搜索好像有限制,搜狗可以)
其中:要求文件类型是xls(filetype是文件类型的意思),域名是以edu.cn结尾的,其中edu表示教育机构,cn表示中国。可以搜到特定类型的文件,并且可以下载。
下载文件并打开,信息如下:
3.ip路由侦查
- traceroute命令利用ICMP协议定位用户计算机和目标计算机之间的所有路由器。
- ip路由侦查可借助tracerrout工具,跟踪到指定服务器经过的路由器的过程。
在kali端输入命令 traceroute www.baidu.com ,出现如下结果:
看同学博客,说显示*号的原因是,由于虚拟机使用的是nat连接,traceroute无法将信息传回来。
在windows端输入命令 tracert www.baidu.com ,有下图所示结果:
分析:第一列代表了生存时间(每经过一个路由器加数值加1);
第二列、第三列和第四列表示三次发送的ICMP包的返回时间(共计3个,单位是ms);
第五列是途径路由器的ip地址。其中*表示ICMP包返回时间超时。
(二)DNS IP注册信息的查询
1.whois查询信息
进行whois查询时需要去掉www前缀。“baidu.com”是一级域名(上层域名),“www.baidu.com”是二级域名(子域名),注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中查不到子域名,所以查的时候要查一级域名。可以查到3R注册信息。
2.nslookup,dig域名查询
- 输入 nslookup baidu.com ,可以看到服务器地址和注册地址,以及DNS解析服务器保存的结果,但是不一定准确
- 输入 dig baidu.com ,可以从官方服务器上查询到精确的结果
除此之外,dig命令还有很多其他查询选项:
-
每个查询选项由带前缀(+)的关键字标识
+[no]search
使用[不使用]搜索列表或resolv.conf
中域伪指令(如果有的话)定义的搜索列表(默认不使用);- +[no]trace 切换为待查询名称从根名称服务器开始的代理路径跟踪(默认不使用),若启用跟踪
dig
使用迭代查询解析待查询名称,将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答; - +[no]identify 当启用
+short
选项时,显示[不显示]提供应答的IP地址和端口号; - +[no]stats 设定显示统计信息,查询进行时,应答的大小等,默认显示查询统计信息。
3.IP2Location 地理位置查询
在cmd里 ping baidu.com ,查看百度的ip地址:
有网址可以根据ip查询地理位置:
在另外一个网址可以根据ip查到更详细的信息:
4.IP2反域名查询
Shodan是一个搜索引擎。在Shodan中搜索ip,可以看到该ip的地理位置、服务占用端口号以及提供的服务具体类型。搜索百度的ip可以看到下图所示信息:
(三)基本的扫描技术
1.主机发现
(1)ping
最简单的就是ping命令了,用此命令探测主机是否在线
(2)使用msf里面的arp_sweep、udp_sweep等
- arp_sweep
arp_sweep使用arp请求探测活跃主机。在这里只探测windows端主机,结果如下:
- udp_sweep
udp_sweep使用udp数据包探测。在这里探测windows端所在网段的活跃主机(在地址后面加上了子网掩码),结果如下:
(3)nmap
输入 nmap -sn 192.168.1.104/24 ,只进行主机发现,不进行端口扫描:
2.端口扫描
(1)使用msf中的模块
输入以下命令:
use auxiliary/scanner/portscan/tcpset RHOSTS 192.168.1.104 exploit
结果如下图,可显示windows主机开放的端口:
(2)nmap
输入 nmap -sS 192.168.1.106 ,查看端口和服务:
注意:若是报“All 1000 scanned ports on 192.168.1.104 are filtered”(下图所示),是因为windows主机的防火墙拦截,把防火墙关闭后即可成功扫描。
3.OS及服务版本探测
- 输入nmap -O 192.168.1.104 ,检测目标主机运行的操作系统类型及服务版本:
扫描结果分析:我使用这个命令扫描主机windows10,但是它并没有给出任何可能结果,红框内显示的是报没有完全匹配的系统,猜测是因为nmap功能限制。
- 输入nmap -sV 192.168.1.104 ,确定目标主机上运行的具体的应用程序信息:
4.具体服务的查点
每个具体服务的探测都对应着一个msf模块,在modules/auxiliary/scanner目录下。
(1)Telnet服务扫描
Telnet是Internet远程登录服务的标准协议和主要方式,它的基本功能是允许用户登录进入远程主机系统。虽然Telnet较为简单实用也很方便,但是Telnet是一个明文传送协议,所以并不被重用。如果我们要使用Telnet的远程登录,使用前应在远端服务器上检查并设置允许Telnet服务的功能。
输入 use auxiliary/scanner/telnet/telnet_version 进入telnet模块,并输入 set RHOSTS 192.168.1.104/24 设置扫描网段, set THREADS 30 提高速度,之后 run 运行。
(2)SSH服务扫描
SSH是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。SSH有很多功能,它既可以代替Telnet,又可以提供一个安全的"通道"。
输入 use auxiliary/scanner/ssh/ssh_version 进入ssh模块,之后设置目标主机并运行:
(3)Oracle数据库服务扫描
输入 use auxiliary/scanner/oracle/tnslsnr_version :
(四)漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)
1.安装openvas
由于kali不自带openvas,所以需要自己下载安装。命令如下:
apt-get update apt-get upgrade apt-get dist-upgrade apt-get install openvas
安装不过程中,不断地根据提示信息进行fix。成功截图如下:
输入 sudo openvas-start ,启动openvas。
之后在浏览器输入http://127.0.0.1:9392进入页面,并且根据之前设置好的用户名和密码登录。
2.扫描
在左上角,选择“Task Wizard”,新建一个扫描任务,输入主机ip:
选择扫描漏洞类型时,选择的是“Buffer overflow”(缓存溢出),然后就可以看到到底有什么漏洞:(这漏洞着实有点多啊)
随便选择一个漏洞查看相信信息:
分析漏洞扫描报告:summary是对这个漏洞的简要说明,说这个漏洞是由谁产生的;Affected Software/OS是说,这个漏洞影响到的软件和系统有哪些;Vulnerability Scoring是危险评分的意思,分数越高代表此漏洞越危险;impact说的是此漏洞的影响,为“成功利用将允许远程攻击者执行任意代码或导致拒绝服务状态”;solution说的是解决办法。
针对此漏洞,解决办法就是更新Adobe Flash Player版本到10.3.183.50或者11.5.502.146或者更之后的版本。这说明软件还是要经常更新的,虽然补了旧的漏洞还会有新的漏洞,但是总的来说是越来越完善的,而且新的版本发现的漏洞要比旧漏洞被攻破的概率低。
但是,我的Adobe Flash Player版本是最新的32.0.0.363,而它解决办法里提到的11.5.502.146是2013年发布的版本。这就很迷惑。
三、实践总结
1.实验总结体会
总体感觉此次实验,操作过程并不算难,除了openVas装的有点慢和困难以外。而且通过此次实验,掌握了一些搜索技巧、扫描技巧等,对msf的功能模块更加了解,也熟悉了nmap的使用。除此以外,openvas扫描出的漏洞也太多了吧,感觉我的电脑一直处于危险中。
2.问题回答
(1)哪些组织负责DNS,IP的管理。
答:是ICANN。
ICANN(互联网名称与数字地址分配机构The Internet Corporation for Assigned Names and Numbers)是一个非营利性的国际组织,成立于1998年10月,是一个集合了全球网络界商业、技术及学术各领域专家的非营利性国际组织。负责在全球范围内对互联网唯一标识符系统及其安全稳定的运营进行协调,包括互联网协议(IP)地址的空间分配、协议标识符的指派、通用顶级域名(gTLD)以及国家和地区顶级域名(ccTLD)系统的管理、以及根服务器系统的管理。这些服务最初是在美国政府合同下由互联网号码分配当局(Internet Assigned Numbers Authority,IANA)以及其它一些组织提供。现在,ICANN行使IANA的职能。
(2)什么是3R信息。
答:3R信息包括注册人(Registrant)信息、注册商(Registrar)和官方注册局(Registry)。
(3)评价下扫描结果的准确性。
答:我个人感觉扫描结果还是比较准确的,但是在使用nmap扫描操作系统版本时,说没有符合匹配的系统,感觉挺迷惑的,其它没有发现什么问题。至于openvas扫描的结果,并不是能全部看得懂的,判断准确性确实是有点难。但是我随机选择查看的那个漏洞的详细信息,解决办法有点迷惑。