防火墙ALG技术之FTP协议穿墙术

admin 2021年6月15日00:00:50评论393 views字数 4065阅读13分33秒阅读模式

防火墙ALG技术之FTP协议穿墙术

经过上一篇《防火墙ALG技术之安全策略的介绍,相信各位看官已经对FTP协议有了充分的了解,并且对该类动态端口协议穿越防火墙时的注意事项也是驾轻就熟。本篇作为续集篇,将继续以图文形式为大家讲解上一回合遗留的两个问题:FTP协议如何穿越SNATFTP协议如何穿越DNAT


FTP协议主动模式穿越SNAT


主动模式穿越SNAT主要用于FTP服务器部署在公网,客户端需要通过SNAT转换访问服务器。如图1-1所示,描述了FTP主动模式穿越SNAT时的工作流程,此时需要借助ALG技术才可以完成穿越防火墙。


防火墙ALG技术之FTP协议穿墙术
图1-1 FTP主动模式穿越SNAT流程图
 

防火墙设备上配置了私网地址192.168.12.2到公网地址106.120.22.2/FTP服务的映射,实现IP地址的转换,以支持私网客户端对公网服务器的访问。组网中,若没有ALG对报文载荷的处理(图1-1中红色字体部分内容的变化),私网客户端发送的PORT报文到达公网服务器端后,服务器无法根据私网地址进行路由,也就无法正常地建立数据连接,从而导致私网客户端访问公网FTP服务器失败。如图1-2-(a)和图1-2-(b)所示,整个通信过程包括以下几个阶段:


  • 私网客户端与公网服务器之间TCP的三次握手建立控制连接;

  • 私网客户端发送PORT命令,携带私网客户端指定的用于数据连接的IP和PORT信息;

  • PORT命令到达防火墙时,报文载荷中的私网IP(192.168.12.2)和PORT(Y=31272=122*256+40)会被转换成为公网IP(106.120.22.2)和PORT(Y'=31272=122*256+40);

  • 公网服务器收到PORT命令后解析其内容,并主动向私网客户端发送数据连接(源IP-106.120.12.2、目的IP-106.120.22.2、源端口-20、目的端口-Y'=31272),经防火墙NAT转换后(源IP-106.120.12.2、目的IP-192.168.12.2、源端口-20、目的端口Y=31272)发送至公网服务器,从而实现私网客户端访问公网服务器。


防火墙ALG技术之FTP协议穿墙术
图1-2-(a) FTP主动模式穿越SNAT-Client

防火墙ALG技术之FTP协议穿墙术
图1-2-(b) FTP主动模式穿越SNAT-Server

FTP协议被动模式穿越SNAT


被动模式穿越SNAT主要用于FTP服务器部署在公网,客户端需要通过SNAT转换访问服务器。如图2-1所示,描述了FTP被动模式穿越SNAT时的工作流程,此时不需要借助ALG技术也可以完成穿越防火墙的(为什么呢?请思考一下)。


防火墙ALG技术之FTP协议穿墙术
图2-1 FTP被动模式穿越SNAT流程图

如图2-2-(a)和2-2-(b)所示,防火墙配置同“1.FTP协议主动模式穿越SNAT”章节所述,整个通信过程包括以下几个阶段:

  • 私网客户端与公网服务器之间TCP的三次握手建立控制连接;
  • 私网客户端发送PASV命令,公网服务器响应PASV命令,携带公网服务器指定的用于数据连接的IP和PORT信息,被动地等待客户端来连接;
  • PASV响应命令到达防火墙时,报文载荷中的公网IP(106.120.12.2)和PORT(Z=23076=90*256+36)不会进行NAT转换,将原样转发至私网客户端;
  • 私网客户端收到PASV响应命令后解析其内容,发送数据连接(源IP-192.168.12.2、目的IP-106.120.12.2、源端口-Y=31277、目的端口- Z=23076),经防火墙NAT转换后(源IP-106.120.22.2、目的IP-106.120.12.2、源端口-Y'=10009、目的端口Z=23076)发送至公网服务器,从而实现私网客户端访问公网服务器。


防火墙ALG技术之FTP协议穿墙术
图2-2-(a) FTP被动模式穿越SNAT-Client

防火墙ALG技术之FTP协议穿墙术
图2-2-(b) FTP被动模式穿越SNAT-Server

FTP协议被动模式穿越DNAT


被动模式穿越DNAT主要用于FTP服务器部署在私网,客户端需要通过DNAT转换访问服务器,如图3-1所示,描述了FTP被动模式穿越DNAT时的工作流程,此时需要借助ALG技术才可以完成穿越防火墙。


防火墙ALG技术之FTP协议穿墙术
图3-1 FTP被动模式穿越DNAT流程图

防火墙设备上配置了私网地址192.168.12.2/TCP私网端口21到公网地址106.120.22.2/TCP公网端口2100的映射,实现IP地址的转换,以支持公网客户端对私网服务器的访问。组网中,若没有ALG对报文载荷的处理(图3-1中红色字体部分内容的变化),私网服务器发送的PASV响应报文到达公网客户端后,客户端无法根据私网地址进行路由,也就无法建立正确的数据连接。如图3-2-(a)和图3-2-(b)所示,整个通信过程包括以下几个阶段:

  • 公网客户端与私网服务器之间TCP的三次握手建立控制连接;

  • 公网客户端发送PASV命令,私网服务器响应PASV命令,携带私网服务器指定的用于数据连接的IP和PORT信息,被动地等待客户端来连接;

  • PASV响应命令到达防火墙时,报文载荷中的私网IP(192.168.12.2)和PORT(C=31920=124*256+176)会被转换成为公网IP(106.120.22.2)和PORT(C'=31920=124*256+176);

  • 公网客户端收到PASV响应命令后解析其内容,发送数据连接(源IP-106.120.12.2、目的IP-106.120.22.2、源端口-D=23366、目的端口-C'=31920),经防火墙NAT转换后(源IP-106.120.12.2、目的IP-192.168.12.2、源端口-D=23366、目的端口C =31920)发送至私网服务器,从而实现公网客户端访问私网服务器。


防火墙ALG技术之FTP协议穿墙术
图3-2-(a) FTP被动模式穿越DNAT-Client

防火墙ALG技术之FTP协议穿墙术
图3-2-(b) FTP被动模式穿越DNAT-Server

FTP协议主动模式穿越DNAT


主动模式穿越DNAT主要用于FTP服务器部署在私网,客户端需要通过DNAT转换访问服务器,如图4-1所示,描述了FTP主动模式穿越DNAT时的工作流程,此时不需要借助ALG技术也可以完成穿越防火墙的(为什么呢?请思考一下)。


防火墙ALG技术之FTP协议穿墙术
图4-1 FTP主动模式穿越DNAT流程图

如图4-2-(a)和4-2-(b)所示,防火墙配置同“3.FTP协议被动模式穿越DNAT”章节所述,整个通信过程包括以下几个阶段:

  • 公网客户端与私网服务器之间TCP的三次握手建立控制连接;

  • 公网客户端发送PORT命令,携带公网客户端指定的用于数据连接的IP和PORT信息;

  • PORT命令到达防火墙时,报文载荷中的公网IP(106.120.12.2)和PORT(C=23360=91*256+64)不会进行NAT转换,将原样转发至私网服务器;

  • 私网服务器收到PORT命令后解析其内容,并主动向公网客户端发送数据连接(源IP-192.168.12.2、目的IP-106.120.12.2、源端口-20、目的端口-C=23360),经防火墙NAT转换后(源IP-106.120.22.2、目的IP-106.120.12.2、源端口-10011、目的端口-C=23360)发送至公网客户端,从而实现公网客户端访问私网服务器。


防火墙ALG技术之FTP协议穿墙术
图4-2-(a) FTP主动模式穿越DNAT-Client

防火墙ALG技术之FTP协议穿墙术
图4-2-(b) FTP主动模式穿越DNAT-Server

FTP协议穿越防火墙NAT小结


ALG应用在外部地址访问内部地址的场景下。ALG如果发现报文头部进行了NAT,并且进一步发现是一条FTP连接时,就需要对PORT/PASV命令中的IP和PORT进行转换。这样理解后总结上述几种场景可以得出如下结论:


  • 私网访问公网时需要防火墙进行SNAT,主动模式外部地址(Server)访问内部地址(Client)建立数据连接,因此需要ALG;而被动模式不涉及外部地址想访问内部地址的过程,故不需要ALG。

  • 公网访问私网时需要防火墙进行DNAT,被动模式外部地址(Client)访问内部地址(Server)建立数据连接,因此需要ALG;而主动模式不涉及外部地址想访问内部地址的过程,故不需要ALG。


附件-FTP协议穿越NAT抓包


  • 01_FTP主动模式穿越SNAT-Client.pcap

  • 02_FTP主动模式穿越SNAT-Server.pcap

  • 03_FTP被动模式穿越SNAT-Client.pcap

  • 04_FTP被动模式穿越SNAT-Server.pcap

  • 05_FTP被动模式穿越DNAT-Client.pcap

  • 06_FTP被动模式穿越DNAT-Server.pcap

  • 07_FTP主动模式穿越DNAT-Client.pcap

  • 08_FTP主动模式穿越DNAT-Server.pcap



下载方式


防火墙ALG技术之FTP协议穿墙术

微信扫码关注我们

回复穿墙术” 获取下载链接

防火墙ALG技术之FTP协议穿墙术
威努特简介
防火墙ALG技术之FTP协议穿墙术

北京威努特技术有限公司(以下简称“威努特”), 是国内工控网络安全领军企业、全球六家荣获国际自动化协会安全合规学会ISASecure CRT Tool认证企业之一和亚太地区唯一国际自动化学会(ISA)全球网络安全联盟(GCA)创始成员。

威努特作为国家高新技术企业,以创新的“白环境”整体解决方案为核心,自主研发了全系列工控网络安全专用产品,拥有64项发明专利、64项软件著作权、70项原创漏洞证明等核心知识产权。积极牵头和参与工控网络安全领域国家、行业标准制定,受邀出色完成新中国70周年庆典、中共十九大、两会等重大活动的网络安保任务,被授予“国家重大活动网络安保技术支持单位”,得到了中央网信办、公安部、工信部等国家政府部门的高度认可。迄今已成功为电力、轨道交通、石油石化、军工、烟草、市政、智能制造、冶金等国家重要行业1000多家工业企业提供了全面有效的安全保障。

威努特始终以“专注工控,捍卫安全”为使命,致力于为我国关键信息基础设施网络空间安全保驾护航!

防火墙ALG技术之FTP协议穿墙术
防火墙ALG技术之FTP协议穿墙术
防火墙ALG技术之FTP协议穿墙术
防火墙ALG技术之FTP协议穿墙术

防火墙ALG技术之FTP协议穿墙术

渠道合作咨询   张先生 18201311186

稿件合作   微信:shushu12121

本文始发于微信公众号(威努特工控安全):防火墙ALG技术之FTP协议穿墙术

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年6月15日00:00:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   防火墙ALG技术之FTP协议穿墙术http://cn-sec.com/archives/397988.html

发表评论

匿名网友 填写信息