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 ...
随机推荐
- MVC之Ajax异步操作
在页面的局部通过Html.Action加载一块分布页,我们可以通过Ajax异步去更换或更新这块分布页 通过一个下拉框值发生变化的时候,我们会去从后台重新访问这个action获取一个新的View,然后替 ...
- [android] 手机卫士设备管理权限锁屏
设备管理员 Device Admin 获取DevicePolicyManager对象,通过getSystemService(DEVICE_POLICY_MANAGER),设备策略管理器 调用Devic ...
- 10.C++-构造函数初始化列表、类const成员、对象构造顺序、析构函数
首先回忆下,以前学的const 单独使用const修饰变量时,是定义的常量,比如:const int i=1; 使用volatile const修饰变量时,定义的是只读变量 使用const & ...
- Java静态成员与实例成员
Java静态成员与实例成员 类是一种类型,类中定义的所有成员都归此的对象所有,这些成员成为实例成员:而某些成员想要被所有类的所有对象共享,此时的成员不属于某个对象,而是属于整个类,这些成员成为静态成员 ...
- cookie和session的区别和用法
1. 由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户,这个机制就是Session.典型的场景比如购物车,当你点击下单按钮时,由于HTTP协议无状态,所以 ...
- Java学习第一篇 — 字符串
package StringTest; public class TestString { public static void main(String[] args){ // String str= ...
- java_完数
题目内容: 一个正整数的因子是所有可以整除它的正整数.而一个数如果恰好等于除它本身外的因子之和,这个数就称为完数.例如6=1+2+3(6的因子是1,2,3). 现在,你要写一个程序,读入两个正整数n和 ...
- 【代码笔记】Web-ionic-toggle(切换开关)
一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Ubuntu 16.04.4 LTS + Ambari 2.6.1.5 + HDP 2.6.4.0 安装部署
服务器 主机名 master slave1 slave2 slave3 IP 192.168.1.40 192.168.1.41 192.168.1.42 192.168.1.43 离线包服务器: 1 ...
- loadrunner 脚本开发-定义全局变量
脚本开发-定义全局变量 by:授客 QQ:1033553122 如果参数是全局的,在脚本中的任何一个Action中都可以使用,变量一般是局部的,如果跨Action调用会出现未声明的错误. 打开Scri ...
- 20145215《网络对抗》Exp6 信息搜集与漏洞扫描