«WannaCry» в системах Linux: как защитить себя?

«WannaCry» в системах Linux: как защитить себя?

В соответствии сстатья rapid7есть некоторые уязвимыеСамбаверсии, позволяющие удаленное выполнение кода в системах Linux:

В то времяХочу плакатьвирус-вымогатель поразил системы Windows и был легко идентифицирован, с четкими шагами по исправлению,СамбаУязвимость повлияет на системы Linux и Unix и может создать значительные технические препятствия для получения или развертывания соответствующих средств исправления.

CVE-2017-7494

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

Возможный сценарий атаки:

Исходя из двух факторов:

  • Уязвимость Sambaне исправленоеще в некоторых дистрибутивах Linux.
  • В некоторых версиях ядра Linux существует неисправленная уязвимость локального повышения привилегий (например, CVE-2017-7308 в ядре Ubuntu 4.8.0-41-generic).

Злоумышленник может получить доступ к машине Linux и повысить привилегии, используя локальную уязвимость эксплойта, чтобы получить доступ root и установить возможную будущую вредоносную программу, похожую на эту модель Программа-вымогатель WannaCry для Linux.

Обновлять

Новейшая статья«Внимание! Хакеры начали использовать «уязвимость SambaCry» для взлома систем Linux»продемонстрируйте, как использовать уязвимость Sambacry для заражения машины Linux.

Прогноз оказался довольно точным, поскольку приманки, созданные группой исследователей изЛаборатория Касперскогообнаружили вредоносную кампанию, которая использует уязвимость SambaCry для заражения компьютеров Linux программным обеспечением для майнинга криптовалют.

Другой исследователь безопасности, Омри Бен Бассат, независимо обнаружил ту же кампанию и назвал ее"ВечныйШахтер".

По словам исследователей, неизвестная группа хакеров начала взламывать ПК на базе Linux всего через неделю после того, как уязвимость Samba была публично раскрыта, и устанавливать обновленную версию «CPUminer» — программного обеспечения для майнинга криптовалюты «Monero».

После взлома уязвимых машин с использованием уязвимости SambaCry злоумышленники запускают на целевых системах две полезные нагрузки:

INAebsGB.so — обратная оболочка, предоставляющая злоумышленникам удаленный доступ.

cblRWuoCc.so — бэкдор, включающий утилиты для майнинга криптовалюты — CPUminer.

Отчет TrendLab, опубликованный 18 июля 2017 г.:Пользователям Linux настоятельно рекомендуется обновиться, поскольку новая угроза использует SambaCry

Как защитить систему Linux от атак?

решение1

Эту новую уязвимость Samba уже называют «Sambacry», а в самом эксплойте упоминается «Eternal Red Samba», анонсированная в Twitter (сенсационно) как:

Ошибка Samba, однострочный вызов metasploit выглядит просто: simple.create_pipe("/path/to/target.so")

Потенциально уязвимые версии Samba: от Samba 3.5.0 до 4.5.4/4.5.10/4.4.14.

Если ваша установка Samba соответствует описанным ниже конфигурациям, исправление/обновление следует выполнить как можно скорее, поскольку они уже есть.подвиги, другойэксплойт в питонеи метасплоитмодули там.

Что еще интереснее, уже существуют дополнения к известному honeypot отмедовая сетьпроект,дионеякак для WannaCry, так иПлагины SambaCry.

Клич самбы, кажется, уже (не)привыкустановить больше криптомайнеров«EternalMiner» илив будущем также выступит в роли распространителя вредоносного ПО.

Honeypots, созданные командой исследователей из Лаборатории Касперского, зафиксировали вредоносную кампанию, которая использует уязвимость SambaCry для заражения компьютеров Linux программным обеспечением для майнинга криптовалют. Другой исследователь безопасности, Омри Бен Бассат, независимообнаруженныйту же кампанию и назвал ее «EternalMiner».

Рекомендуемым решением для систем с установленной Samba (которая также присутствует в уведомлении CVE) перед ее обновлением является добавление smb.conf:

nt pipe support = no

(и перезапуск службы Samba)

Предполагается, что это отключит параметр, который включает/выключает возможность создания анонимных подключений к службе именованных каналов Windows IPC. Из man samba:

Эта глобальная опция используется разработчиками для разрешения или запрета клиентам Windows NT/2000/XP подключаться к каналам SMB IPC$, специфичным для NT. Как пользователь, вы никогда не должны переопределять значение по умолчанию.

Однако, исходя из нашего внутреннего опыта, исправление, похоже, несовместимо со старыми версиями Windows (по крайней мере, некоторые клиенты Windows 7, похоже, не работают с ними nt pipe support = no), и поэтому в крайних случаях исправление может заключаться в установке или даже компиляции Samba.

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

Другой известный обходной путь — убедиться, что общие ресурсы Samba смонтированы с noexecопцией. Это предотвратит выполнение двоичных файлов, находящихся в смонтированной файловой системе.

Официальным исправлением исходного кода безопасности являетсяздесьизстраница безопасности samba.org.

Debian уже выпустил вчера (24/5) обновление и соответствующее уведомление о безопасностиDSA-3860-1 самба

Чтобы проверить, исправлена ​​ли уязвимость в Centos/RHEL/Fedora и производных, выполните следующее:

#rpm -q –changelog samba | grep -i CVE
– resolves: #1450782 – Fix CVE-2017-7494
– resolves: #1405356 – CVE-2016-2125 CVE-2016-2126
– related: #1322687 – Update CVE patchset

