Протокол обмена файлами (FXP): принцип работы и безопасность
File eXchange Protocol
Протокол FXP (File eXchange Protocol) – прямой обмен файлами между FTP-серверами без участия клиента. Ускоряет передачу данных, но может быть уязвим для атак.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Метод передачи данных
Method of data transfer
Протокол обмена файлами (FXP или FXSP) — это метод передачи данных, использующий FTP для передачи данных с одного удалённого сервера на другой (межсерверная передача) без маршрутизации этих данных через соединение клиента. В обычном FTP используется один сервер и один клиент; вся передача данных происходит между ними. В сеансе FXP клиент поддерживает стандартное FTP-соединение с двумя серверами и может инициировать соединение одного сервера с другим для начала передачи данных. Преимущество использования FXP перед FTP становится очевидным, когда сервер с высокой пропускной способностью запрашивает ресурсы у другого сервера с высокой пропускной способностью, но доступ к ресурсам на обоих серверах есть только у клиента с низкой пропускной способностью, например, у сетевого администратора, работающего удалённо.
File eXchange Protocol (FXP or FXSP) is a method of data transfer which uses FTP to transfer data from one remote server to another (inter server) without routing this data through the client's connection. Conventional FTP involves a single server and a single client; all data transmission is done between these two. In the FXP session, a client maintains a standard FTP connection to two servers, and can direct either server to connect to the other to initiate a data transfer. The advantage of using FXP over FTP is evident when a high bandwidth server demands resources from another high bandwidth server, but only a low bandwidth client, such as a network administrator working away from location, has the authority to access the resources on both servers.
Риск
Включение поддержки FXP может сделать сервер уязвимым для эксплойта, известного как FTP bounce. Поэтому программное обеспечение FTP-серверов часто имеет FXP отключенным по умолчанию. Некоторые сайты ограничивают доступ по IP-адресам, разрешая подключение только с доверенных сайтов, чтобы снизить этот риск.
Enabling FXP support can make a server vulnerable to an exploit known as FTP bounce. As a result of this, FTP server software often has FXP disabled by default. Some sites restrict IP addresses to trusted sites to limit this risk.
FXP через SSL
Некоторые FTP-серверы, такие как glFTPd, cuftpd, RaidenFTPD, drftpd и wzdftpd, поддерживают согласование защищенного канала передачи данных между двумя серверами с использованием команд расширения протокола FTP: CPSV или SSCN. Обычно это работает, когда клиент отправляет CPSV вместо команды PASV или отправляет SSCN перед передачей PASV, что предписывает серверу установить SSL- или TLS-соединение. Однако оба метода – CPSV и SSCN – могут быть уязвимы для атак типа "человек посередине", если два FTP-сервера не проверяют SSL-сертификаты друг друга. SSCN был впервые представлен RaidenFTPD и SmartFTP в 2003 году и получил широкое распространение.
Some FTP Servers such as glFTPd, cuftpd, RaidenFTPD, drftpd, and wzdftpd support negotiation of a secure data channel between two servers using either of the FTP protocol extension commands; CPSV or SSCN. This normally works by the client issuing CPSV in lieu of the PASV command—or by sending SSCN prior to PASV transfers—which instructs the server to create either a SSL or TLS connection. However, both methods—CPSV and SSCN—may be susceptible to man in the middle attacks, if the two FTP servers do not verify each other's SSL certificates. SSCN was first introduced by RaidenFTPD and SmartFTP in 2003 and has been widely adopted.