20201226马瑞婕Exp5- 信息搜集与漏洞扫描

发布时间 2023-04-20 21:44:14作者: 游浩贤

20201226马瑞婕Exp5- 信息搜集与漏洞扫描

1 各种搜索技巧的应用

1.1 搜索某一个网址目录结构

这里我选择利用工具查看一下xinhuanet网站的目录结构

msfconsole
use auxiliary/scanner/http/dir_scanner
set THREADS 50
set RHOSTS www.360.cn
exploit

扫到的结构如图所示

这些在目录后面的200、403、502是状态码,这些数据都是什么意思呢?

类别 原因短语
1XX Informational(信息性状态码) 接收的请求正在处理
2XX Success(成功状态码) 请求正常处理完毕
3XX Redirection(重定向) 需要进行附加操作以完成请求
4XX Client Error(客户端错误状态码) 服务器无法处理请求
5XX Server Error(服务器错误状态码) 服务器处理请求出错

相关方面的更多信息,可以访问这个网站,https://cloud.tencent.com/developer/article/1688459用户可以知道服务器端是正常处理了请求,还是出现了错误

注意:这个扫到的结果是有差别的,如果该网站的运维人员采取了相关措施,是扫不出网站的目录结构的。可以打开哪些状态码是2XX类型的,看看都有什么

我打开一个状态码是200的,看到这个目录下存储的是360的公司简介

1.2 通过搜索引擎进行信息搜索

例如,我想要从互联网中扒出某个人的信息,但是我目前已经知道了此人得到名字及学校,我还想知道此人在学校内参加过什么活动、担任什么职位、负责研究过什么项目、有什么科研成果、拿过什么奖项越详细越好,应该如何利用搜索引擎进行搜索呢?

比如此次实验我将搜索范围设置在我们学校,我先上搜索引擎上搜索北京电子科技学院,可以得到学校官网

https://www.besti.edu.cn 就是学校的官网

通过搜索引擎查找学校官网中上传的excel表格,可以查找到公示的2北京电子科技学院2020年分省分专业招生总计划
filetype:xls site:besti.edu.cn

部分有学生隐私信息的网址拒绝访问

1.3 路由侦察

tracert www.baidu.com

这里出现的 www.a.shifen.com是百度防止黑客恶意攻击的一个手段,这个 shifen 就是baidu的竞价排名系统,名字就叫"十分系统" 。
第一列代表了生存时间(每途经一个路由器结点自增1)
第二至第四列表示“三次发送的ICMP包返回时间(共计3个,单位为毫秒ms)
第五列表示“途经路由器的IP地址(如果有主机名,还会包含主机名)
带有星号(*)的信息表示该次ICMP包返回时间超时。

traceroute www.baidu.com

与windows中的基本一致,只有顺序变化了一下,记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,每行有三个时间,单位是ms,是探测数据包向每个网关发送三个数据包后,网关响应后返回的时间

二、DNS IP注册信息的查询

2.1 whois命令查询

whois有什么用?

它是用来查询域名的ip及所有者信息的;在渗透测试中,whois得到信息一般是为社会工程学攻击做准备。在kali中可以输入whois+域名进行查询。进行whois查询时记得去掉www等前缀
对bilibili网用whois命令查询,查询结构如下图

Registrant: 董严

域名拥有者是董严
得到的信息中有域名拥有者的联系邮箱

Sponsoring Registrar: 温州市中网计算机技术服务有限公司

域名注册服务商是温州市中网计算机技术服务有限公司

2.2 nslookup、dig域名查询

nslookup bilibili.com

dig qq.com

nslookup结果中有这样一条提示:Non-authoritative answer:

这是因为nslookup可以得到DNS解析服务器Cache的结果,这不一定是正确的,dig是从官方DNS服务器上查询精确的结果。从图中可以看到,查询新浪的域名,这两种方式得到的结果是一样的。

如果需要查询whois信息,除了kali的whois命令以外,还可以到网站进行查询

站长之家:http://whois.chinaz.com/ whois(国外):https://www.whois.com/whois

2.3 IP2Location地理位置查询

可以先用ping命令获取目标域名的IP地址

ping bilibili.com

IP地址所在位置查询网站:https://ip.sb/

三、基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)

3.1 主机发现

3.1.1 ping命令

原理:ping命令用发送ICMP报文的方法检测活跃主机

输入命令 ping+[目标ip]

metasploit中arp_sweep模块与udp_sweep 模块
arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机

udp_sweep模块除了可以探测到存活主机之外,还可以获得主机名称信息

