В популярной утилите для Linux и Windows 36 лет «живет» опасная уязвимость
Реализации утилиты SCP в OpenSSH, PuTTY и WinSCP содержат ряд уязвимостей, которые позволяют удаленному злоумышленнику незаметно манипулировать пользовательскими файлами.36-летний баг
Все реализации протокола SCP (Secure Copy Protocol – «протокол безопасного копирования»), выпущенные с 1983 г. содержат четыре уязвимости, которые позволяют вредоносному SCP-серверу внести несанкционированные изменения на стороне клиента и скрыть следы своей активности от глаз пользователя.
SCP представляет собой протокол копирования файлов между узлами сети в зашифрованном виде, использующий в качестве транспорта SSH (Secure Shell – «безопасная оболочка»). Одноименная утилита, содержащая реализацию этого протокола, часто входит в пакет OpenSSH для удаленного управления компьютерами, доступный пользователям UNIX-подобных операционных систем, в том числе GNU/Linux и семейства BSD, «из коробки». Кроме того, передача файлов в популярных утилитах Putty и WinSCP, поддерживающих Windows, также по умолчанию осуществляется при помощи SCP.
Уязвимости обнаружил специалист финской компании F-Secure Харри Синтонен (Harry Sintonen) в августе 2018 г. Благодаря одной из них, которая получила идентификатор CVE-2019-6111, злоумышленник может перезаписать файлы в целевом каталоге на машине клиента. CVE-2018-20685 разрешает удаленному серверу изменить права доступа к целевому каталогу на клиентском компьютере. CVE-2019-6109 и CVE-2019-6110 позволяют злоумышленнику видоизменять информацию, направляемую системой на клиентский терминал для сокрытия данных о загрузке файлов, которая не была санкционирована пользователем.
Исследователь безопасности советует установить все самые свежие патчи, доступные для перечисленных программ. Исправление для OpenSSH, например, можно найти на сайте Синтонена. В случае невозможности применения патчей рекомендуется вместо SCP использовать утилиту SFTP (Secure FTP – «безопасный протокол передачи файлов»), которая лишена описанных недостатков.
На момент выхода материала уязвимости остаются неустраненными в известных дистрибутивах GNU/Linux, таких как Debian, Red Hat Enterprise Linux, Ubuntu и других.
«Уязвимости-долгожители» в свободном ПО
В августе 2018 г. CNews рассказывал об уязвимости в протоколе OpenSSH. Она позволяла с относительной простотой подбирать логины к устройствам и серверам интернета вещей и присутствовала во всех версиях клиента, выпущенных за последние 20 лет.
Проблема была обнаружена случайно уже после ее исправления: эксперты установили, что изменения, внесенные в код OpenSSH под OpenBSD, устраняют баг, о существовании которого, вероятно, никто и не догадывался.
В сентябре 2014 г. специалистом по информационной безопасности Стефаном Чазеласом (Stephane Chazelas) была обнаружена ошибка в командной оболочке Bash, доступной в большинстве UNIX-подобных операционных систем.
Bash позволяет задавать так называемые переменные окружения при запуске оболочки. Уязвимость заключалась в том, что непосредственно в самом задаваемом значении переменной можно дописать произвольные команды, которые оболочка также выполнит. В случае если Bash назначена системной оболочкой по умолчанию, она могла быть использована злоумышленниками для проведения сетевых атак на серверы с применением веб-запросов. Уязвимость, представлявшая потенциальную угрозу для миллионов машин по всему миру, получила название Shellshock.