1.情报搜集

1.1外围信息搜索

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

(1)whois域名注冊信息查询(BT5、kali专有):root@kali:~# whois testfire.net  s

(2)nslookup与dig域名查询(查询域名相应的IP地址):msf > nslookup

> set type=A

> testfire.net

msf > dig

注:nslookup仅仅能得到DNS解析server保存在Cache中的非权威解答,dig则能够从该域名的官方DNSserver上查询到精确的权威解答

(3)IP2Location地理位置查询

主要目的是由IP地址查询地理位置。此类方法称为IP2Location。

一些站点提供了这种服务,如GeoIP:http://www.maxmind.com。

在找出此IP相应的经纬度之后能够用Google Maps进一步查询其地址。

对于国内IP地址查询。能够使用QQ纯真数据库:http://www.cz88.net

(4)利用netcraft站点提供的信息查询服务.

用于查询子站点子域名等信息,对了解站点整体架构、业务应用等很有帮助。

http://searchdns.netcraft.com/,此外还能够利用此站点获取很多其它的西悉尼,如地理位置、域名server的地址、server操作系统类型、server执行状况等,在浏览器中输入:http://toolbar.netcraft.com/site_report?url=http://www.baidu.com

(5)IP2Domain反查域名

        在实际的渗透目标站点可能是一台虚拟主机,及一台server上面可能执行多个虚拟机。这些虚拟主机可能有不同的域名,但通常公用一个IP地址。假设知道有哪些站点公用这台server,就有可能通过此台server上其它站点的漏洞获取server控制权限。进而迂回获取渗透目标的权限,这样的攻击技术称为”旁注“。能够使用http://www.ip-address.com/reverse_ip/查询。

国内可使用http://www.7c.com/

1.1.2通过搜索引擎进行信息搜集

(1)Google Hacking技术

GHDB(Google Hacking DataBase, Google黑客数据库)。包括了大量使用Google从事渗透或者黑客活动所用的搜索字符串,http://www.exploit-db.com/google-dorks

另外还有SiteDigger和Search Diggity等自己主动化搜索工具,但有些须要收费。

(2)搜索站点的文件夹结构

Google中输入parent directory site:testfire.net,来查询相关站点的子文件夹,inc文件可能会包括站点的配置信息,如数据库username/口令等。

bak文件一般是一些文本编辑器在编辑源码后留下的备份文件,txt或sql文件一般包括站点上执行的SQL脚本,可能会透露类似数据库结构等信息。

类似的功能能够借助metasploit中的brute_dirs、dir_listing、dir_scanner等辅助模块来完毕:

msf > use auxiliary/scanner/http/dir_scanner

 (3) 搜索特定类型的文件

            site:testfire.net filetype:xls

            (4)搜索站点中的E-mail地址

              msf > use auxiliary/gather/search_email_collector

(5)搜索存在SQL注入点的页面

site:testfire.net inurl:login

简单的绕过登陆验证的方法:Username: admin 'OR'1   password: test 'OR'1

               



1.2主机探測与port扫描

1.2.1活跃主机扫描

(1)ICMP Ping命令:root@kali:~# ping -c 5 www.baidu.com
(2)metasploit的主机发现模块
        arp_sweep使用ARP请求枚举本地居于网络中的全部活跃主机:
                     use auxiliary/scanner/discovery/arp_sweep
                     show options
                     set RHOST 192.168.1.0/24
                     set THREADS 50  扫描线程数越高扫描速度越快,但也更easy被发现,通常设置较小的值有利于隐藏扫描行为。

          udp_sweep通过发送UDP数据包探查指定主机是否活跃,并发现主机上的UDP服务:
                      use auxiliary/scanner/discovery/udp_sweep
          此外,还有ipv6_multicast_ping、iv6_neighbor、ipv6_neighbor_router-advertisement、udp_prob等模块
(3)使用Nmap进行主机探測
          nmap -sn 192.168.1.0/24(ICMP包探測,Ping扫描,适合内网,外网easy被防火墙过滤掉)
          nmap -Pn -sn 192.168.1.0/24(UDP包探測,适合Internet环境。功能类似于metasploit的udp_sweep模块)

          (4)操作系统辨识
                    操作系统辨识能更正主机发现或主机探測中存在的误报情况。
                    nmap -O 192.168.1.1

           (5)port扫描与服务类型探測
                    使用Metasploit中的port扫描模块:
