Metasploit 包含了n多种exploit和payload每一种都说一遍没有必要这里说说使用Metasploit的思路。 先说一下Metasploit的使用基本步骤: 先对目标进行扫描,根据扫描出来的信息查找可利用的exploits,设置参数,然后***。 Metasploit 几乎包含了***测试中所有用到的工具,很全面,每一种工具都有其对应的使用环境,就是说针对性比较强。***测试可以分为七个阶段(Metasploit指南上说的),本文更具这七个阶段来说说每个阶段中可以Metasploit的哪些功能,有些阶段用不到Metasploit。这七个阶段分别是前期交互阶段,情报搜集阶段,威胁建模阶段,漏洞分析阶段,******阶段,后***阶段,书写***报告阶段。 第一个阶段:前期交互阶段,这一阶段主要是和客户进行讨论,来确定***测试的目的和范围,不涉及到Metasploit,就不多说了。 第二个阶段:情报搜集阶段,这一阶段主要是尽可能多的收集目标的各种信息。这里主要用到Msf 里auxiliary里边的modules,这里的modules都是些***前期的辅助工具。一般的收集信息可以使用whois(这个是linux自带的),db_nmap(这个是Msf的一个插件),如果要使用到其他的一些收集信息的方法,比如使用syn(一种不建立头层皮连接的扫描)扫描 ,可以在msfconsole里边search syn 然后根据返回结果来确定使用哪个模块。search syn 返回结果为: 可以看出前几个是辅助模块中包含syn信息的,后几个是***模块,其中 auxiliary/scanner/portscan/syn 这一条就是要用到的syn 扫描moduls。使用方法: 1、use auxiliary/scanner/portscan/syn 选中模块 2、show options 查看该模块如果使用,需要设置哪些信息。 3、set XXX xxx (设置里边的变量,具体的xxx 代表什么,自己试过了就知道,一般是要设置 主机端口什么的)这里设置参数有可能不止一个。 4、run 执行该模块 5、查看返回结果 第三个阶段:威胁建模阶段:主要是根据上一步收集来的信息来确定可能存在的安全漏洞与与目标缺陷,这一步需要上一步结合经验来判断。 第四个阶段:漏洞分析阶段:主要分类漏洞存在情况和它可能早成的危害。 第五各阶段:******阶段:根据前边收集和分析出来的信息进行******,主要使用的是exploits 里边的模块。使用使用步骤: 1、更具前边找到的漏洞信息查找可以利用的exploits 。在msfconsole中输入search sth——about——vulns,获取和漏洞相关的 exploits。如下面所示: 假设漏洞信息包含smb 则 可以看到搜出了不少和smb先关的exploits :使用方法 1、use exploits/windows/smb/xxxxxxx 2、show payloads 查看可用payloads 3、set PAYLOAD xxx 设置自己想用的payload 4、show options 查看需要设置哪些参数 5、set xxx xxxxx 设置参数 有可能不止一个 4、exploit 如果***成功后,获得一个session,可以使用Msf 的meterpreter这个模块来进一步的提权,meterpreter这个模块网上有详细的用法这里就不啰嗦了。要说的是post 里边的模块的用法,当生成了一个meterpreter交互shell时可以使用post里边提供的模块来进行各种提权获取系统信息操作。使用方法: meterpreter> run post/xxx/xxx/xxxxx 注意这里可以结合tab建来提示路径和名称也可以使用show post 来查看有哪些可用的post模块。 第六个阶段:后***阶段:获取各种有价值的信息,下载文件,完成***目标。 第七个阶段:书写报个阶段:这个就不细说了。 总结 :metasploit总的利用步骤是: 1、扫描 db_nmap 或者使用 auxiliary里边的modules 2、根据扫描出来的漏洞信息搜索可以利用exploit: search xxx 3、选择合适的搜出类的exploit。设置参数,运行。
msf > search syn Matching Modules ================ Name Disclosure Date Rank Description ---- --------------- ---- ----------- auxiliary/dos/tcp/synflood normal TCP SYN Flooder auxiliary/scanner/ip/ipidseq normal IPID Sequence Scanner auxiliary/scanner/portscan/syn normal TCP SYN Port Scanner auxiliary/scanner/rogue/rogue_send normal Rogue Gateway Detection: Sender exploit/multi/http/vbseo_proc_deutf 2012-01-23 excellent vBSEO <= 3.6.0 proc_deutf() Remote PHP Code Injection exploit/windows/ftp/aasync_list_reply 2010-10-12 good AASync v2.2.1.0 (Win32) Stack Buffer Overflow (LIST) exploit/windows/ftp/ftpsynch_list_reply 2010-10-12 good FTP Synchronizer Professional 4.0.73.274 Stack Buffer Overflow exploit/windows/misc/ms07_064_sami 2007-12-11 normal Microsoft DirectX DirectShow SAMI Buffer Overflow exploit/windows/tftp/attftp_long_filename 2006-11-27 average Allied Telesyn TFTP Server 1.9 Long Filename Overflow post/windows/gather/apple_ios_backup normal Windows Gather Apple iOS MobileSync Backup File Collection
msf > search smb Matching Modules ================ Name Disclosure Date Rank Description ---- --------------- ---- ----------- auxiliary/admin/oracle/ora_ntlm_stealer 2009-04-07 normal Oracle SMB Relay Code Execution auxiliary/dos/windows/smb/ms11_019_electbowser manual Microsoft Windows Browser Pool DoS auxiliary/dos/windows/smb/rras_vls_null_deref 2006-06-14 normal Microsoft RRAS InterfaceAdjustVLSPointers NULL Dereference auxiliary/dos/windows/smb/vista_negotiate_stop normal Microsoft Vista SP0 SMB Negotiate Protocol DoS auxiliary/fuzzers/smb/smb2_negotiate_corrupt normal SMB Negotiate SMB2 Dialect Corruption exploit/windows/smb/ms04_007_killbill 2004-02-10 low Microsoft ASN.1 Library Bitstring Heap Overflow exploit/windows/smb/ms04_011_lsass 2004-04-13 good Microsoft LSASS Service DsRolerUpgradeDownlevelServer Overflow exploit/windows/smb/ms04_031_netdde 2004-10-12 good Microsoft NetDDE Service Overflow exploit/windows/smb/ms05_039_pnp 2005-08-09 good Microsoft Plug and Play Service Overflow exploit/windows/smb/ms06_025_rasmans_reg 2006-06-13 good Microsoft RRAS Service RASMAN Registry Overflow exploit/windows/smb/ms06_025_rras 2006-06-13 average Microsoft RRAS Service Overflow exploit/windows/smb/ms06_040_netapi 2006-08-08 good Microsoft Server Service NetpwPathCanonicalize Overflow