在学习如何使用Metasploit时,花一些时间让自己熟悉它的文件系统和库。 在Kali Linux中,Metasploit在metasploit-framework包中提供,并安装在/ usr / share / metasploit-framework目录中,其顶层如下所示。
MSF文件系统以直观的方式布局,并按目录进行组织。 下面简要概述了一些比较重要的目录。
data
data目录包含Metasploit用于存储某些漏洞,字典,镜像等所需二进制文件的可编辑文件。
root@kali:~# ls /usr/share/metasploit-framework/data/
cpuinfo ipwn meterpreter snmp webcam
eicar.com isight.bundle mime.yml sounds wmap
eicar.txt john.conf msfcrawler SqlClrPayload wordlists
emailer_config.yaml lab passivex templates
exploits logos php vncdll.x64.dll
flash_detector markdown_doc post vncdll.x86.dll
documentation
顾名思义,documention目录包含框架的可用文档。
root@kali:~# ls /usr/share/metasploit-framework/documentation/
changelog.Debian.gz CONTRIBUTING.md.gz developers_guide.pdf.gz README.md
CODE_OF_CONDUCT.md copyright modules
lib
lib目录包含了metasploit框架的代码的精华部分
root@kali:~# ls /usr/share/metasploit-framework/lib/
anemone msfenv.rb rbmysql.rb sqlmap
anemone.rb net rex tasks
enumerable.rb postgres rex.rb telephony
metasm postgres_msf.rb robots.rb telephony.rb
metasploit rabal snmp windows_console_color_support.rb
msf rbmysql snmp.rb
modules
您可以在modules目录中找到用于攻击载荷exploit,辅助模块auxiliary和后渗透模块post,payload,编码器和nop生成器的实际MSF模块。
root@kali:~# ls /usr/share/metasploit-framework/modules/
auxiliary encoders exploits nops payloads post
plugins
如图所示,metasploit包括了一些插件,你可以在下面这个目录找到
root@kali:~# ls /usr/share/metasploit-framework/plugins/
aggregator.rb ips_filter.rb openvas.rb sounds.rb
alias.rb komand.rb pcap_log.rb sqlmap.rb
auto_add_route.rb lab.rb request.rb thread.rb
beholder.rb libnotify.rb rssfeed.rb token_adduser.rb
db_credcollect.rb msfd.rb sample.rb token_hunter.rb
db_tracker.rb msgrpc.rb session_notifier.rb wiki.rb
event_tester.rb nessus.rb session_tagger.rb wmap.rb
ffautoregen.rb nexpose.rb socket_logger.rb
scripts
scripts包括metapreter和其他一些脚本
root@kali:~# ls /usr/share/metasploit-framework/scripts/
meterpreter ps resource shell
tools
tools包括各种各样有用的命令行工具
root@kali:~# ls /usr/share/metasploit-framework/tools/
context dev exploit hardware memdump modules password recon
有大量的metasploit库可以帮助我们在执行基本任务运行exploit时写额外的代码,比如http requests或者payload的编码。一些重要的库在下面列出来了。
Rex
·大多数任务的基础库
·处理套接字、协议、文本装换以及其他任务
·SSL,SMB,HTTP,XOR,Base64,Unicode
Msf::Core
·提供“基础的”API
·定义metasploit框架
Msf::Base
·提供友好的API
·提供在框架使用过程中简化的API
通过这节课我们介绍了如何在metasploit中直接使用其他工具。了解这些东西是如何存储以及与metasploit的关系将对你在使用msfconsole和其他与metasploit交互时有帮助