注意:要先将Kali设成桥接模式才能扫描同一个网段下的其他主机,也可以选择多开虚拟机,开启“仅主机”模式,扫描由虚拟机组成的局域网

msfconsole

use auxiliary/scanner/discovery/udp_sweep //进入arp_sweep 模块
set RHOSTS 主机地址 //用set进行hosts主机段设置
set THREADS 50
run //执行run进行扫描

3.1.2 nmap -sn

nmap相关参数如下:

-sS:TCP SYN扫描,可以穿透防火墙;
-sA:TCP ACK扫描。有时候由于防火墙会导致返回过滤/未过滤端口;
-sP:发送ICMP echo探测;
-sT:TCP connect扫描,最准确,但是很容易被IDS检测到,不推荐;
-sF/-sX/-sN:扫描特殊的标志位以避开设备或软件的监测;
-O:启用TCP/IP协议栈的指纹特征信息扫描以获取远程主机的操作系统信息;
-sV:获取开放服务的版本信息;

原理:nmap -sn参数可以用来探测某网段的活跃主机

方法:进入root模式->输入命令 nmap -sn 主机地址

分析:如下图所示,对指定网段的主机端口都检测了

3.2 端口扫描

3.2.1 metasploit扫描端口

利用metasploit中的auxiliary/scanner/portscan中的扫描器进行端口扫描

use auxiliary/scanner/portscan/tcp
就是通过一次完整的TCP链接来判断端口是否开放

msfconsole

use auxiliary/scanner/portscan/tcp
set RHOST 192.168.1.1
set THREADS 50
run

我这里扫描的是主机ip,发现一些端口是打开的

3.2.2 nmap扫描端口

nmap -sS -p 80-90 -v [IP地址]

3.3 OS及服务版本探测

3.3.1 nmap -O

原理:nmap -O选项让Nmap对目标的操作系统进行识别,获取目标机的操作系统和服务版本等信息

nmap -O -Pn [IP地址]

3.3.2 nmap -sV

原理:nmap -sV查看目标主机的详细服务信息

nmap -sV [IP地址]

3.4 具体服务的查点

3.4.1 Telnet服务扫描

telnet命令用于登录远程主机,对远程主机进行管理。利用Telnet服务,黑客可以搜索远程登录Unix的服务。Telnet-23端口

msfconsole

use auxiliary/scanner/telnet/telnet_version
set RHOSTS 192.168.1.1
set THREADS 50 
run

刚刚nmap扫描过一次,路由器的23端口没有打开,说明Telnet服务是关闭的。此次扫描结果是23端口没有打开,与上一次扫描结果相符。

若想要查看某一网段里面的主机Telnet服务的开放情况,也可以设置扫描端口为某一网段

set RHOSTS 192.168.1.0/24

3.4.2 SSH服务扫描

一台服务器打开了SSH服务,就能通过输入密码登录此台服务器。攻击者一般先会扫描SSH服务是否打开,若打开,则会通过密码字典等暴力破解等方式尝试登录此台服务器。SSH-22端口

msfconsole

use auxiliary/scanner/ssh/ssh_version 
set RHOSTS 192.168.1.1 
set THREADS 50 
run

若想要查看某一网段里面的主机Telnet服务的开放情况,也可以设置扫描端口为某一网段

set RHOSTS 192.168.48.0/24

四、漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)


推荐第二种方法,不仅不需要等待很长时间的更新和初始化,而后的界面也更大很方便操作


4.1 在kail上下载安装

4.1.1更换国内源,加快速度

4.1.1.1 kali默认的官方源在国内使用会比较慢,所以我们一般会更换使用国内的镜像站。我习惯使用阿里云的镜像站

sudo vim /etc/apt/sources.list

4.1.1.2 用#把默认官方源注释掉,再加上阿里云的url

deb https://mirrors.aliyun.com/kali kali-rolling main non-free contrib
deb-src https://mirrors.aliyun.com/kali kali-rolling main non-free contrib

4.1.1.3 国内其它镜像站

中科大源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
清华大学源
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free
浙大源
deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
deb-src http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free
东软大学源
deb http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
deb-src http://mirrors.neusoft.edu.cn/kali kali-rolling/main non-free contrib
网易Kali源
deb http://mirrors.163.com/debian wheezy main non-free contrib
deb-src http://mirrors.163.com/debian wheezy main non-free contrib

4.1.1.4 更新软件列表

sudo apt-get update #更新软件列表
sudo apt-get upgrade #更新软件
sudo apt-get dist-upgrade #升级
sudo apt-get clean #删除缓存包
sudo apt-get autoclean #删除未安装的deb包

4.1.2 安装gvm

