概述
0x01 前言
端口复用是指不同的应用程序使用相同端口进行通讯。内网渗透中,搭建隧道时,服务器仅允许指定的端口对外开放。利用端口复用可以将3389或22等端口转发到如80端口上,以便外部连接。
0x02 Linux端口复用
一、iptables实现端口复用
iptables只是Linux防火墙的管理工具而已。真正实现防火墙功能的是netfilter,
它是Linux内核中实现包过滤的内部结构。
二、数据通过防火墙流程
1、 链
链是一些按顺序排列的规则的列表。
PREROUTING链——对数据包作路由选择前应用此链中的规则(所有的数据包进来的时候都先由这个链处理)
INPUT链——进来的数据包应用此规则链中的策略
OUTPUT链——外出的数据包应用此规则链中的策略
FORWARD链——转发数据包时应用此规则链中的策略
POSTROUTING链——对数据包作路由选择后应用此链中的规则(所有的数据包出来的时候都先由这个链处理)
2、 表
表由一组预先定义的链组成。
filter表——用于存放所有与防火墙相关操作的默认表。通常用于过滤数据包。
nat表——用于网络地址转换。
mangle表——用于处理数据包。
raw表——用于配置数据包,raw 中的数据包不会被系统跟踪。
3、 链和表的关系及顺序
PREROUTING: raw -> mangle -> nat
INPUT: mangle -> filter
FORWARD: mangle -> filter
OUTPUT: raw -> mangle -> nat -> filter
POSTROUTING: mangle -> nat
4、 表和链的关系
实际使用中是从表作为操作入口:
raw 表:PREROUTING,OUTPUT
mangle表:PREROUTING,INPUT,
FORWARD,OUTPUT,POSTROUTING
nat 表:PREROUTING,OUTPUT,
POSTROUTING
filter 表:INPUT,FORWARD,OUTPUT
5、添加规则
iptables ‐t 表名 <‐A/I/D/R> 规则链名 [规则号] <‐i/o 网卡名> ‐p 协议名 <‐s 源ip、源子网> ‐‐sport 源端口 <‐d 目标ip/目标子网> ‐‐dport 目标端口 ‐j 动作
0x03 实验
目标:ubuntu
ip: 192.168.0.103
开启22端口、开启web服务8000端口
本机:kali
ip: 192.168.0.105
⽅法⼀:根据源地址做端⼝复⽤
iptables -t nat -A PREROUTING -p tcp -s 192.168.0.105 --dport 8000 -j REDIRECT --to-port 22
这条命令的作⽤是将来⾃
192.168.0.105的访问8000端⼝的流量都转发到22端⼝。
如果这样设置后,8000端口原本的服务就无法访问了,如果还需要访问原本的服务,一定要慎重。
⽅法⼆:根据源地址源端⼝做端⼝复⽤
iptables -t nat -A PREROUTING -p tcp -s 192.168.0.105 --sport 5555 --dport 8000 -j REDIRECT --to-port 22
这条命令是根据源地址源端⼝做端⼝复⽤,只有来⾃192.168.0.105主机5555端⼝访问8000端⼝的流量会被转给22端⼝。
然后本机先⽤socat将本地4444端⼝的流量以源端⼝5555访问192.168.0.103的8000端口,然后SSH本地的4444端⼝即可。
nohup socat tcp-listen:4444,fork,reuseaddr tcp:192.168.0.103:8000,sourceport=5555,reuseaddr & ssh -p 4444 root@127.0.0.1
但是这样做不⽀持多连接,因为本地的 5555 端⼝已经被占⽤。
0x04总结
在做渗透测试的过程中,我们经常会遇到这种问题,只允许某个端⼝的流量进⼊,本文只写了iptables的简单用法,还有很多方式需要慢慢学习。
0x05 参考
-
https://www.jianshu.com/p/12a24a95fe2c
-
https://cloud.tencent.com/developer/article/1759955
声明
以上内容,均为文章作者原创,由于传播,利用此文所提供的信息而造成的任何直接或间接的后果和损失,均由使用者本人负责,长白山攻防实验室以及文章作者不承担任何责任。
长白山攻防实验室拥有该文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的副本,包括版权声明等全部内容。声明长白山攻防实验室允许,不得任意修改或增减此文章内容,不得以任何方式将其用于商业目的。
最后
以上就是爱撒娇云朵为你收集整理的关于苛刻网络做Linux端口复用的那件事的全部内容,希望文章能够帮你解决关于苛刻网络做Linux端口复用的那件事所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复