2019-2020-2 20175317钟睿文《网络对抗技术》Exp5 信息搜集与漏洞扫描
2019-2020-2 20175317钟睿文《网络对抗技术》Exp5 信息搜集与漏洞扫描
实践目标
掌握信息搜集的最基础技能与常用工具的使用方法。
实践内容
-
各种搜索技巧的应用
-
DNS IP注册信息的查询
-
基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)
-
漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)
各种搜索技巧的应用
- 搜索网址目录结构
打开msfconsole
,使用
use auxiliary/scanner/http/dir_scanner
set THREADS 20
set RHOSTS www.baidu.com
exploit
获取网站目录结构,可以找到以下目录:
- 通过搜索引擎进行信息搜集
filetype
能对搜索结果的文件类型进行限定,使用格式:检索词 filetype:文件类型
搜狗搜索site:edu.cn filetype:xls 手机
,可以找到符合要求的文件:
下载后打开,内容如下:
- 使用tracert命令进行路由侦查
cmd中输入tracert www.baidu.com
输出的信息分别是生存时间(跳数)、三次发送的ICMP包返回时间、途经路由器的IP地址,星号的信息表示该次ICMP包返回时间超时。
DNS IP注册信息的查询
- whois查询
whois用来进行域名注册信息查询,在终端输入要查询的域名去掉www的形式,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到。
例如whois baidu.com
可查询到百度的3R注册信息,包括注册人的姓名、组织和城市等信息
- nslookup,dig域名查询
nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。在终端输入nslookup baidu.com
dig可以从官方DNS服务器上查询精确的结果,在终端输入dig baidu.com
dig命令还有很多查询选项,使用
+[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。
+[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
+[no]short:当启用该选项时,显示[或不显示]提供应答的IP地址和端口号。
+[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
执行具体的查询选择,例如:
- IP2Location地理位置查询
- IP2Location这个网站可以查询指定IP的相关信息,查询百度的位置等信息如下:
- maxmind这个网站可以根据IP查询地理位置,使用
ping www.baidu.com
查看网站的IP地址,得到百度的服务器IP为61.135.169.121
,在网站中输入后可以看到主机的位置:
- shodan这个网站的搜索引擎可以进行反域名查询,可以搜索到该IP的地理位置、服务占用端口号,以及提供的服务类型等信息,打开该网站,输入想要查询的IP地址,可以看到其地理位置,端口号和提供的服务等具体信息:
- IP2反域名查询
- ip-adress这个网站可以查询到更详细的关于IP的信息,在该网站输入百度的IP地址
61.135.169.121
后查看结果,可以看到很多关于该IP的详细信息:
基本的扫描技术
主机发现
- ping命令
ping命令用发送ICMP报文的方法检测活跃主机,cmd中输入命令ping www.baidu.com
- metasploit中的模块
arp_sweep,ipv6_multicast_ping,ipv6_neighbor, ipv6_neighbor_router_advertisement, udp_probe和udp_sweep都是metasploit中位于modules/auxiliary/scanner/discovery中的模块,arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机,udp_sweep模块除了可以探测到存活主机之外,还可以获得主机名称信息
- arp_sweep
- 启动
msfconsole
- 使用
use auxiliary/scanner/discovery/arp_sweep
进入arp_sweep模块 - 使用
set RHOSTS 192.168.122.136/24
进行hosts设置 set THREADS 50
用于加快扫描速度run
进行扫描
- udp_sweep
- 启动
msfconsole
- 使用
use auxiliary/scanner/discovery/udp_sweep
进入udp_sweep模块 - 使用
set RHOSTS 192.168.0.109/24
进行hosts设置 set THREADS 50
用于加快扫描速度run
进行扫描
- Nmap探测
nmap -sn
参数可以用来探测某网段的活跃主机,输入命令nmap -sn 192.168.0.109/24
端口扫描
- metasploit中的模块
利用metasploit中的auxiliary/scanner/portscan中的扫描器进行端口扫描,主要可以扫描以下几种端口
ack:通过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测
ftpbounce:通过FTP BOUNCE攻击的原理对TCP服务进行枚举
syn:使用发送TCP SYN标志的方式探测开放的端口
tcp:通过一次完整的TCP链接来判断端口是否开放
xmas:一种更为隐蔽的扫描方式,通过发送FIN,PSH,URG标志能够躲避一些TCP标记检测器的过滤
之后使用如下指令:
- 在msf中输入
use auxiliary/scanner/portscan/tcp
- 使用
set RHOSTS 192.168.0.109/24
进行hosts主机段设置 set THREADS 100
用于加快扫描速度run
进行扫描
- Nmap端口扫描
使用nmap -sS -Pn 192.168.0.109
进行Nmap端口扫描,-sS是TCP SYN扫描,-Pn是在扫描之前,不发送ICMP echo请求测试目标
OS及服务版本探测
nmap -O
选项让Nmap对目标的操作系统进行识别,获取目标机的操作系统和服务版本等信息,使用命令nmap -O 192.168.0.109
nmap -sV查看目标主机的详细服务信息,使用命令nmap -sV -Pn 192.168.0.109
,其中-Pn是在扫描之前,不发送ICMP echo请求测试目标
具体服务的查点
- Telnet服务扫描
- 在msf中使用
use auxiliary/scanner/telnet/telnet_version
进入telnet模块 - 使用
set RHOSTS 192.168.0.109/24
进行hosts主机段设置 set THREADS 100
用于加快扫描速度run
进行扫描
- SSH服务扫描
- 在msf中使用
use auxiliary/scanner/ssh/ssh_version
进入ssh模块 - 使用
set RHOSTS 192.168.0.109/24
进行hosts主机段设置 set THREADS 100
用于加快扫描速度run
进行扫描
- Oracle数据库服务查点
- 在msf中使用
use auxiliary/scanner/oracle/tnslsnr_version
进入tnslsnr模块 - 使用
set RHOSTS 192.168.0.109/24
进行hosts主机段设置 set THREADS 100
用于加快扫描速度run
进行扫描
- 使用open_proxy模块进行开放代理探测
- 在msf中使用
use auxiliary/scanner/http/open_proxy
进入open_proxy模块 - 使用
set RHOSTS 192.168.0.109/24
进行hosts主机段设置 set THREADS 100
用于加快扫描速度run
进行扫描
漏洞扫描
首先安装OpenVAS,使用如下指令安装OpenVAS
apt-get update
apt-get dist-upgrade
apt-get install openvas
openvas-setup
使用openvas-check-setup
进行不断的纠错,最终安装成功如下:
使用如下命令创建用户
openvasmd --rebuild
greenbone-scapdata-sync –refresh //生成scap.db文件
openvas-scapdata-sync //同步SCAP数据
openvas-certdata-sync //同步证书数据
openvasmd --create-user=20175317 --role=Admin //创建用户
openvasmd --user=20175317 --new-password=111 //设置密码
浏览器进入https://127.0.0.1:9392
,输入用户名和密码
在菜单栏选择Tasks
,进入后点击Task Wizard
新建一个任务向导,在栏里输入192.168.0.109
,点击Start Scans
确认,开始扫描
扫描结果如下:
打开结果查看详细信息,进入Scan Config中的Full and fast
以Web application abuses
为例,点进去查看详细结果。可以看到漏洞的等级,查看一个评分7.5的漏洞:
可以看到其中的详细信息,包括介绍,还有具体的解决方案:
实验中遇到的问题
问题一:使用metasploit中的模块进行扫描时报错
问题一解决方案:经查看报错内容显示没有足够的权限扫描,执行sudo msfconsole
再执行后续命令,就可以正常运行了
问题二:安装OpenVAS后使用openvas-check-setup
时不断报错提示安装失败
问题二解决方案:根据提示首先执行openvasmd --rebuild
,执行完后再次检测还是报错
根据提示运行greenbone-scapdata-sync
根据提示运行greenbone-certdata-sync
然后就成了!
实验收获与感想
本次实验在操作上基本没有什么难度,主要是掌握信息搜集与漏洞分析的过程,掌握利用软件分析的能力。实验过程中我接触到了很多新的分析方法,使我受益匪浅。
在实验过程中OpenVAS的安装中我遇到了许多困难,但是经过与同学探讨尝试,将这些错误一一排除的感觉相当爽!这期间还提升了我解决问题的能力,同时让我对Linux的了解更深了。
问题回答
(1)哪些组织负责DNS,IP的管理。
DNS和IP地址管理由美国政府授权的ICANN统一管理
- 地址支持组织(ASO)负责IP地址系统的管理
- 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
- 协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配
全球一共有5个地区性注册机构:ARIN(北美地区),RIPE(欧洲地区),APNIC(亚太地区),LACNIC(拉丁美洲美洲),AfriNIC(非洲地区)
(2)什么是3R信息。
- Registrant注册人
- Registrar注册商
- Registry官方注册局
(3)评价下扫描结果的准确性。
虽然有的介绍说可能不准确,但是实际运行完我个人感觉还是较为准确的,没有出现明显的偏差和误判。