apt-get update
apt-get dist-upgrade
apt-get install openvas
apt install gvm
sudo gvm-setup//这步时间非常非常非常长,找个网好的地方装,网千万别断,很容易出bug
gvm-feed-update

安装完成后会自动生成管理员账号和密码(初始用户名:admin,密码下面那一大串,可以不用改)

使用 gvm-check-setup 来检查是否安装完成(出现It seems like your GVM-21.4.3 installation is OK,就说明安装完成!)


非常幸运我第一次进行初始化的时候,是正确的步骤,只不过我低估了初始化的时长,晚上11点熄灯断网之后,就寄了。后面我继续执行sudo gvm-setup这条命令,却无法再进行初始化。在经过一系列坎坷的经历之后,我选择了李卫平同学的方法(李卫平同学真的拯救了很多人)



4.2安装使用OpenVAS

再次感谢李卫平同学

4.2.1使用别人已经安装好feed的gvm镜像文件。

镜像文件链接:https://pan.baidu.com/s/1V7fVbXhpzcOjoevkX-uZMQ 
提取码:fjvi
用户名:admin 密码:123456

4.2.2下载好所需镜像文件后,打开VMWare,选择打开虚拟机

选择下好的ovf文件,注意将下好的文件放在一个文件夹

存储路径也放在同一文件夹,等待导入成功。

4.2.3打开导入完成的虚拟机

输入用户名admin和密码123456,并记录ip
此步一定要记住ip

出现如下选项,选择cancel或No都是取消配置(用键盘的方向键移动,回车确认)

等待一段时间后,出现如下界面,回车即可

如果仍然出现此界面,请无视它,不要试图去理解它

4.3使用gvm

在主机中打开刚才的IP地址,无视提示继续连接

输入用户名和密码(同上)

进入界面后,点上方task,选择第一个选项

输入主机的IP进行检测

点击查看成果,选择PORTS查看一下开放端口,在主机CMD命令行中用netstat -a -n查看

CVEs意为通用漏洞披露,Closed CVEs报告将生成主机和CVE的列表,对于这些主机和CVE,相应的测试返回了“不易受攻击”的退出代码,即已修复且不会对报告的主机构成威胁的漏洞/暴露。

按照图中步骤点击查看

以缓冲区溢出为例

也可以直接修改筛选条件:family="Buffer overflow",如下图

点击第一个查看详细内容

详细的漏洞说明可在微软技术中心中查看或者查看下面给出的一些网址,解决漏洞的话就是根据图片中的solution
cve NVD
cvedetails
或者通过查找CVE-2006-6183来得到更多有关漏洞的说明

5 实验后回答问题

5.1 哪些组织负责DNS,IP的管理

全球根服务器均由美国政府授权的ICANN统一管理,负责DNS和IP地址管理。
全球一共有5个地区性注册机构:
ARIN(北美地区业务),
RIPE(负责欧洲地区业务),
APNIC(负责亚太地区业务),
LACNIC(负责拉丁美洲美洲业务),
AfriNIC(负责非洲地区业务)

5.2 什么是3R信息

Registrant:注册人
Registrar:注册商
Registry:官方注册局

5.3 评价下扫描结果的准确性

扫描结果较为准确(系统、端口等),但漏洞太多了,不知道怎么核实

6 实验总结与体会

经过了这次实验中更新kail和初始化gvm之后,我的心态得到了一个质的飞跃和升华。在安装过程中,不仅被网速所困惑(热点居然也是慢的),被奇奇怪怪的错误所抓狂,个别错误网上还找不到解决方法
比如,提示我rsync:链接失败 failed to connect to x.x.x.x: Connection refused
参考链接:https://blog.csdn.net/panjiapengfly/article/details/109159783

比如,一直提示rsync error: error in socket IO (code 10) at clientserver.c(139)
在网上找到非常实用的解决方法,参考链接:
https://blog.csdn.net/majiangNB/article/details/113356241
前两个问题的本体都差不多,都和rsyncd有关,解决方法也大同小异。

再比如,一直提醒我could not change directory to "/home/mrj20201226": 权限不够kail
这个我完全找不着该咋办,网上搜不打解决方法,然后我就重新装了一个kail,结果不知道为啥,第二个kail也出现和第一个kail的权限问题。然后就有了第三个kail,第三个kail比较顺利,但是更新巨巨巨巨巨巨巨巨巨慢,慢的离谱,一个半小时进度从69%到74%。后面我就根据李卫平同学的实验报告直接安装GVM的虚拟机,这个方法真的非常实用,拯救了众多大学生,让我们说:谢谢你,李卫平同学!