Чтение онлайн

на главную - закладки

Жанры

Linux глазами хакера

Флёнов Михаил Евгеньевич

Шрифт:

Основные команды FTP-протокола вы можете увидеть в табл. 10.1. При работе через Telnet и для тестирования сервера они вам могут пригодиться.

Таблица 10.1. Команды FTP-протокола

Команда Описание
USER имя
Используется при авторизации для указания имени пользователя
PASS пароль
Предназначена для указания пароля при авторизации
SYST
Вернуть тип системы
HELP
Предоставить список доступных для выполнения команд
LIST
Вывести список файлов и каталогов текущей директории
PWD
Возвратить текущую директорию
CWD директория
Сменить текущую директорию
TYPE тип
Указать тип передачи данных: A для ASCII, I — для бинарных файлов
RETR параметр
Скачать с сервера файл, указанный в качестве параметра
STOR параметр
Загрузить на сервер файл, указанный в качестве параметра
ABOR
Прервать последнюю FTP-команду или передачу данных
QUIT
Выйти из системы

10.1.2. Сообщения сервера

В ответ на полученные команды сервер возвращает нам сообщения, по которым можно оценить результат работы. Уведомления состоят из числового трехзначного кода и необязательной текстовой части. Если для ответа требуется несколько строк, то в первой (после кода) стоит дефис, а в последней (после кода) — идет пробел.

Вы должны знать смысл числовых кодов, чтобы определить тип ошибки. Когда к вам за помощью обращается пользователь, зная значения кодов, можно определить причину сбоя и быстро решить проблему.

Значения первой и второй цифр кода ответа FTP-сервера можно увидеть в табл. 10.2 и 10.3 соответственно.

Таблица 10.2. Значения первой цифры в коде ответа FTP-сервера

Код Описание
1 Команда удачно запустилась, но еще не закончила свое выполнение, поэтому нужно дождаться ее окончания перед продолжением работы. Такие сообщения приходят во время выполнения длительных операций (например, запрос на передачу файлов). После завершения работы команды будет получено еще одно сообщение
2 Команда выполнена удачно, можно продолжать работу и посылать новые директивы. Такие сообщения приходят в ответ на простые команды
3 Команда выполнена удачно, но для завершения работы требуется дополнительная директива. Такие сообщения можно увидеть в ответ на операции, предусматривающие несколько действий, например, во время аутентификации, которая требует двух команд. Сообщение с кодом, начинающимся с цифры 3, появляется между отправкой команд
USER
и
PASS
4 Команда выполнена неверно, но результат может быть положительным, если повторить попытку позже. Сообщение может быть получено в случае, если сервер не в состоянии сейчас выполнить команду из-за выполнения другой операции
5 Команда выполнена неверно. Это самый критичный ответ, который может быть при неверном синтаксисе директивы или неправильном задании параметров

Таблица 10.3. Значения второй цифры в коде ответа FTP-сервера

Код Описание
0 Синтаксическая ошибка, команда воспринята неверно
1 Информация
2 Установка соединения
3 Сообщение относиться к аутентификации
4 Не определено
5 Сообщение файловой системы

Рассмотрим пример. Допустим, что пользователь увидел в своей программе FTP-клиент следующее сообщение и не знает, что делать дальше:

331 Anonymous access allowed, send identity (e-mail name) as password.

Вам достаточно только знать код 331. По первому числу 3 видно, что директива выполнена удачно, но требуется дополнительная команда. Вторая цифра тоже 3, т.е. сообщение появилось в ответ на аутентификацию. Когда может быть такой отклик? Конечно же, после ввода имени. Сервер FTP ожидает пароль, поэтому выдал сообщение с кодом 331.

Как видите, минимальных знаний достаточно, чтобы понять, какая у пользователя или на сервере возникла проблема, и можно максимально быстро ее решить.

10.1.3. Передача файлов

Так как протокол FTP предназначен для работы с разными системами, то для передачи файлов используются два основных режима — текстовый (ASCII) и бинарный.

Допустим, что вы хотите переслать текстовый файл с компьютера Unix на компьютер Windows. В Unix для текстовых файлов в качестве идентификатора конца строки используется символ <CR> (Carriage Return, возврат каретки, код 13). В Windows то же самое обозначается двумя символами <CR> и <LF> (Line Feed, перевод строки, код 10). Если после передачи открыть в Windows этот текстовый файл, то все строки сольются в одну, потому что нет символа <LF>.

