Metasploit学习笔记之——情报搜集

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/youkawa/article/details/39696585
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解析服务器保存在Cache中的非权威解答,dig则可以从该域名的官方DNS服务器上查询到精确的权威解答
(3)IP2Location地理位置查询
        主要目的是由IP地址查询地理位置,此类方法称为IP2Location。一些网站提供了这样的服务,如GeoIP:http://www.maxmind.com。在找出此IP对应的经纬度之后可以用Google Maps进一步查询其地址。对于国内IP地址查询,可以使用QQ纯真数据库:http://www.cz88.net
(4)利用netcraft网站提供的信息查询服务.
        用于查询子站点子域名等信息,对了解网站总体架构、业务应用等非常有帮助。http://searchdns.netcraft.com/,此外还可以利用此网站获取更多的西悉尼,如地理位置、域名服务器的地址、服务器操作系统类型、服务器运行状况等,在浏览器中输入:http://toolbar.netcraft.com/site_report?url=http://www.baidu.com
(5)IP2Domain反查域名
        在实际的渗透目标网站可能是一台虚拟主机,及一台服务器上面可能运行多个虚拟机,这些虚拟主机可能有不同的域名,但通常公用一个IP地址。如果知道有哪些网站公用这台服务器,就有可能通过此台服务器上其他网站的漏洞获取服务器控制权限,进而迂回获取渗透目标的权限,这种攻击技术称为”旁注“。可以使用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文件可能会包含网站的配置信息,如数据库用户名/口令等。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主机探测与端口扫描
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  扫描线程数越高扫描速度越快,但也更容易被发现,通常设置较小的值有利于隐藏扫描行为。
          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扫描,适合内网,外网容易被防火墙过滤掉)
          nmap -Pn -sn 192.168.1.0/24(UDP包探测,适合Internet环境,功能类似于metasploit的udp_sweep模块)

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

            (5)端口扫描与服务类型探测
                    使用Metasploit中的端口扫描模块:
                    msf > search portscan,结果如下:
                               auxiliary/scanner/portscan/ack 
                               auxiliary/scanner/portscan/ftpbounce
                               auxiliary/scanner/portscan/syn
                               auxiliary/scanner/portscan/tcp
                               auxiliary/scanner/portscan/xmas
                    一般使用syn端口扫描器,因为其速度快,结果准确且不容易被对方察觉。使用方法:
                    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的端口扫描功能
                        msf > nmap -sS -Pn 192.168.1.1
                        对于其扫描结果的端口状态说明如下:
                        open (开放)、closed(关闭)、filtered(被过滤)、unfiltered(未过滤)、open|filtered(开放或被过滤)、                        closed|filtered(关闭或被过滤)、

                      使用nmap探测更详细的服务信息
                      msf > nmap -sV -Pn 192.168.1.116,相比于上面的nmap端口扫描,能获取更多的关于响应的端口开放了哪些服务的详细信息

1.3服务扫描与查点
          确定开放的端口及相应服务的详细信息之后,需要对相应的服务信息进行更深入的挖掘,通常称为“服务查点”。在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   
                            ... ...
                 开放代理探测与利用:
                           使用代理服务器能避免被对方的入侵检测系统跟踪,进而隐藏自己的身份,但公开渠道获取的代理服务器安全性无法保证,进行重要私密通信室需谨慎。更好的方法是利用开放或者自己搭建的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渗透测试魔鬼训练营》

猜你喜欢

转载自blog.csdn.net/youkawa/article/details/39696585