20192420 任文朗 2021-2022-2 《网络与系统攻防技术》实验五实验报告
实验五 信息搜集技术实践
一、实践内容
(1)从www.besti.edu.cn、baidu.com、sina.com.cn中选择一个DNS域名进行查询,获取如下
信息:
· DNS注册人及联系方式
· 该域名对应IP地址
· IP地址注册人及联系方式
· IP地址所在国家、城市和具体地理位置
PS:使用whois、dig、nslookup、traceroute、以及各类在线和离线工具进行搜集信息
(2)尝试获取BBS、论坛、QQ、MSN中某一好友的IP地址,并查询获取该好友所在的具体地理位置。
(3)使用nmap开源软件对靶机环境进行扫描,回答以下问题并给出操作命令。
· 靶机IP地址是否活跃
· 靶机开放了哪些TCP和UDP端口
· 靶机安装了什么操作系统,版本是多少
· 靶机上安装了哪些服务
(4)使用Nessus开源软件对靶机环境进行扫描,回答以下问题并给出操作命令。
· 靶机上开放了哪些端口
· 靶机各个端口上网络服务存在哪些安全漏洞
· 你认为如何攻陷靶机环境,以获得系统访问权
(5)通过搜索引擎搜索自己在网上的足迹,并确认自己是否有隐私和信息泄漏问题。
(6)练习使用Google hack搜集技能完成搜索
二、实践目的
2.1 实践目的
· 掌握信息搜集的最基础技能与常用工具的使用方法
· 使用搜索引擎、扫描工具、漏扫工具分析目标状态
· 实现对目标信息的全面了解
2.2 实验所涉及的知识点
1.whois命令简介
(1)语 法:whois[选择参数][必要参数]
(2)功 能:用来查找并显示指定用户账号、域名相关信息,包括域名注册时间、拥有者、邮箱等,
类似命令:tracepath、host、nslookup、who、pwd
(3)选择参数:
· -a 搜寻所有数据库
· -c 找到最小的包含一个 mnt-irt 属性的匹配
· -d 同时返回 DNS 反向查询的代理对象(需支持RPSL协议)
· -F 快速输出原始数据
· -h[主机] 连接到指定 HOST 服务器
· -p[端口] 连接到指定 PORT 端口
· -t[类型] 查询指定类型对象头信息
· -T[类型] 查找指定类型的对象
· -v[类型] 查询指定类型对象冗余信息
· -q [版本|类型] 查询特定的服务器信息(需支持RPSL协议)
2.nslook命令简介
nslookup (全称 name server lookup) ,是一个在命令行界面下的网络工具,它有两种模式:
交互 & 非交互,进入交互模式在命令行界面直接输入nslookup按回车,非交互模式则是后面跟上
查询的域名或者 IP 地址按回车。一般来说,非交互模式适用于简单的单次查询,若需要多次查询,
则交互模式更加适合
语法:
非交互模式:nslookup baidu.com
交互模式:nslookup
baidu.com
3.dig命令简介
dig命令是常用的域名查询工具,可以用来测试域名系统工作是否正常
语法:dig(选项)(参数)
选项:
· @<服务器地址>:指定进行域名解析的域名服务器;
· -b<IP地址>:当主机具有多个IP地址,指定使用本机的哪个IP地址向域名服务器发送查询请求
· -f<文件名称>:dig以批处理的方式运行,指定的文件中保存需要批处理查询的DNS任务信息
· -P:指定域名服务器所使用端口号
· -t<类型>:指定要查询的DNS数据类型
· -x<IP地址>:执行逆向域名查询
· -4:使用IPv4
· -6:使用IPv6
· -h:显示指令帮助信息
参数
· 主机:指定要查询域名主机
· 查询类型:指定DNS查询的类型
· 查询类:指定查询DNS的class
· 查询选项:指定查询选项
4.traceroute命令简介
traceroute是用来检测发出数据包的主机到目标主机之间所经过的网关数量的工具
命令格式:
traceroute [参数] [主机]
5.nmap命令简介
nmap命令是一款开放源代码的网络探测和安全审核工具,它的设计目标是快速地扫描大型网络
常见命令:
· nmap -sT 192.168.96.4 //TCP连接扫描,不安全,慢
· nmap -sS 192.168.96.4 //SYN扫描,使用最频繁,安全,快
· nmap -Pn 192.168.96.4 //目标机禁用ping,绕过ping扫描
· nmap -sU 192.168.96.4 //UDP扫描,慢,可得到有价值的服务器程序
· nmap 192.168.96.4 -p <portnumber> //对指定端口扫描
· nmap 192.168.96.1/24 //对整个网段的主机进行扫描
· nmap -sV 192.168.96.4 //对端口上的服务程序版本进行扫描
· nmap -O 192.168.96.4 //对目标主机的操作系统进行扫描
· nmap -sP 192.168.96.4 //仅仅对目标进行ping检测
· nmap -sP 192.168.96.4 //主机存活性扫描,arp直连方式。
6.Nessus简介
Nessus是一个功能强大而又易于使用的远程安全扫描器,它不仅免费而且更新极快。安全扫描器的
功能是对指定网络进行安全检查,找出该网络是否存在安全漏洞。该系统被设计为client/sever模
式,服务器端负责进行安全检查,客户端用来配置管理服务器端。在服务端还采用了plug-in的体系
,允许用户加入执行特定功能的插件,这插件可以进行更快速和更复杂的安全检查。在Nessus中还采
用了一个共享的信息接口,称之知识库,其中保存了前面进行检查的结果。检查的结果可以HTML、纯
文本、LaTeX(一种文本文件格式)等几种格式保存
7.Google Hacking简介
Google Hacking 是利用谷歌搜索的强大,来在浩瀚的互联网中搜索到我们需要的信息。轻量级的搜
索可以搜素出一些遗留后门,不想被发现的后台入口,中量级的搜索出一些用户信息泄露,源代码泄露
,未授权访问等等,重量级的则可能是mdb文件下载,CMS 未被锁定install页面,网站配置密码,
php远程文件包含漏洞等重要信息
三、实践过程
3.1 任务一 从baidu.com进行查询并获取相关信息
· 步骤一 获取该域名下DNS的注册人及联系方式
我们可以访问whoisSoft.com(一个支持全球域名WHOIS查询的网站),然后在里面输入
baidu.com,获取我们想要得到的信息,如下图所示
当然,我们也可以不利用现成的网站工具进行查询,这时只需要打开kali虚拟机,输入命令
whois baidu.com ,即可得到结果。这里我们可以看到注册商是一个名叫markmonitor inc.的
机构,查询资料后知道了它是专门为大公司保护域名的品牌公司,同时也被认为是目前最安全的域名注
册商。在世界500强网站中的22%域名都托管于markmonitor公司,包括apple、Google、Microso
ft、Facebook、Alibaba、Baidu以及维基百科等世界知名企业
· 步骤二 获取该域名下对应的IP地址
我们可以通过打开kali虚拟机,输入命令 nslookup baidu.com 的方式来获取该域名下
对应的IP地址,如下图所示,图中最上面的Server和Address是该域名查询下的DNS服务器(默认
情况下DNS服务器的端口为53),下面的非权威应答(Non-authoritative answer)返回的两
个IP地址即为我们想得到的结果,一个是 220.181.38.148 和 220.181.38.251
· 步骤三 获取IP地址注册人及联系方式
跟步骤一类似,我们同样可以利用网站工具whoisSoft,也可以通过kali虚拟机使用命令
行的形式进行获取(两个IP地址选择其中之一即可,这里我们选取的是 220.181.38.148 ),结
果如下图所示,我们可以发现注册人有两位
· 步骤四 获取IP地址所在国家、城市和具体地理位置
根据步骤三中的图示可以看出来,该IP地址( 220.181.38.148 )所在国家为CN(中国)
,所在城市为北京,具体地理位置一个在北京的金融街,另一个在北京西城区的西单北大街
· PS:以下图示为使用dig命令和traceroute命令的获取结果
3.2 任务二 尝试获取BBS、论坛、QQ、MSN中某一好友的IP地址,并查询获取该好友所在的具体地理位置
· 步骤一 打开资源监视器,配置相应选项
勾选Video.UI.exe和WeChat.exe选项(因为我选取的是通过微信电话的方式所以勾选了
微信选项,如果使用QQ或者其他可以勾选对应软件选项),在网络一栏可以观察IP地址的变化
· 步骤二 与好友进行通话,获取其IP地址并查询其所在的具体地理位置
首先我与我在武汉中国地质大学读书的家人打了电话,在打电话的过程中,可以通过资源监
视器观察IP地址的变化,抓取收发数据包最多的IP地址,将这个地址放在埃文科技(一个可以对IP地
址进行定位的网站)进行查询,可以发现定位显示在武汉,但是该定位范围看着似乎有点太大
接下来我与在重庆西南大学读书的家人通了电话,同理也可以发现资源监视器的变化,可以看
到定位范围缩小了
最后我和在成都西南交通大学和四川大学读书的家人做了实验,在四川大学这个点可以把地理
位置定位到街道
3.3 任务三 使用nmap开源软件对靶机环境进行扫描,回答相关问题并给出操作命令
· 步骤一 查看靶机IP活跃状态
在kali虚拟机中我们可以使用命令 nmap -sP 192.168.0.0/24 对该网段进行Ping扫描
,寻找活跃的主机,如下图所示,Host is up表示为活跃状态(使用参数 -sP 进行Ping扫描,该
选项告诉Nmap仅仅进行ping扫描,然后打印出对扫描做出响应的那些主机)
选取该网段活跃主机中的192.168.0.100,对该地址进行对该IP地址进行ICMP协议的ping
操作,活跃的主机会收到数据包并反馈数据包,但不活跃的主机就做不到
· 步骤二 查看靶机开放了哪些TCP和UDP端口
输入命令 nmap -sT 192.18.0.100 ,查看该靶机下开放了哪些TCP端口(TCP的扫描查
询:使用参数 -sT 查询开放的UDP端口,该选项需要完成3次握手方式,扫描速度较慢),如下图
所示
输入命令 nmap -sU 192.168.0.100 ,查看该靶机下开放了哪些UDP端口(UDP的扫描查
询:使用参数 -sU 查询开放的UDP端口,该选项扫描速度较慢,但可得到有价值的服务器程序),需
要注意的是使用UDP扫描使需要kali的root权限,输入命令后可以按回车查看扫描进度,如下图所示
· 步骤三 查看靶机安装了什么操作系统,版本是多少
输入命令 nmap -O 192.168.0.100 ,可以查看操作系统的版本,如下图所示(使用参数
-O是对目标主机的操作系统进行扫描),如下图所示可以看到靶机是安装了windows 10的操作系统
如果换另外一个IP地址,192.168.0.103 ,可以查看操作系统的版本为windows 2008
· 步骤四 查看靶机上安装了哪些服务
输入命令 nmap -sV 192.168.0.100,查看靶机上的安装的服务,如下图所示
3.4 任务四 使用Nessus开源软件对靶机环境进行扫描,回答相关问题并给出操作命令
· 步骤一 安装Nessus插件
在kali虚拟机中打开Nessus官方网页,下载版本为Nessus-10.1.2-debian6_amd64.
deb,如下图所示
· 步骤二 在虚拟机启动Nessus
输入命令 dpkg -i Nessus-10.1.1-debian6_amd64.deb 即可对其进行安装,之后输
入 /bin/systemctl start nessusd.service 启动Nessus服务
· 步骤三 在浏览器中打开相应网页
按照步骤二的提示命令,我们在kali虚拟机中的网页打开网址 https://kali:8834/(
网站会报不安全连接的警告,不用管,点击信任并继续),接下来进入Nessus页面,我们选择第一个
选项 Nessus Essentials,点击下一步(注册邮箱获取激活码),一直继续到设置账户名密码,登
录完成后Nessus会下载相关插件,这个过程会很长,需要耐心等待
· 步骤四 在Nessus制定相关策略
首先点击New Policy,选择Advanced Scan,选择具体的策略以及详细的描述信息
在我们刚建立的策略(点击New Scan,选择User Defined寻找刚制定的名为rwl的策略)
中输入靶机IP,然后运行任务
· 步骤五 扫描结果分析
通过对靶机的扫描,我们可以看出漏洞也并没有很多,如下图所示
我们选择其中的SMB signing not required漏洞进行分析,首先我们需要了解SMB是一个
服务器消息快协议,用于在计算机间共享文件、打印机、串口等,电脑上的网上邻居就是由它实现。
另外,还有一个重要的概念就是SMB签名,它是SMB协议中的安全机制,旨在帮助提高SMB协议的安全
性,为了防止在传输过程中修改SMB数据包。而该漏洞的危害在于SMB服务不需要签名,那么造成的危
害就是未经身份验证的远程攻击者可以利用此攻击对SMB服务器进行中间人攻击
我们可以再看看这个名为TLS Version 1.0 Protocol Detection的漏洞,一般的远程
服务都接受使用TLS 1.0加密的连接,但是这个协议有许多密码设计的缺陷,比如使用弱加密算法和
系统,这些算法和系统十分脆弱,存在重大安全漏洞,容易收到降级攻击的严重影响
· 步骤六 通过老师所给靶机进行漏洞分析
利用老师所给的虚拟机靶机,连接自己的手机热点,将靶机和主机(由于虚拟机上的nes
sus有点故障,我在自己主机端装了一个win10的nessus)置于同一局域网下,测试连通性
建立相关的策略后,用nessus去扫描(靶机漏洞较多,可能等待时间会很长)
扫描结果如下,看得出来这个靶机漏洞还是很多,一共有35个,其中高危漏洞有22个
可以简单看看以下几个高危漏洞的描述
3.5 任务五 通过搜索引擎搜索自己在网上的足迹,并确认自己是否有隐私和信息泄漏问题
· 步骤一 在搜索引擎上查询自己的名字、手机号码、以及身份证号
通过使用百度的搜索引擎,我对自己的名字、手机号码以及身份证号进行了依次查询,除了在
搜名字的时候看到了自己写的博客,其他的就再没有发现自己的隐私和信息泄漏问题
3.6 任务六 练习使用Google hacking搜集技能完成搜索
· PS:条件不够,本主机无法使用Google浏览器及搜索引擎,可以使用微软bing来替代
· 步骤一 查询标题中包含关键字的网页
语法为 intitle:
可以连接多个关键字,但由于关键字出现在网页中的频率不同,谷歌可能会自动忽略其中某个
关键字来进行查询
· 步骤二 查询正文中包含的关键字
语法为 intext:
查找正文中包含关键字,只能连接一个关键词
· 步骤三 查询指定网页链接
语法为 inurl:
查询链接中包含指定关键字的网页
· 步骤四 查询指定域名
语法为 site:
这个搜索语法将结果限制在站点的域名之内,搜索域名时建议去掉前面的"www",这样会搜索
指定域名的所有顶级域名和子域名
· 步骤五 查询指定外链
语法为 inanchor:
链接锚点指网页文本中的链接代码片段,如<a herf="www.baidu.com">百度</a>是一个
链接锚点,而“百度”便是该链接锚文字
· 步骤六 查询相似网页
语法为 related:
这个语法可以辅助查询同类型网页,例如通过related:www.google.com来查询Google的
相似网站,结果多包含搜索功能
· 步骤七 查询指定网页类型
语法为 filetype:
四、问题及解决方案
4.1 问题一
· 问题描述
安装插件Nessus报错,可能是由于在线下载的问题,导致总会下载失败
· 解决方案
查询相关博客和询问同学得到了相关的答案
4.2 问题二
· 问题描述
在尝试获取好友IP地址时,我利用wireshark抓包抓到的是好友的私有地址,但是利用在线
工具是不能对私有地址进行精准定位
· 解决方案
询问研究生学长后,通过使用资源监视器的方法成功捕捉到了好友的IP地址(资源监视器的介
绍在实验过程中已经描述了)
五、学习感悟及思考
这是本学期网络攻防课的第五次实验,本次实验的目的是实现信息搜集和漏洞扫描。本次实验相较于前几次实验来说更加简单,但简单归简单,我还是通过这次实验学到了很多知识。在这次实验中我能够灵活运用相关的Nmap命令进行扫描和使用google hacking的简单语法等。虽然在其中不免遇到了很多困难,但是在老师和同学的帮助下我还是一一解决了这些问题,还在信息搜集和漏洞扫描上实现了自我的进步。通过这次实验,我也意识到了学好网络攻防课的核心在于实践,虽然老师课上讲的东西很多,但是通过自己的实践将这些知识灵活运用,却是对知识的最好把握,相信在之后的实验课中能够学到更多的东西,提升自己的能力。
六、参考资料
· 信息收集 | 利用Google搜索语法进行Google Hacking https://blog.csdn.net/qq_2462
6721/article/details/121075369
· kali-linux中安装Nessus详细教程 https://blog.csdn.net/weixin_47510592/articl
e/details/118192982