msf > search portscan,结果例如以下:

auxiliary/scanner/portscan/ack

auxiliary/scanner/portscan/ftpbounce

auxiliary/scanner/portscan/syn

auxiliary/scanner/portscan/tcp

auxiliary/scanner/portscan/xmas

一般使用synport扫描器。由于其速度快,结果准确且不easy被对方察觉。用法:

msf > use auxiliary/scanner/portscan/syn

msf    auxiliary(syn) > set RHOSTS 192.168.1.1

msf    auxiliary(syn) > set THREADS 20

msf    auxiliary(syn) > run



                     Nmap的port扫描功能
                        msf > nmap -sS -Pn 192.168.1.1

对于其扫描结果的port状态说明例如以下:

                        open (开放)、closed(关闭)、filtered(被过滤)、unfiltered(未过滤)、open|filtered(开放或被过滤)、                        closed|filtered(关闭或被过滤)、

                     使用nmap探測更具体的服务信息
                      msf > nmap -sV -Pn 192.168.1.116,相比于上面的nmapport扫描,能获取很多其它的关于响应的port开放了哪些服务的具体信息


1.3服务扫描与查点

确定开放的port及对应服务的具体信息之后。须要对对应的服务信息进行更深入的挖掘,通常称为“服务查点”。在metasploit的scanner模块中有对应的服务扫描和查点工作:

[service_name] _version 可用于遍历网络中包括了某种服务的主机,并进一步确定服务的版本号。

[service_name] _login可对某种服务进行口令探測攻击。详细信息可在msf终端中输入search name:_version进行查询。会得到诸如一下的结果:

auxiliary/fuzzers/ssh/ssh_version_15

...

(1)常见的网络服务扫描

telnet服务扫描:

msf > use auxiliary/scanner/telnet/telnet_version

msf > show options

... ...

SSH服务扫描:

msf > use auxiliary/scanner/ssh/ssh_version

msf > show options

... ...

 Microsoft SQL Server、Oracle数据库服务查点:

                           msf > use auxiliary/scanner/mssql_ping/tnslsnr_version

msf > show options

... ...

msf > use auxiliary/scanner/oracle/tnslsnr_version

msf > show options

... ...

开放代理探測与利用:

使用代理server能避免被对方的入侵检測系统跟踪,进而隐藏自己的身份,但公开渠道获取的代理server安全性无法保证,进行重要私密通信室需慎重。更好的方法是利用开放或者自己搭建的VPN服务。能够从公开渠道搜集到一些免费的VPN服务。也能够在已控制的主机上如果OpenVPN服务。

msf > use auxiliary/scanner/http/open_proxy

msf > show options

... ...

(2)口令猜解与嗅探

SSH服务口令推測(此模块须要自己设置或者导入USERNAME或者PASS_FILE文件作为推測的根据)

msf auxiliary(ssh_version) > use auxiliary/scanner/ssh/ssh_login

msf > show options

... ...

psnuffle口令嗅探

                             msf > use auxiliary/sniffer/psnuffle

msf > show options

... ...

1.4网络漏洞扫描

漏洞扫描原理与漏洞扫描器

OpenVAS漏洞扫描器

配置OpenVAS

使用GSA

在Metasploit内部使用OpenVAS(用msf终端控制OpenVAS)

查找特定服务漏洞(利用Nmap查找特定漏洞)

1.5渗透測试信息数据库与共享

參考资料:诸葛建伟《Metasploit渗透測试魔鬼训练营》

