一、实践目标
掌握信息搜集的最基础技能与常用工具的使用方法。
二、实践内容
- 各种搜索技巧的应用
- DNS IP注册信息的查询
- 基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点(以自己主机为目标)
- 漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞(以自己主机为目标)
三、实验步骤
各种搜索技巧的应用
1. 通过搜索引擎进行信息搜集
搜索引擎有筛选功能,例如filetype
能对搜索结果的文件类型进行限定
我在百度中通过搜索filetype:xls 学号 site:edu.cn
,可以找到符合要求的文件:
打开一个文件可以看到表格内容,这些表格不经意间就泄露了信息
2. 使用tracert进行路由追踪
cmd中输入tracert www.baidu.com
输出的信息分别是生存时间(跳数)、三次发送的ICMP包返回时间、途经路由器的IP地址,'*'表示超时。
3. 搜索网址目录结构
打开msfconsole
,使用
use auxiliary/scanner/http/dir_scanner
set THREADS 20
set RHOSTS www.baidu.com
exploit
获取网站目录结构,可以找到以下目录:
DNS IP注册信息的查询
1. whois查询
whois用来进行域名注册信息查询,可查询到3R注册信息,包括注册人的姓名、组织和城市等信息
2. nslookup查询
nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。
3. dig查询
dig可以从官方DNS服务器上查询精确的结果
dig查询选项
+[no]search:使用 [不使用] 搜索列表或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。
+[no]trace:切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。
+[no]short:当启用该选项时,显示[或不显示]提供应答的IP地址和端口号。
+[no]stats:该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。
其中search和stats我使用了好像没有变化,其他两个内容如下:
4. 各种网站查询
-
maxmind这个网站可以根据IP查询地理位置,从前面的操作可以得到百度的服务器IP为
14.215.177.39
,在网站中输入后可以看到主机的位置:
-
shodan这个网站的搜索引擎可以进行反域名查询,可以搜索到该IP的地理位置、服务占用端口号,以及提供的服务类型等信息:
-
ip-adress这个网站可以查询到更详细的关于IP的信息:
基本的扫描技术
主机发现
1. ping命令
ping命令用发送ICMP报文的方法检测活跃主机
2. 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.0.1/24
进行hosts设置 -
set THREADS 50
用于加快扫描速度 -
run
进行扫描
-
udp_sweep
-
启动
msfconsole
-
使用
use auxiliary/scanner/discovery/udp_sweep
进入udp_sweep模块 -
使用
set RHOSTS 192.168.0.1/24
进行hosts设置 -
set THREADS 50
用于加快扫描速度 -
run
进行扫描
3. Nmap探测
nmap -sn
参数可以用来探测某网段的活跃主机
端口扫描
1. metasploit中的模块
利用metasploit中的auxiliary/scanner/portscan中的扫描器进行端口扫描,主要可以扫描以下几种端口
ack:通过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测
ftpbounce:通过FTP BOUNCE攻击的原理对TCP服务进行枚举
syn:使用发送TCP SYN标志的方式探测开放的端口
tcp:通过一次完整的TCP链接来判断端口是否开放
xmas:一种更为隐蔽的扫描方式,通过发送FIN,PSH,URG标志能够躲避一些TCP标记检测器的过滤
这里选择tcp进行扫描:
2. Nmap端口扫描
nmap -sS -Pn 192.168.0.1/24
进行Nmap端口扫描
-sS是TCP SYN扫描,-Pn是在扫描之前,不发送ICMP echo请求测试目标
OS及服务版本探测
nmap -O
选项让Nmap对目标的操作系统进行识别,获取目标机的操作系统和服务版本等信息
nmap -sV
查看目标主机的详细服务信息
具体服务的查点
在msf中:
use auxiliary/scanner/telnet/telnet_version
进行Telnet服务扫描
use auxiliary/scanner/ssh/ssh_version
进行SSH服务扫描
use auxiliary/scanner/oracle/tnslsnr_version
进行Oracle数据库服务查点
use auxiliary/scanner/http/open_proxy
使用open_proxy模块进行开放代理探测
看报告看不出来啥东西。。。只显示完成扫描
漏洞扫描
首先安装OpenVAS,使用如下指令安装OpenVAS
apt-get update
apt-get dist-upgrade
apt-get install openvas
openvas-setup
使用openvas-check-setup
进行不断的纠错,最终安装成功如下:
使用如下命令创建用户
openvasmd --rebuild(根据check-setup的提示完成)
openvasmd --create-user=20175302 --role=Admin //创建用户
openvasmd --user=20175302 --new-password=5302 //设置密码
浏览器进入https://127.0.0.1:9392
,输入用户名和密码
在菜单栏选择Tasks
,进入后点击Task Wizard
新建一个任务向导,在栏里输入192.168.0.109
,点击Start Scans
确认,开始扫描
扫描结果如下:
可以看到扫描出两个漏洞:
点进去可以看到详情
最下面有一个细节查看,点进去可以看到解决方案
四、实验感想:
实验中遇到的问题
在实验的过程中,因为是参考别的同学的博客做的,有一个表现为同样是百度,但是IP地址不一样。是不是因为所在地区不同自动分配一个最近的服务器?
实验收获与感想
本次实验在操作上基本没有难度,主要是学习信息搜集与漏洞分析的过程,学习使用各种工具,掌握利用软件分析的能力。实验过程中我接触到了很多新的分析方法,使我受益匪浅。
PS:openvas的安装没有进度条的东西真的很磨人
五、问题回答
(1)哪些组织负责DNS,IP的管理。
DNS和IP地址管理由美国政府授权的ICANN统一管理
- 地址支持组织(ASO)负责IP地址系统的管理
- 域名支持组织(DNSO)负责互联网上的域名系统(DNS)的管理
- 协议支持组织(PSO)负责涉及Internet协议的唯一参数的分配
- 全球一共有5个地区性注册机构:ARIN(北美地区),RIPE(欧洲地区),APNIC(亚太地区),LACNIC(拉丁美洲美洲),AfriNIC(非洲地区)
(2)什么是3R信息。
- Registrant注册人
- Registrar注册商
- Registry官方注册局
(3)评价下扫描结果的准确性。
个人感觉还是较为准确的。