meterpreter跳板机

背景:渗透测试者A拿到了B主机的控制权,但没有拿到ssh密码(不能打ssh隧道)。现需横向移动渗透内网主机C,为了避免动作过大不便直接在B上对C进行渗透,其中C不能出公网。现需让B转发A到C的流量,并最终使C反弹shell至A。

方案:使用meterpreter来“打路由”或者做端口映射两种方案

工作原理:

打路由:在A与B的session中增加一条目的为192.168.1.0/24,下一跳为该sessionID的路由

端口映射:在A本地侦听一个空闲端口,通过A与B的session与C指定端口做映射

操作步骤:

一、打路由:

meterpreter > run autoroute -s 192.168.1.0/24   ====>添加到目标内网路由

meterpreter > run autoroute -p  ===>查看路由是否添加成功

此时使用msf框架内的扫描模块即可扫描192.168.1.2

1、在C中植入反弹木马时应设置lhost为192.168.1.1  ====>重要!!!B上的meterpreter会自动在192.168.1.1开启相应侦听端口,并将收到的流量转发至A

2、此方法的优点是足够灵活,写一条路由就可以到整个网段的全部端口了。缺点是只在MSF框架内有效,即:使用MSF内的工具可以访问到192.168.1.2,使用MSF外的工具就访问不到192.168.1.2了

二、端口映射:

meterpreter > portfwd add -L 100.1.1.1 -l 4444 -r 192.168.1.2 -p 3389

-L 在本地哪个IP上侦听端口

-l 在本地哪个端口上做映射

-r 映射至哪台目标设备

-p 映射至目标设备具体哪个端口

注意:此方式缺点是只能一对一做映射,不够灵活。但优点是基于操作系统层面做的端口映射,即:使用MSF外的工具访问4444也能映射至目标设备的3389

用meterpreter实现跳板机的更多相关文章

  1. 【自动部署】Ansible 怎么通过堡垒机/跳板机 访问目标机器

    Ansible机器的 /root/.ssh/config 配置如下即可:Host 目标机器IP User root IdentityFile=/root/.ssh/xxx_id_rsa ProxyCo ...

  2. navicat使用跳板机连接数据库-ssh

    1. 目标数据库的域名/IP,端口,用户名,密码:如图1 2. 这时候不要点OK!选择SSH这个tab 3. 选中User SSH Tunnel:填写跳板机域名/IP,用户名,密码(注意:端口22不要 ...

  3. Shell实现跳板机,为什么用跳板机

    整理自:http://blog.chinaunix.net/uid-22101889-id-3167454.html 注意:请谨慎使用,到现在为止,使用了,我还没找到改回去的方法. 1.     问题 ...

  4. 跨越跳板机传文件nc

    从线上服务器与本机互传文件 传输方 nc -l 10000 < a.tar 接收方 nc xx.xx.xx.xx 10000 >a.tar 原理: 文件传输方运行nc,指定端口,设置监听文 ...

  5. 在有跳板机的情况下,SecureCRT自动连接到目标服务器

    为了服务器的安全,运维人员经常会要求我们先登录到跳板机,然后再SSH连接到目标服务器.但是这样是很繁琐的,每次在SecureCRT创建一个连接,都需要输入SSH命令,然后输入密码. 下面的方法可以实现 ...

  6. iTerm 使用expect实现自动远程登录,登录跳板机

    #!/usr/bin/expect set timeout 10 spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2] exp ...

  7. CentOS7 开源跳板机(堡垒机) Jumpserver

    开源跳板机(堡垒机)Jumpserver 环境 CentOS 7   x64       关闭 selinux  firewalld jumpserver: 172.24.0.14 testserve ...

  8. 那就用pthon来写个跳板机吧

    1.需求 程序一: 1.后台管理 - 堡垒机上创建用户和密码(堡垒机root封装的类,UserProfile表) - .bashrc /usr/bin/python3 /data/bastion.py ...

  9. jmeter连接配置带跳板机(SSH)的mysql服务器

    jmeter连接配置mysql服务器时,如果数据库服务器没有通过ssh连接,则只需要配置相应的jdbc参数就可以了,即请求域名或ip地址:3306,如果数据库服务器是通过SSH连接的,那需要通过中间远 ...

随机推荐

  1. myeclipse集成maven

    myeclipse集成maven 打开myeclipse---Window----Preferences---Maven4MyEclipse--Installations----Add,如图所示: 这 ...

  2. Tips_发送请求时添加一个随机数参数,让浏览器每次都重新发请求到服务器

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. iis 和 node express 共用80端口 iisnode 全过程

    一.首先下载iisnode.exe https://github.com/tjanczuk/iisnode/wiki/iisnode-releases  链接 安装完毕! 二.打开IIS 7 选中 D ...

  4. Golang实现requests库

    Golang实现requests库 简单的封装下,方便使用,像python的requests库一样. Github地址 Github 支持 GET.POST.PUT.DELETE applicatio ...

  5. 整理SpringMVC

    Spring Web MVC核心架构图: 核心架构图流程如下: 1.首先用户发送请求------->DispatcherServlet(前端控制器),前端控制器收到请求后自己不进行处理,而是委托 ...

  6. 把一下程序中的print()函数改写成

    源代码: #include <iostream> using namespace std; void print( int w ) { ; i <= w ; i++ ) { ; j ...

  7. Edge Intelligence: On-Demand Deep Learning Model Co-Inference with Device-Edge Synergy

    边缘智能:按需深度学习模型和设备边缘协同的共同推理 本文为SIGCOMM 2018 Workshop (Mobile Edge Communications, MECOMM)论文. 笔者翻译了该论文. ...

  8. .Net深入实战系列—JSON序列化那点事儿

    序 当前主流的序列化JSON字符串主要有两种方式:JavaScriptSerializer及Json.net(Nuget标识:Newtonsoft.Json).JavaScriptSerializer ...

  9. VSCode调试Flutter的问题解决

    错误:Target of URI doesn't exist: package:fultter/material.dart 原因:flutter版本不匹配.flutter升级到了最新版本,而项目引用的 ...

  10. [Swift]LeetCode665. 非递减数列 | Non-decreasing Array

    Given an array with n integers, your task is to check if it could become non-decreasing by modifying ...