Metasploit学习笔记之——情报搜集的更多相关文章

  1. Metasploit学习笔记——情报搜集技术(只记录与metasploit有关的)

    1.外围信息搜集 1.1whois域名注册信息查询 示例代码如下 msf > whois testfire.net 1.2网站的目录结构 示例代码如下 msf > use auxiliar ...

  2. metasploit 学习笔记-VULNERABILITY SCANNING

    使用漏洞扫描器会在网络上产生大量流量,因此如果你不希望被发现踪迹时,不要使用漏洞扫描器。 The Basic Vulnerability Scan 漏洞扫描器的质量很大程度上取决于它自带的漏洞特征库。 ...

  3. Metasploit学习笔记(博主推荐)

    不多说,直接上干货! 连接后台的数据库,当然不是必须品. 连接数据库的好处:1.可以攻击和扫描的结果,保存起来      2.将一些搜索结果做个缓存 默认数据库是postgresql. 同时要注意的是 ...

  4. Metasploit学习笔记

    原创博客,转载请注出处! 各位看官可参看——Metasploit实验操作 1.打开msf        msfconsole2.帮助选项:    msfconsole -h        显示在msf ...

  5. Metasploit学习笔记(一) Samba服务 usermap_script安全漏洞相关信息

    一.Samba介绍 Samba是linux和unix系统上实现smb协议的一个免费软件,由客户机和服务器构成.SMB是一种在局域网上实现共享文件和打印机的协议.存在一个服务器,客户机通过该协议可以服务 ...

  6. Metasploit学习笔记——强大的Meterpreter

    1. Meterpreter命令详解 1.1基本命令 使用Adobe阅读器渗透攻击实战案例打开的Meterpreter会话实验,靶机是WinXP.由于所有命令与书中显示一致,截图将书中命令记录下来. ...

  7. Metasploit学习笔记——社会工程学

    1.社会工程学攻击案例——伪装木马 Linux命令终端输入命令msfvenom -l payloads用来列出攻击载荷,grep命令用来查询所需要的攻击载荷,条件是windows系统.要有回连至监听主 ...

  8. Metasploit学习笔记——客户端渗透攻击

    1.浏览器渗透攻击实例——MS11-050安全漏洞 示例代码如下 msf > use windows/browser/ms11_050_mshtml_cobjectelement msf exp ...

  9. Metasploit学习笔记——网络服务渗透攻击

    1.内存攻防技术 1.1缓冲区溢出漏洞机理 1.2栈溢出利用机理 1.3缓冲区溢出利用的限制条件 2.网络服务渗透攻击面 3. Windows服务渗透攻击实战案例——MS08-067安全漏洞 示例代码 ...

随机推荐

  1. 【04】Math图解

    [04]Math知识图    

  2. IOS 自动布局-UIStackPanel和UIGridPanel(三)

    在这一篇了我将继续讲解UIGridPanel. 在iphone的app里面可以经常看到一些九宫格布局的应用,做过html开发的对这类布局应该是很熟悉的.在IOS中要实现这样的布局方法还是蛮多的,但是我 ...

  3. selenium之定位以及切换frame

    总有人看不明白,以防万一,先在开头大写加粗说明一下: frameset不用切,frame需层层切! 很多人在用selenium定位页面元素的时候会遇到定位不到的问题,明明元素就在那儿,用firebug ...

  4. iOS WKWebView

    Webkit 是 iOS 8.0 后提供的新的框架,组件WKWebView比较UIWebView 速度更快.占用内存更少了,可支持性更多 WKWebView可通过KVO监听属性 title.estim ...

  5. 九度oj 题目1151:位操作练习

    题目描述: 给出两个不大于65535的非负整数,判断其中一个的16位二进制表示形式,是否能由另一个的16位二进制表示形式经过循环左移若干位而得到. 循环左移和普通左移的区别在于:最左边的那一位经过循环 ...

  6. 九度oj 题目1335:闯迷宫

    题目描述: sun所在学校每年都要举行电脑节,今年电脑节有一个新的趣味比赛项目叫做闯迷宫.sun的室友在帮电脑节设计迷宫,所以室友就请sun帮忙计算下走出迷宫的最少步数. 知道了最少步数就可以辅助控制 ...

  7. 使用ANT将Android打包成Jar包

    本文主要实现使用ANT,将Android项目打包成jar,为方便其他项目使用. ANT可以去官网下载(http://ant.apache.org/) 先介绍打包的步骤,打包脚本下方贴出 步骤: 1,将 ...

  8. 【luogu】P1772物流运输(最短路+DP)

    题目链接 对于本题我们设ext[i][j]计算第i个码头在前j天总共有几天不能用(其实就一前缀和),设dis[i][j]是从第i天到第j天不变运输路线的最短路径,设f[i]是前i天运输货物的最小花费. ...

  9. poj 1269 直线间的关系

    Intersecting Lines Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 9360   Accepted: 421 ...

  10. 升级完Android Studio3.2后,打包release出现的错误

    升级完Android Studio2.3后,打包release出现的错误 Error:Execution failed for task ':qq:lintVitalRelease'.> Lin ...