Теперь есть nmapскрипт обнаружения:samba-vuln-cve-2017-7494.nse для определения версий Samba или гораздо лучший nmapскрипт, который проверяет, уязвима ли службаhttp://seclists.org/nmap-dev/2017/q2/att-110/samba-vuln-cve-2017-7494.nse, скопируйте его /usr/share/nmap/scriptsи обновите nmapбазу данных или запустите его следующим образом:

nmap --script /path/to/samba-vuln-cve-2017-7494.nse -p 445 <target>

О долгосрочных мерах по защите сервиса SAMBA: Протокол SMB ни в коем случае не должен предлагаться напрямую в Интернете.

Само собой разумеется, что SMB всегда был запутанным протоколом, и что подобные сервисы должны быть защищены брандмауэром и ограничены внутренними сетями [в которых они обслуживаются].

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

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

Взято из самого эксплойта:

Эксплойт Eternal Red Samba — CVE-2017-7494.
Заставляет уязвимый сервер Samba загружать общую библиотеку в корневом контексте.
Учетные данные не требуются, если на сервере есть гостевая учетная запись.
Для удаленного эксплойта у вас должны быть права на запись хотя бы в один общий ресурс.
Eternal Red просканирует сервер Samba на предмет общих ресурсов, в которые он может записывать данные. Он также определит полный путь к удаленному общему ресурсу.

    For local exploit provide the full path to your shared library to load.  

    Your shared library should look something like this

    extern bool change_to_root_user(void);
    int samba_init_module(void)
    {
        change_to_root_user();
        /* Do what thou wilt */
    }

Также известно, что системы с включенным SELinux не уязвимы для данной уязвимости.

ВидетьСемилетняя уязвимость Samba позволяет хакерам получить удаленный доступ к тысячам компьютеров Linux

По данным поисковой системы Shodan, более 485 000 компьютеров с поддержкой Samba выставили порт 445 в Интернет, а по данным исследователей Rapid7, более 104 000 конечных точек, выходящих в Интернет, по-видимому, использовали уязвимые версии Samba, из которых 92 000 используют неподдерживаемые версии Samba.

Поскольку Samba — это протокол SMB, реализованный в системах Linux и UNIX, некоторые эксперты говорят, что это «Linux-версия EternalBlue», используемая вирусом-вымогателем WannaCry.

...или мне следует сказать SambaCry?

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

Домашние сети с сетевыми устройствами хранения данных (NAS) [которые также работают под управлением Linux] также могут быть уязвимы к этой уязвимости.

Смотрите такжеОшибка выполнения кода, способная вызывать червя, скрывалась в Samba в течение 7 лет. Исправьте сейчас!

Семилетняя уязвимость, проиндексированная как CVE-2017-7494, может быть надежно использована всего одной строкой кода для выполнения вредоносного кода, если соблюдены несколько условий. Эти требования включают уязвимые компьютеры, которые:

(a) сделать порт 445 общего доступа к файлам и принтерам доступным в Интернете,
(b) настроить общие файлы так, чтобы у них были права на запись, и
(c) использовать известные или предполагаемые пути к серверу для этих файлов.

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

Учитывая простоту и надежность эксплойтов, эту дыру стоит закрыть как можно скорее. Вероятно, это лишь вопрос времени, когда злоумышленники начнут активно ее использовать.

ТакжеRapid 7 — исправление CVE-2017-7494 в Samba: круговорот жизни

И болееSambaCry: Linux-сиквел WannaCry.

Факты, которые необходимо знать

CVE-2017-7494 имеет оценку CVSS 7,5 (CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H)3.

Масштаб угрозы

Запрос shodan.io "port:445 !os:windows" показывает около миллиона хостов, отличных от Windows, которые имеют открытый для Интернета TCP/445, более половины из которых находятся в Объединенных Арабских Эмиратах (36%) и США (16%). Хотя многие из них могут работать с исправленными версиями, иметь защиту SELinux или иным образом не соответствовать необходимым критериям для запуска эксплойта, возможная поверхность атаки для этой уязвимости велика.

P.S. Исправление коммита в проекте SAMBA github, похоже, коммит02a76d86db0cbe79fcaf1a500630e24d961fa149

решение2

Большинство из нас, использующих серверы Samba, вероятно, используют их внутри локальных сетей, за брандмауэрами и не открывают их порты напрямую внешнему миру.

Это было бы ужасной практикой, если бы вы так поступили, и непростительной, когда вокруг есть простые, эффективные и бесплатные (как в пиве и как в речи) решения VPN, такие как OpenVPN. SMB не был разработан с учетом открытого Интернета (черт, TCP/IP даже появился как запоздалая мысль в этом протоколе) и должен рассматриваться как таковой. Дополнительное предложение - запустить правила брандмауэра на фактическом хосте обмена файлами, которые вносят в белый список только локальные (и в конечном итоге VPN) сетевые адреса на всех портах SMB ( 139/TCP, 445/TCP, 137/UDPи 138/UDP).

Кроме того, если ваш вариант использования позволяет, вам следует рассмотреть возможность запуска Samba без привилегий (например, как sambaпользователь, который не является псевдонимом root). Я понимаю, что не так-то просто объединить ограничения NT ACL с POSIX ACL при такой настройке, но если это возможно сделать в вашей конкретной настройке, то это выход.

Наконец, даже при такой «блокировке» все равно рекомендуется применить исправление, если это возможно (потому что существуют NAS-устройства, на которых это может оказаться невозможным), и проверить, работает ли ваш конкретный вариант использования с nt pipe supportустановкой значения no.

Связанный контент