一文打尽端口复用 VS Haproxy端口复用

访客4年前关于黑客接单1102

本文作者:Spark(Ms08067内网安全小组成员)

一、概述

Haproxy是一个使用c语言开发的高性能负载均衡 *** 软件,提供tcp和http的应用程序 *** ,免费、快速且可靠。
类似frp,使用一个配置文件+一个server就可以运行。
优点:

大型业务领域应用广泛

支持四层 *** (传输层)以及七层 *** (应用层)

支持acl(访问控制列表),可灵活配置路由

windows使用cygwin编译后可运行(可跨平台)

访问控制列表(Access Control Lists,ACL)是应用在路由器接口的指令列表,这些指令列表用来告诉路由器哪些数据包可以接受,哪些数据包需要拒绝。

二、配置

官方配置手册:https://cbonte.github.io/haproxy-dconv/2.2/configuration.html
配置文件由全局配置和 *** 配置组成:
全局配置(global):定义haproxy进程管理安全及性能相关的参数

*** 设定(proxies):

defaults:为其他配置段提供默认参数,默认配置参数可由下一个"defaults"重新设定

frontend:定义一系列监听的套接字,这些套接字可接受客户端请求并与之建立连接

backend:定义"后端"服务器,前端 *** 服务器将会把哭护短的请求调度至这些服务器

listen:定义监听的套接字和后端的服务器,类似于将frontend和backend段放在一起

示例:

重点关注frontend和backend。
Frontend中需要编写acl规则,配置转发。比如,当http流量来的时候,转发给web服务;当rdp流量来的时候,转发给rdp服务。
Backend中需要编写具体的操作,就是转达到哪个目标的哪个端口。

三、思路

(1) 思路一(通用)

编写acl规则,在四层(传输层)进行负载,根据协议类型进行分发,例如:遇到http流量发送给http服务,遇到rdp发送给rdp服务等。

(2) 思路二

编写acl规则,在七层(应用层)进行负载,判断应用类型进行分发,例如,遇到http分发到http服务,否则发送到xxx服务。

四、步骤

以思路一为例:

通过wireshark捕获tpkt(应用层数据传输协议)信息

编写acl规则路由进行流量分发

添加后端server

原始接口接管

完成

4.1 捕获tpkt

关于tpkt可百度或查看参考链接
三次握手后,开始应用层数据传输。
使用wireshark抓包:
ssh协议:
图片.png

前三个包为三次握手,第四个包的起始三位,便是我们需要的tpkt,例如ssh为535348。
rdp协议:030000

图片.png速查:

协议TPKT
SSH535348
RDP030000
HTTP(GET)474554
HTTP(POS)504f53
HTTP(PUT)505554
HTTP(DEL)44454c
HTTP(OPT)4f5054
HTTP(HEA)484541
HTTP(CON)434f4e
HTTP(TRA)545241
HTTPS160301

4.2 编写acl规则

该配置文件的功能是监听8888端口,将http流量(速查表中http协议的8种tpkt)转发到本地的80上,将ssh流量转发到本地的22端口上,将rdp流量转发到另一主机的3389上。

五、实验

Target1:Ubuntu 16.04 x64

IP:192.168.213.128

开启22端口、80端口

图片.png

Target2:Win7 x64

IP:192.168.213.129

开启3389端口

图片.png启动haproxy,-f 指定配置文件,开启8888端口表示启动成功。-d:调试模式,可不加。

图片.png

HTTP协议:访问靶机的8888端口,流量被haproxy分发至本机的80。

图片.png

RDP协议:访问靶机的8888端口,流量被haproxy分发至192.168.213.129的3389。

图片.pngSSH协议:访问靶机的8888端口,流量被haproxy分发至本机的22。

图片.png

haproxy日志:

图片.png

六、端口重定向

为了不影响正常的80端口的访问,将过来的80端口流量转发到8888端口上。这样用户正常访问80端口时,流量会先转发到8888端口上,再由haproxy转发回80端口。

  • Linux:iptables(不需要重启服务)

访问80可以正常访问:

图片.png

Haproxy日志有记录,说明流量由80先到8888,再回到80。

图片.png

  • Windows:netsh(需要重启web服务)

注意:如果在windows下启用端口重定向,需要在端口启动前添加netsh端口转发规则。

七、参考链接

https://www.cnblogs.com/readygood/p/9776403.html

https://blog.csdn.net/qq_28710983/article/details/82194404

https://wenku.baidu.com/view/9f509844e2bd960591c67723.html?fr=search-1-wk_seaincome

MS08067实验室官网:www.ms08067.com

公众号:" Ms08067安全实验室"

Ms08067安全实验室目前开放知识星球: WEB安全攻防,内网安全攻防,Python安全攻防,KALI Linux安全攻防,二进制逆向入门

最后期待各位小伙伴的加入!

相关文章

淘宝有黑客接单记号(淘宝上有黑客吗?)

若是妹纸对这类顶势演说提示搞清楚软弱无能,没有关系,DEF CON CHINA 1.0 上另有对新手新奇友善的新手入门流动性:Workshop。请一定跟妹纸注解,这一便是事儿坊,跟你平时去的手工艺品小...

查看女朋友微信聊天已删好记录

今日(11月14日),2020年“科学探索奖”颁奖典礼在北京钓鱼台国宾馆隆重举行,来自九大领域的50位获奖人依次从饶毅、潘建伟、邬贺铨、程泰宁等发起人手中接过奖杯,继续他们探索基础科学和前沿技术“无人...

黑客绳索英雄(黑客绳索英雄游戏下载)

黑客绳索英雄(黑客绳索英雄游戏下载)

本文目录一览: 1、火柴人之绳索英雄一共有多少个任务 2、火柴人绳索英雄怎么召唤载具? 3、火柴人绳索英雄2隐藏地点 火柴人之绳索英雄一共有多少个任务 火柴人之绳索英雄一共有100多个任务。...

房产知识:大连湾二手房子的产权证怎么办

相信现在有很多的朋友们对于大连湾二手房子的产权证怎么办理流程是怎么样的呢都想要了解吧,那么今天小编就来给大家针对大连湾二手房子的产权证怎么办理流程是怎么样的呢进行一个介绍吧,希望小编介绍的内容...

顶级SEO: 一个专业SEO人员的日常!

顶级SEO: 一个专业SEO人员的日常!

对付顶级搜索引擎优化,它凡是在强调计策的同时也强调存眷战术。每个专业的搜索引擎优化人员在拟定优化计策时城市有本身奇特的奥秘,这是值得进修的。 那么,顶级SEO:一个专业SEO人员都存眷什么?   对...

找黑客帮我手机号定位-黑客会进入微信群(黑客进入微信号)

找黑客帮我手机号定位-黑客会进入微信群(黑客进入微信号)

找黑客帮我手机号定位相关问题 学黑客技术要学什么相关问题 绿林黑客意思是什么 苹果手机可以安装黑客软件吗(苹果手机可以截长图吗)...