HacKerQWQ的博客空间

metasploit之信息收集学习

Word count: 2kReading time: 7 min
2020/07/23 Share

从《metasploit魔鬼训练营》第三章整理

外围信息搜索

外围信息搜索也叫“公开渠道信息收集”,可以google(OSINT)

通过DNS和IP地址挖掘目标网络信息

  1. whois域名注册信息查询
    可以通过whois查询得到域名所有者、服务商、管理员邮件地址、域名注册日期和过期日期等等

得到的Name Server也可以用于后面的nslookup和dig

  1. nslookup和dig域名查询

nslookup查询(得到的一般是非权威应答)

type=A(对IP地址进行解析)
type=MX(查找邮件转发服务器)
type=CNAME(别名记录)
type=TXT(某条记录的说明)
type=AAAA(指向IPv6的地址记录)
type=NS(域名服务器记录)

dig查询(权威记录)

用法:dig@<DNS服务器><待查询域名>

  1. IP2Location

通常把从IP地址到地理位置的方法叫做IP2Location

例如国外的maxmind

国内的QQ纯真数据库

  1. netcraft资料库

netcraft的searchdns服务可以查询子域名

链接–>(https://searchdns.netcraft.com)

查询65.61.137.117的结果:

还可以使用sitereport查看更详细的信息,比如地理位置,服务器OS,地址等等

链接–>(https://sitereport.netcraft.com/)

  1. IP2Domain反查域名

链接–>(http://www.ip-address.com)

不过现在被封了QWQ

链接–>(http://www.7c.com)

系统维护…

可以用webscan来反查

  1. traceroute进行路由侦查

用搜索引擎进行信息收集

  1. Google Hacking技术

推荐Johnny Long的《Google Hacking for Penertration》

知名数据库GHDB

  1. 搜索目录结构

有时候管理员不谨慎,将网站的目录展示了出来

可以在Google搜索parent directory site:testfire.net

也可以借助Metasploit的brute_dirs、dir_listing、dir_scanner等辅助模块来完成暴力猜解

  1. 检索特定类型的文件

google hacking语法:site:testfire.net filetype:xls

  1. 搜索网站中的E-mail地址

metasploit中就提供了一个aux模块用于搜索email,全称是 search_email-collector

  1. 搜索存在SQL注入点的页面

google hacking: site:testfire.net inurl:login

搜索到testfire.net的注入点

主机探测与端口扫描

活跃主机扫描

  1. ICMP Ping命令
1
ping -c 5 www.dvssc.com
  1. Metasploit的主机发现模块

这些模块位于modules/auxiliary/scanner/discovery中,主要有以下几个,arp_sweep、ipv6_multicast_ping、ipv6_neighbor、ipv6ghbor_router_advertisement、udp_probe、udp_sweep

两个常用模块主要的功能为:

  • arp_sweep使用ARP请求枚举本地局域网络中的所有活跃主机
  • udp_sweep通过发送UDP数据包探查指定主机是否活跃,并发现主机上的UDP服务
  1. 使用nmap进行探测

用法 nmap<扫描选项><扫描目标>

常用选项:

-PU 对开放的UDP端口进行探测以确定存活的主机
-O 对操作系统进行识别
-sV 服务探测
-sS 用SYN扫描
-Pn 不对主机使用Ping命令,假设主机存货
-n 不对主机使用dns解析,用于同一局域网的主机,节省时间
-oX 将扫描结果导出为xml格式,可用于导入metasploit数据库
-v 显示扫描步骤,等的时候有东西看
-p- 扫描所有端口
-p 扫描指定端口
-T4 加快扫描速度,一般用于主机发现
-A 使用服务探测、系统探测、脚本探测和路由跟踪

端口扫描与服务类型探测

  1. Metasploit中的端口扫描器

输入search portscan可以找到端口扫描器

ack:通过ACK扫描读防火墙上没有被屏蔽的端口进行探测
ftpbounce:通过FTP bounce攻击对TCP服务进行枚举
syn:使用TCP SYN标志的方式来判断端口是否开放,准确,但速度慢
xmas:更隐秘的扫描方式,发送FIN、PSH和URG标志

  1. nmap用于扫描端口的参数

-sT:TCP connect扫描,类似上面的tcp扫描模块
-sS:TCP SYN扫描,类似上面的syn扫描模块
-sF/-sX/-sN:这些扫描通过发送一些特殊的标志位以避开设备或软件的检测
-sP:通过ping命令发送数据包
-sU:探测主机上面的UDP端口
-sA:TCP ACK扫描,类似上面的ack扫描模块

服务器扫描与查点

确定开放端口之后,对相应端口上所运行服务的信息进行更深入的挖掘,通常称为服务查点

在Metasploit的Scanner模块中,用于服务扫描和查点的工具通常以[service_name]_version和[service_name]_login命名

  • [service_name]_version可用于遍历网络中包含特定服务的主机,并且进一步确定服务的版本
  • [service_name]_login可用于对特定的服务进行口令探测

例如:http_version可以用于查找网络中的Web服务器,http_login可以用于对需要身份验证的http协议进行口令探测

常见网络服务扫描

  1. Telnet服务扫描

虽然现在已经用更安全的SSH协议替代它,但是由于升级操作系统花费大等原因,部分系统还支持Telnet服务

可以使用telnet_version模块扫描

  1. SSH服务扫描

SSH采用了安全的加密信息传输方式

可以用ssh_version模块扫描

  1. Oracle数据库服务扫描

tnslsnr_version模块扫描

Oracle SQL使用1521端口

  1. 开放代理探测与利用

Metasploit提供了open_proxy模块帮助判断代理服务器是否真实可用

使用代理可以防止攻击发起源被跟踪到

口令猜测与嗅探

  1. SSH服务口令猜测

使用Metasploit中的ssh_login模块

可以输入USERNAME,PASSWORD,也可以载入USER_FILE、PASS_FILE文件进行组合猜测

  1. psnuffle口令嗅探

psnuffle是Metasploit中唯一用于口令嗅探的工具,可以截获常见协议的身份认证过程,并将用户名和口令信息记录下来

最好的进入对方网络的初始访问点之后就开始保持嗅探器的运行,以增加截获口令的可能性

网络漏洞扫描

概念:

  • 黑盒扫描:一般是通过远程识别服务的类型和版本,对服务是否存在漏洞进行判定。
  • 白盒扫描:在具有主机操作权限的情况下进行漏洞扫描,比如说Microsoft的系统补丁

Tips:不要把漏洞扫描工具当做“hacker tools”,因为它会向目标发送大量的数据包,可能会导致目标系统拒绝服务或者被扫描数据包阻塞,比如说AWVS、APPScan

  1. OpenVAS漏洞扫描器


使用教程上网搜

  1. 查找特定服务的漏洞

使用漏洞扫描器存在几个不可避免的问题:

  • 扫描过程过于粗暴
  • 在一些特殊环境具有“杀伤性”
  • 扫描结果存在漏报现象

解决方法:

使用Nmap的脚本扫描:

链接–>nmap脚本

渗透测试信息数据库与共享

Metasploit提供了渗透测试信息数据库以及数据导入接口

  • 提供了db_nmap的命令,能够将扫描结果直接存入数据库中
  • 提供了db_import的命令,能够导入20多种扫描器的扫描结果
  • 提供了MSF RPC服务共享数据,能够和其他小组成员共享Metasploit数据

nmap与渗透测试数据库

1
msf5 > db_nmap -sS -sV -Pn -v -n -p- 192.168.1.20

也可以用下面这个先存为demon.xml格式再转存进metasploit的workspace

1
root@kali:~# nmap -sS -sV -Pn -v -n -p- -oX demon.xml 192.168.1.20

OpenVAS扫描结果导入metasploit

这部分信息需要时上网查

共享渗透渗透测试信息数据库

  • 让多台Metasploit计算机连接同一个网络数据库
  • 使用MSF RPC服务
  1. 使用网络数据库共享


  2. 使用Metasploit RPC服务共享


-U参数是指定用户名 —P参数是指定密码 -a参数是将RPC服务绑定到所有的网络地址

然后在另一台安装了同版本的metasploit的机器上输入armitage并输入账号密码就可以了

MSF不仅可以放共享渗透测试信息数据,同样还能够共享所有的Metasploit模块和payload

CATALOG
  1. 1. 外围信息搜索
    1. 1.1. 通过DNS和IP地址挖掘目标网络信息
    2. 1.2. 用搜索引擎进行信息收集
  2. 2. 主机探测与端口扫描
    1. 2.1. 活跃主机扫描
    2. 2.2. 端口扫描与服务类型探测
  3. 3. 服务器扫描与查点
    1. 3.1. 常见网络服务扫描
    2. 3.2. 口令猜测与嗅探
  4. 4. 网络漏洞扫描
  5. 5. 渗透测试信息数据库与共享
    1. 5.1. nmap与渗透测试数据库
    2. 5.2. OpenVAS扫描结果导入metasploit
    3. 5.3. 共享渗透渗透测试信息数据库