2017-2018-2 20155314《网络对抗技术》Exp6 信息搜集与漏洞扫描
2017-2018-2 20155314《网络对抗技术》Exp6 信息搜集与漏洞扫描
目录
实验目标
掌握信息搜集的最基础技能与常用工具的使用方法。
实验内容
各种搜索技巧的应用
DNS IP注册信息的查询
基本的扫描技术:主机发现、端口扫描、OS及服务版本探测、具体服务的查点
漏洞扫描:会扫,会看报告,会查漏洞说明,会修补漏洞
实验环境
- macOS本机
- macOS下Parallels Desktop虚拟机中(网络源均设置为共享网络模式):
- Kali Linux - 64bit(攻击机,IP为
10.211.55.10
) - Windows 7 - 64bit(靶机,IP为
10.211.55.14
) - Windows XP Professional Version 2002 Service Pack 3(靶机,IP为
10.211.55.16
)
- Kali Linux - 64bit(攻击机,IP为
基础问题回答
- 哪些组织负责DNS,IP的管理。
- 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器、DNS和IP地址管理。
- 全球根域名服务器:绝大多数在欧洲和北美(全球13台,用A~M编号),中国仅拥有镜像服务器(备份)。
- 全球一共有5个地区性注册机构:ARIN主要负责北美地区业务,RIPE主要负责欧洲地区业务,APNIC主要负责亚太地区业务,LACNIC主要负责拉丁美洲美洲业务,AfriNIC负责非洲地区业务。
- 什么是3R信息。
- 3R即注册人(Registrant)、注册商(Registrar)、官方注册局(Registry)
- 3R注册信息分散在官方注册局或注册商各自维护数据库中,官方注册局一般会提供注册商和Referral URL信息,具体注册信息一般位于注册商数据库中。
- 评价下扫描结果的准确性。
预备知识
实验步骤
1 信息搜集
1.1 外围信息搜集
- 外围信息搜集又叫公开渠道信息搜集。
- 搜索引擎,公共信息库,目标门户网站等等都是很好的入手点。
- metasploit有一类“辅助模块”,可以帮助你进行信息搜集的工作,并且还集成了nmap等神器。
1.1.1 通过DNS和IP挖掘目标网站的信息
使用
whois
命令查询域名注册信息:注意:进行whois查询时去掉www等前缀,因为注册域名时通常会注册一个上层域名,子域名由自身的域名服务器管理,在whois数据库中可能查询不到。
whois baidu.com
从图中可以得到**3R信息**,包括注册人的名字、组织、城市等信息!使用
nslookup
和dig
命令查询域名:- nslookup:
nslookup可以得到DNS解析服务器保存的Cache的结果,但并不是一定准确的。
```
nslookup
> set type=A
> baidu.com
```
<img src="https://images2018.cnblogs.com/blog/1071508/201805/1071508-20180509102241289-531264022.png" width="100%" />
- dig:
dig可以从官方DNS服务器上查询精确的结果。
```
dig @dns.baidu.com baidu.com
```
其中dns.baidu.com为DNS服务器
<img src="https://images2018.cnblogs.com/blog/1071508/201805/1071508-20180509102308600-787167060.png" width="100%" />
使用www.maxmind.com根据IP查询地理位置信息:
使用netcraft提供的信息查询服务,能获取到更多的更详细的信息:
使用IP2进行反域名查询:
可以通过http://www.ip-adress.com/reverse_ip/查询和定位:
国内的也可以用http://www.7c.com/进行查询,结果更准确。
1.1.2 通过搜索引擎进行信息搜集
Google Hacking
- Google提供了高级搜索功能。GHDB数据库包含了大量使用Google从事渗透的搜索字符串,
- http://www.exploit-db.com/google-dorks 可以在上述网址看GHDB的内容。
- 一些自动化的工具,SiteDigger ,Search Diggity,Gooscan,具体用法自行百度。
搜索网址目录结构:
首先可以手工测试一些常见的目录名,如 admin,login等等。
用Google查询:parent directory site:XXX.com 来查找目录。一般对拓展名为inc,bak,txt,sql的文件要特别留意。inc:可能包含网站的配置信息。
bak:通常是文本编辑器留下的备份文件。
txt or sql:包含网站运行的sql脚本。
自动化的工具:metasploit的brute_dirs,dir_listing,dir_scanner等辅助模块,主要是暴力猜解。以dir_scanner为例:
msf > use auxiliary/scanner/http/dir_scanner。
具体的辅助模块需要百度自行查找。
一些网站还会在根目录下放置robots.txt文件,用以告诉搜索引擎哪些目录和文件不被抓取。
- 搜索特定类型的文件
有些网站会链接通讯录,订单等敏感的文件,可以进行针对性的查找,
如Google,site:XXX.com filetype:xls。
- 搜索E-Mali
metasploit中有search_email_collector,进行针对性的搜集。
msf auxiliary(dir_scanner) > use auxiliary/gather/search_email_collector
搜索存在sql注入的页面以及后台登陆的页面:
Google:site:XXX.com inurl:login site:XXX.com inurl:.php?id=1
利用traceroute进行IP路由侦查:
traceroute www.baidu.com
1.2 主机探测和端口扫描——基于Armitage自动化实现
1.2.1 活跃主机扫描和操作系统辨别
- ICMP Ping命令
ping www.baidu.com
- 使用netdiscover探测私有网段存活主机:
netdiscover是基于ARP的网络扫描工具。ARP是将IP地址转化物理地址的网络协议。通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机。Kali Linux提供的netdiscover工具,就是借助该协议实施主机发现。它既可以以被动模式嗅探存活的主机,也可以以主动模式扫描主机。用户还可以根据网络稳定性,调整发包速度和数量。
- Kali中使用命令
netdiscover
对私有网段进行主机探测: - 192.168.0-255.0/16
- 172.16
- 172.26
- Kali中使用命令
- metasploit中的模块
位于modules/auxiliary/scanner/discovery 主要有 arp_sweep, ipv6_multicast_ping, ipv6_neighbor, ipv6_neighbor_router_advertisement, udp_probe,udp_sweep.
arp_sweep 使用ARP请求枚举本地局域网的活跃主机,即ARP扫描器
udp_sweep 使用UDP数据包探测。 - 利用Armitage进行Nmap自动化探测
- 在Armitage中上方工具栏依次选择
Hosts
->Nmap Scan
->Quick Scan(OS detect)
:
- 填写靶机所在网段
10.211.55.0/24
:
- 给靶机扫出来!
- 在Armitage中上方工具栏依次选择
1.2.2 端口扫描与服务探测
扫描技术:TCP Connect ,TCP SYN, TCP ACK ,TCP FIN ,TCP IDLE
- metasploit的端口扫描模块:
用search portscan
命令找到相关模块 - Armitage下Nmap端口扫描和探测详细服务信息:
- 选中靶机
10.211.55.16
,右键选择Services
,查看靶机上开启的端口和相应服务:
可见靶机的139端口开启了netbios-ssn服务,445端口开启了microsoft-ds服务~ - 选中靶机
10.211.55.16
,右键选择Scan
,Armitage会调用Metasploit的漏洞扫描模块,定向扫描靶机,寻找存在的漏洞,为下一步确定攻击方法提供参考依据:
可见类似前几次实验在Metasploit中手动配置主机号、端口号等设置现在统统直接自动化了!
返回目录
- 选中靶机
1.3 服务扫描和查点——基于Armitage自动化实现
metasploit中有许多相关工具,大部分都在Scanner辅助模块,常以[service_name]_version(用以遍历主机,确定服务版本)和[service_name]_login(进行口令探测攻击)命名
可输入 search name:_version查看所有服务查点模块
- 在Armitage中就更简单了!我们选中靶机
10.211.55.16
,右键选择Scan
,Armitage会调用Metasploit的漏洞扫描模块,定向扫描靶机,寻找存在的漏洞,为下一步确定攻击方法提供参考依据:
可见类似前几次实验在Metasploit中手动配置主机号、端口号等设置现在统统实现自动化~
1.3.1 网络服务扫描
- telent服务扫描
use auxiliary/scanner/telent/telent_version
- SSH服务扫描
use auxiliary/scanner/ssh/ssh_version
- Oracle数据库服务查点
msf auxiliary(ssh_version) > use auxiliary/scanner/oracle/tnslsnr_version
- 开放代理探测 open_proxy模块
msf auxiliary(tnslsnr_version) > use auxiliary/scanner/http/open_proxy
1.3.2 口令猜测与嗅探
具体可参考我的上一篇实验博客:2017-2018-2 20155314《网络对抗技术》Exp5 MSF基础应用 - John the Ripper_linux口令破解模块:Armitage下Auxiliary辅助模块应用
首先我们需要以特定格式设置用户名和密码Hash(这里选择用MD5在线生成):
访问MD5在线加解密网站CMD5,在上方【密文】处输入一段字符串,下方【查询结果】处就立即显示出结果(只要不超过31位,否则会卡住233):
分别将不同用户名对应的密码经过MD5在线加密之后得到Hash值,获得下面这张表:
|用户名|密码|Hash|
|:--2017-2018-2 20155314《网络对抗技术》Exp6 信息搜集与漏洞扫描的更多相关文章
- 20145215《网络对抗》Exp6 信息搜集与漏洞扫描
20145215<网络对抗>Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.DNS和 ...
- 20145208 蔡野 《网络对抗》Exp6 信息搜集与漏洞扫描
20145208 蔡野 <网络对抗>Exp6 信息搜集与漏洞扫描 本实践的目标是掌握信息搜集的最基础技能.具体有(1)各种搜索技巧的应用(2)DNS IP注册信息的查询 (3)基本的扫描技 ...
- 20155226 《网络对抗》exp6信息搜集与漏洞扫描
20155226 <网络对抗>exp6信息搜集与漏洞扫描 实验后回答问题 哪些组织负责DNS,IP的管理? 目前域名机构主要包括ICANN理事会和CNNIC. Internet 域名与地址 ...
- 20155308《网络对抗》Exp6 信息搜集与漏洞扫描
20155308<网络对抗>Exp6 信息搜集与漏洞扫描 原理与实践说明 实践内容 本实践的目标是掌握信息搜集的最基础技能.具体有: 各种搜索技巧的应用 DNS IP注册信息的查询 基本的 ...
- 20155323刘威良《网络对抗》Exp6 信息搜集与漏洞扫描
20155323刘威良<网络对抗>Exp6 信息搜集与漏洞扫描 实践目标 掌握信息搜集的最基础技能与常用工具的使用方法. 实践内容 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查 ...
- 20155330 《网络对抗》 Exp6 信息搜集与漏洞扫描
20155330 <网络对抗> Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? 互联网名称与数字地址分配机构(The Internet Corporation ...
- 20155331 《网络对抗》 Exp6 信息搜集与漏洞扫描
20155331 <网络对抗> Exp6 信息搜集与漏洞扫描 实验问题回答 哪些组织负责DNS,IP的管理 答:美国政府授权ICANN统一管理全球根服务器,负责全球的域名根服务器.DNS和 ...
- # 20155337《网络对抗》Exp6 信息搜集与漏洞扫描
20155337<网络对抗>Exp6 信息搜集与漏洞扫描 实践目标 (1)各种搜索技巧的应用 (2)DNS IP注册信息的查询 (3)基本的扫描技术:主机发现.端口扫描.OS及服务版本探测 ...
- 20145301 赵嘉鑫 《网络对抗》Exp6 信息搜集与漏洞扫描
20145301赵嘉鑫<网络对抗>Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.D ...
- 20145307陈俊达《网络对抗》Exp6 信息搜集与漏洞扫描
20145307陈俊达<网络对抗>Exp6 信息搜集与漏洞扫描 基础问题回答 哪些组织负责DNS,IP的管理? 全球根服务器均由美国政府授权的ICANN统一管理,负责全球的域名根服务器.D ...
随机推荐
- .6-浅析webpack源码之validateSchema模块
validateSchema模块 首先来看错误检测: const webpackOptionsValidationErrors = validateSchema(webpackOptionsSchem ...
- c# 获取客户端文件
/// <summary> /// 获取有效客户端文件控件集合,文件控件必须上传了内容,为空将被忽略, /// 注意:Form标记必须加入属性 enctype="multipar ...
- jQuery 【选择器】【动画】
jQuery 是一个快速.简洁的JavaScript框架,它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作.事件处理.动画设计和Ajax交互. ...
- Java学习笔记之——Java介绍
1.Java体系: JavaSE:标准版,其他两个体系的基础 JavaEE:企业版 JavaME:微型版,适用于消费类型的微型设备 2.Java三大特性:封装.继承.多态 3.Java的特点:面向对象 ...
- 在CentOS下的docker容器中部署spring boot应用的两种方式
我们通常在 windows 环境下开发 Java,而通常是部署在Linux的服务器中,而CentOS通常是大多数企业的首选,基于Docker的虚拟化容器技术,多数Java应用选择这种方式部署服务.本文 ...
- Java 支付宝支付,退款,单笔转账到支付宝账户(支付宝支付)
最近一直在接触第三方,刚接入完支付宝的API做一下总结,个人能力薄弱有不对的地方望指教. 做的是一个小型电商项目,所以会接入第三方的支付和登入功能, 第一次接入第三方撸了很多官方文档. 进入主题, ...
- Android基础系列合集
四大组件 1.Service Android四大组件-Service Android-远程Service Service 动态更新 UI 2.Activity Android四大组件-Activity ...
- NO.1食品超市经营管理的数据方案
背景 丸悦是一家日资企业,经营管理方式有着很强的日本文化风格:讲流程.重细节.丸悦2013年进入中国,沿袭固有经营管理方式,并且只选择日本供应商合作,日常经营出现诸多摩擦,最终多方原因导致年亏损300 ...
- Git服务器配置及本地克隆提交、服务器获取
1.服务器Git安装配置 相关链接 相关链接 注意ssh-keygen .修改权限 权限: 相关链接 2.本地获取 git clone name@ip:服务器项目位置 相关链接 3.创建 ...
- 安卓开发之Room实体定义数据
使用Room实体定义数据 在Room库中,entities(实体)代表着相关字段集.每一个entity(实体)代表着相关联数据库中的一个表.entity 类必须通过Database 类中的entiti ...
- 20145215《网络对抗》Exp6 信息搜集与漏洞扫描