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

"Руководство по КСЗ. Часть 1 РУСБ.10015-01 97 01-1" п. 17.3. "Условия применения"

Протокол NFS

Network File System (NFS) — протокол сетевого доступа к файловым системам основанный на протоколе вызова удалённых процедур (ONC RPC).

  • позволяет подключать (монтировать) удалённые файловые системы через сеть;
  • абстрагирован от типов файловых систем как сервера, так и клиента;
  • существует множество реализаций NFS-серверов и клиентов для различных операционных систем и аппаратных архитектур;
  • предоставляет клиентам прозрачный доступ к файлам и файловой системе сервера;

В большинстве операционных систем в настоящее время доступны и используются версии протокола 2 (далее NFSv2) и версия протокола 3 (далее NFSv3).

Основные различия между NFSv2 и NFSv3

  • NFSv2 использует для хранения величин смещений внутри файлов 32-битное значение, ограничивающее максимальный размер файлов величиной 4.2ГБ, что в современных условиях является существенным ограничением. NFSv3 использует для величин смещений 64-битное значение.

  • NFSv2 ограничивает максимальный размер передаваемого блока величиной 8КБ, то есть одна операция чтения или записи не может обработать более 8КБ. Это увеличивает нагрузку на сети передачи данных за счет увеличения количества запросов на передачу блоков данных. NFSv3 не имеет такого ограничения, и параметры обмена между клиентом и сервером автоматически настраиваются на максимальную скорость передачи.

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

Известные уязвимости безопасности протокола NFS

CVE-2017-7895

Реализация серверов NFS (NFSv2 и NFSv3) до версии ядра 4.10.13 не содержит необходимых проверок окончания буфера, что позволяет удалённым злоумышленникам вызвать арифметические ошибки в работе с указателями или, возможно, оказать иные воздействия через специально сформированные запросы, связанные с fs/nfsd/nfs3xdr.c и fs/nfsd/nfsxdr.c.

Данная уязвимость безопасности устранена в современных версиях ядра, используемых в Astra Linux (ОС ОН Орёл 2.12, ОС СН Смоленск 1.6).

Источники информации



  • ОС СН Смоленск 1.6
  • ОС СН Смоленск 1.5
  • ОС СН Смоленск 1.4
  • ОС ОН Орёл 2.12
  • ОС ОН Орёл 1.11