На рис. 10.2 показан файл sendmail.cf (используется для конфигурации сервиса Sendmail), скаченный с Linux-сервера в бинарном режиме и открытый в программе Windows Notepad. Как видите, очень тяжело разобрать, что здесь и для чего, а вместо перехода на новую строку можно увидеть нечитаемый символ <CR> в виде квадрата.

Рис. 10.2. Файл sendmail.cf, полученный с Linux-сервера в бинарном режиме

Чтобы решить проблему конца строки, необходимо скачивать файл с сервера в символьном (ASCII) режиме. В этом случае текст передается построчно, и ОС-получатель сама добавляет нужные символы перевода строки. На рис. 10.3 можно увидеть файл sendmail.cf, полученный с сервера в ASCII- режиме. Теперь информация стала читабельной, и все символы перехода на новую строку расставлены самой ОС верно, в соответствии со своими внутренними правилами.

Рис. 10.3. Файл sendmail.cf, полученный с Linux-сервера в ASCII-режиме

Бинарные файлы (например, картинки или музыку) необходимо передавать в двоичном режиме. Здесь нет различий, в какой ОС создан объект, и он будет правильно воспринят в любой операционной системе, умеющей работать сданным форматом.

Если передать двоичный файл из Linux в Windows в текстовом режиме, то любой символ <CR> (а он может встретиться и в двоичном файле) будет заменен на пару символов <CR> и <LF>, и после этого бинарный файл может стать нечитаемым.

10.1.4. Режим канала данных

Мы уже говорили о том, что для работы с FTP-сервером необходимо два канала. Порт 21 является командным, и по нему передаются только FTP-команды. Для передачи файлов создается отдельное соединение. Этот процесс можно описать следующим образом:

□ программа-клиент открывает порт на компьютере, куда сервер должен передать содержимое файла;

□ серверу направляется запрос на скачивание файла и сообщается порт и IP-адрес клиентского компьютера, с которым он должен соединиться;

□ сервер инициализирует соединение с компьютером клиента и начинает передачу данных.

Такой режим называется активным, потому что сервер устанавливает соединение. Проблема кроется в последнем действии. Если у вас установлен сетевой экран, то, скорее всего, любые подключения извне запрещены, чтобы хакер не смог подобраться к компьютерам вашей сети. Соединения должны инициализировать только ваши компьютеры, а не внешние.

Таким образом, в активном режиме протокол FTP не будет работать через правильно настроенный сетевой экран. Если вы разрешите внешним программам устанавливать соединения, то можете отключить сетевой экран, он уже ничего не защитит.

Поделиться:
Популярные книги

Кодекс Охотника. Книга XVIII

Винокуров Юрий
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVIII

Хозяин Стужи 7

Петров Максим Николаевич
7. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Хозяин Стужи 7

Магия чистых душ

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Магия чистых душ

Чужая семья генерала драконов

Лунёва Мария
6. Генералы драконов
Фантастика:
фэнтези
5.25
рейтинг книги
Чужая семья генерала драконов

Князь Целитель 5

Ткачев Андрей Юрьевич
5. Князь Целитель
Фантастика:
боевая фантастика
городское фэнтези
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Князь Целитель 5

Морской лорд. Том 1

Чернобровкин Александр Васильевич
2. Вечный капитан
Фантастика:
попаданцы
историческое фэнтези
8.12
рейтинг книги
Морской лорд. Том 1

Третий

INDIGO
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий

S-T-I-K-S. Пройти через туман

Елисеев Алексей Станиславович
Вселенная S-T-I-K-S
Фантастика:
боевая фантастика
7.00
рейтинг книги
S-T-I-K-S. Пройти через туман

Старый, но крепкий 3

Крынов Макс
3. Культивация без насилия
Фантастика:
рпг
уся
фэнтези
5.00
рейтинг книги
Старый, но крепкий 3

Кодекс Охотника. Книга XVII

Винокуров Юрий
17. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVII

Последний Паладин. Том 12

Саваровский Роман
12. Путь Паладина
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Последний Паладин. Том 12

Печать Пожирателя

Соломенный Илья
4. Пожиратель
Фантастика:
аниме
сказочная фантастика
фэнтези
попаданцы
5.00
рейтинг книги
Печать Пожирателя

Точка Бифуркации

Смит Дейлор
1. ТБ
Фантастика:
боевая фантастика
7.33
рейтинг книги
Точка Бифуркации

Я уже князь. Книга XIX

Дрейк Сириус
19. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я уже князь. Книга XIX