Kerio control можно ли откатить изменения. Баги в продуктах Kerio Control могут привести к полной компрометации организации. Переход на платформу Appliance

Об изучении продуктов компании Kerio Technologies, которая выпускает различные защитные программные решения, для малого и среднего бизнеса. Согласно официальному сайту компании, ее продукцией пользуются более 60 000 компаний по всему миру.

Специалисты SEC Consult обнаружили множество уязвимостей в Kerio Control, UTM-решении компании, которое объединяет в себе функции брандмауэра, маршрутизатора, IDS/IPS, шлюзового антивируса, VPN и так далее. Исследователи описали два сценария атак, которые позволяют злоумышленнику не только перехватить контроль над Kerio Control, но и над корпоративной сетью, которую продукт должен защищать. Хотя разработчики уже выпустили исправления для большей части обнаруженных багов, исследователи отмечают, что реализовать один из сценариев атак по-прежнему возможно.

По словам исследователей, решения Kerio Control уязвимы в силу небезопасного использования PHP функции unserialize, а также из-за использования старой версии PHP (5.2.13), в которой ранее уже были обнаружены серьезные проблемы. Также эксперты обнаружили ряд уязвимых PHP-скриптов, которые позволяют осуществить XSS и CSRF атаки и обход защиты ASLR. Кроме того, по словам SEC Consult, веб-сервер работает с root-привилегиями и не имеет защиты от брутфорс-атак и нарушения целостности информации в памяти.

Схема первого сценария атаки

Первый описанный экспертами сценарий атаки подразумевает эксплуатацию сразу нескольких уязвимостей. Атакующему понадобится применить социальную инженерию и заманить жертву на вредоносный сайт, на котором будет размещен скрипт, позволяющий выяснить внутренний IP-адрес Kerio Control. Затем злоумышленник должен эксплуатировать баг CSRF. Если же жертва не залогинена в панели управления Kerio Control, атакующий может применить обычный брутфорс для подбора учетных данных. Для этого понадобится уязвимость XSS, которая позволит обойти защиту SOP. После этого можно переходить к обходу ASLR и воспользоваться старым багом в PHP (CVE-2014-3515), чтобы запустить шелл с root-правами. По сути, после этого атакующий получает полный доступ к сети организации. Видеоролик ниже демонстрирует атаку в действии.

Второй сценарий атаки включает в себя эксплуатацию RCE-уязвимости , которая связана с функцией обновления Kerio Control и была обнаружена более года назад одним из сотрудников SEC Consult. Эксперты предлагают использовать этот баг, допускающий удаленное исполнение произвольного кода, в сочетании с XSS-уязвимостью, которая позволяет расширить функциональность атаки.

Специалистов Kerio Technologies уведомили о проблемах еще в конце августа 2016 года. На данный момент компания выпустила Kerio Control 9.1.3 , где большинство уязвимостей устранены. Однако компания решила оставить веб-серверу root-привилегии, а также без исправления пока остается RCE-баг, связанный с функцией обновления.

Путь к архиву показан на нижеследующих изображениях:

Предположим, что вы осуществляете переход с последней версии KWF 6.7.1, ваша цель - работающая версия Kerio Control Appliance 8.3 (актуальная версия приложения на Апрель 2014 года)

Основной «сложностью» перехода в данном случае является необходимость выполнять не прямое обновление с версии KWF 6.7.1 на Kerio Control 8.3, а последовательный переход на некоторые «мажорные» (major) версии. Данная необходимость обусловлена включением в конфигурационные файлы этих «мажорных» версий некоторых возможностей, которые требуют постобработки после установки приложения.
Для осуществления перехода с версии KWF 6.7.1 на версию Kerio Control 8.3 потребуется выполнить следующие шаги обновления:

1. Обновление до версии Kerio Control 7.0.0
2. Обновление до версии Kerio Control 7.1.0
3. Обновление до версии Kerio Control 7.4.2 (финальная версия для Windows)

Загрузить необходимые дистрибутивы вы сможете из нашего архива релизов .
Сам процесс обновления от версии к версии является обычной установкой новой версии «поверх» старой. Программа установки автоматически завершит работу системной службы Kerio Control (Kerio Winroute Firewall), определит директорию установки текущей версии Kerio Control (Kerio Win-route Firewall) и произведёт замену файлов приложения, требующих обновления; файлы протоколов приложения и пользовательской конфигурации сохраняются без изменений. Файлы конфигурации будут сохранены в специальной директории «UpgradeBackups», расположенной в корне директории %programmfiles%\Kerio\.

Видео ролик штатного процесса обновления:

Переход на последнюю Windows-версию Kerio Control 7.4.2 будет финальным шагом обновления в рамках данной платформы. Следующими этапами перехода является подготовка Appliance платформы, перенос конфигурации, базы журналов и пользовательской статистики.

Переход на платформу Appliance.

В данном разделе мы рассмотрим варианты разворачивания различных Appliance-дистрибутивов Kerio Control.

Установка Software Appliance

Данный вариант установочного пакета может быть развёрнут следующими способами:

  • ISO образ может быть записан на физический CD или DVD носитель, который в дальнейшем необходимо использовать для установки Kerio Control на физический или виртуальный хост.
  • В случае использования виртуальных ПК, ISO-образ можно подключить как виртуальный CD/DVD-ROM для совершения установки с него, без необходимости записи на физический носитель.
  • ISO образ можно записать на USB-flash накопитель и произвести установку с него. Для уточнения инструкций, обратитесь к соответствующей статье (kb.kerio.com/928) в нашей базе знаний.
Установка VMware Virtual Appliance

Для установки Kerio Control VMware Virtual Appliance на различные средства виртуализации от компании VMware, используйте соответствующий вариант дистрибутива Kerio Control VMware Virtual Appliance:

Для VMware Server, Workstation, Player, Fusion используйте заархивированный(*.zip) VMX файл:

Установка виртуального модуля в VMware player

  • Для VMware ESX/ESXi/vSphere Hypervisor используйте специальную OVF-ссылку для импорта виртуального модуля, имеющую вид:
http://download.kerio.com/en/dwn/control/kerio-control-appliance-1.2.3-4567-linux.ovf

VMware ESX/ESXi автоматически загрузит OVF-конфигурационный файл и соответствующий ему образ виртуального жёсткого диска (.vmdk)
При использовании OVF формата необходимо учитывать следующие аспекты:

  • В виртуальном модуле Kerio Control синхронизация времени с сервером виртуализации отключена. Однако Kerio Control обладает встроенными инструментами синхронизации времени с публичными сетевыми источниками времени Интернета. Таким образом, использование синхронизации между виртуальной машиной и сервером виртуализации необязательно.
  • Задачи «отключения» и «перезапуска» виртуальной машины будут выставлены в значения «по умолчанию». Возможность установления этих значений в режим «принудительного» отключения и «принудительного» перезапуска сохранена, однако данные варианты отключения и перезапуска могут стать причинами потери данных в виртуальном модуле Kerio Control. Виртуальный модуль Kerio Control поддерживает т.н. «мягкое» отключение и «мягкую» перезагрузку, позволяющие выключить или перезагрузить гостевую ОС правильным образом, поэтому рекомендуется использовать значения по умолчанию.

Установка виртуального модуля (ovf) в VMware vSphere

Установка Virtual Appliance для Hyper-V
  • Загрузите заархивированный (*.zip) дистрибутив, распакуйте его в нужную папку.
  • Создайте новую виртуальную машину, выберите опцию «Использовать имеющийся виртуальный жёсткий диск», указав в качестве образа диска файл, распакованный из загруженного архива

Установка виртуального модуля в MS Hyper-V

Следующим важным моментом подготовки к переходу на Appliance платформу, является корректная настройка сетевых интерфейсов на выбранной Appliance платформе.

Настройка сетевых интерфейсов в Software Appliance

В псевдографическом интерфейсе Kerio Control Software Appliance доступны возможности настройки IP адреса/множества адресов в статическом или динамическом режиме, создание VLAN интерфейсов и возможность настройки интерфейса в режиме PPPoE.

Примечание: Первоначальная настройка сетевых интерфейсов в самом дистрибутиве Kerio Control Software Appliance идентична для всех сборок Kerio Control Appliance, отличия есть только при настройке виртуальных сетевых интерфейсов в различных средах виртуализации, где может применяться Kerio Control.

Подготовка виртуальных сетевых интерфейсов в Hyper-V

Для выполнения корректной и минимально необходимой настройки виртуального коммутатора Hyper-V вам потребуется выполнить следующие шаги:

Сопоставление физических и виртуальных сетевых интерфейсов

Проверка наличия службы виртуального моста на физических сетевых интерфейсах сервера

Для ознакомления с вариантом быстрой настройки сетевых интерфейсов Kerio Control Hyper-V virtual Appliance просмотрите следующий видео ролик:

Подготовка виртуальных сетевых интерфейсов в VMware vSphere

Примерно такая же цепочка действий и в случае с подготовкой виртуальных сетевых интерфейсов в vSphere.

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



Создание виртуального коммутатора в VMware vSphere

Создание виртуального коммутатора в VMware vSphere

Добавление соответствующих физических сетевых интерфейсов к виртуальным коммутаторам, для возможности взаимодействия с ними физической ЛВС предприятия



Сопоставление созданных виртуальных коммутаторов с виртуальными сетевыми интерфейсами Kerio Control VMware Virtual Appliance



После того, как Appliance сборка была развёрнута и была произведена настройка сетевых интерфейсов, вы можете перейти к переносу основной пользовательской конфигурации с вашей Windows версии Kerio Control.
Сам процесс переноса конфигурации состоит из двух шагов:

Сохранение текущей конфигурации с использованием помощника конфигурирования

При выполнении сохранения конфигурации рекомендуется запомнить, а лучше выписать, MAC-адреса Ваших текущих сетевых интерфейсов и их соответствие используемым IP-адресам. Это понадобится при восстановлении конфигурации на новой установке Kerio Control Appliance.

Процесс сохранения конфигурации показан на приведённых ниже изображениях:

После этого шага вы сохранили архив, включающий в себя все файлы пользовательской конфигурации текущей версии Kerio Control.

Следующим шагом, является восстановление ранее сохранённой конфигурации на Appliance. При восстановлении конфигурации помощник конфигурирования предложит сопоставить конфигурацию старых сетевых интерфейсов с новыми, использующимися на сервере Kerio Control Appliance.

Примечание: Это именно тот момент, когда Вам понадобится информация о MAC и IP-адресах со старого сервера, которую Вы выписали или запомнили при сохранении конфигурации на старом.

Процесс восстановления конфигурации показан на приведённых ниже изображениях:

Для сохранения конфигурации сервер Kerio Control Appliance выполнит автоматическую перезагрузку, после чего его можно будет использовать.

И вот тут начинается самое интересное! То, что вы будете читать ниже, не описано ни в одной официальной, да и в неофициальной документации, т.е. тут будет помещено несколько приемлемых «лайв хаков», использование которых поможет вам в выполнении столь важного процесса, перехода на Appliance платформу Kerio Control.

И как обычно, прежде, чем мы перейдём с вами к непосредственному описанию, привычный «дисклэймер»:

ВАЖНО: Описанная ниже процедура не является документированной возможностью, поэтому во избежание нежелательных последствий, прежде, чем Вы начнёте выполнять перенос данных, создайте их полную резервную копию путём копирования данных на защищённое хранилище.

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

%programfiles%\kerio\winroute firewall\logs\*

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

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

%programfiles%\kerio\winroute firewall\star\data\

Оттуда нам нужен лишь файл star.fdb . Для лучшей сохранности этих данных перед выполнением переноса рекомендуется выполнить резервную копию на доступное безопасное хранилище.

После того, как мы обнаружили и сохранили всю необходимую информацию, нам необходимо её перенести на новый сервер, работающий под управлением Kerio Control Appliance, для этого первое, что вам потребуется сделать для загрузки сохранённых ранее данных на Kerio Control Appliance, это включить SSH сервер для выполнения SFTP доступа. Для этого в веб-интерфейсе администрирования Kerio Control перейдите в меню Состояние -> Состояние системы , нажмите и держите клавишу “Shift” и щёлкните по кнопке «Действия ». В раскрывшемся списке выберите пункт «Включить SSH », подтвердите ваши действия, согласившись с вопросом в появившемся окне.

После этого необходимо удостовериться, что в правилах трафика Kerio Control Вы разрешили доступ к хосту Kerio Control Appliance по протоколу SSH из нужного Вам местоположения.

После того, как Вы включили SSH и разрешили соответствующий доступ, Вам необходимо выполнить подключение к серверу Kerio Control Appliance для загрузки на него необходимых данных протоколов и базы данных пользовательской статистики. Для этого мы будем использовать приложение WinSCP, которое позволяет выполнять подключения по протоколу SFTP.
Для подключения к серверу Kerio Control Appliance необходимо указать имя пользователя и пароль доступа, в качестве имени пользователя укажите имя “root” (без кавычек); в качестве пароля укажите пароль встроенной в Kerio Control учётной записи “Admin”.

Параметры sFTP подключения к серверу Kerio Control

После установления подключения необходимо разместить Ваши данные в определённых папках сервера. Файлы протоколов необходимо скопировать в папку /var/winroute/logs , а файл пользовательской статистики в папку /var/ winroute/star/data , при этом старые файлы необходимо либо удалить, либо переименовать.

Примечание: Лучше переименовать старые файлы, для сохранения резервной копии текущих данных. В случае файлов протоколов приложения переименовывать надо лишь старые файлы с расширением *.log

После того как копирование завершено, необходимо перезапустить службу Kerio Control. Для этого необходимо получить прямой доступ к серверу Kerio Control Appliance. В случае Software Appliance, доступ осуществляется через монитор и клавиатуру самого сервера, на котором установлен Kerio Control Software Appliance. В случае виртуального модуля Kerio Control, доступ осуществляется через консоль соответствующей среды виртуализации. Во всём остальном действия будут одинаковы.

Для перехода из псевдографической консоли к интерфейсу командной строки, нажмите комбинацию клавиш “Alt-F2”. В приглашении на введение имени пользователя укажите имя “root” (без кавычек), нажмите “enter”, в поле пароль введите пароль встроенной в Kerio Control учётной записи «Admin».

Примечание: необходимо учесть, что в ОС семейства Linux введение пароля не отображается даже значками астериска, и если Вы допустили ошибку, исправить её будет нельзя - придётся вводить пароль заново.

В приглашении на ввод команды введите следующее:

/etc/boxinit.d/60winroute restart

Эта команда выполнит перезапуск демона (службы) Kerio Control, после чего Kerio Control «подцепит» скопированные ранее данные протоколов приложения и пользовательской статистики.

После старта демона Kerio Control, необходимо проверить целостность перенесённых данных, для этого можно воспользоваться веб-интерфейсом пользовательской статистики и/или веб-интерфейсом администрирования приложения Kerio Control.

Если со всеми данными всё в порядке, то можно считать переход на новую платформу Kerio Control Appliance завершённым и осталось лишь выполнить штатную процедуру обновления Kerio Control до актуальной на текущий момент версии. Если же с какой-то частью данных «не всё в порядке», то есть два варианта:
1) удостовериться, что данные взятые с исходного сервера Kerio Control (KWF) были изначально в порядке;)
2) если с исходными данными всё ок, то необходимо повторить процедуру переноса той части данных с которыми были проблемы.
3) если решения из пп. 1 и 2 не помогли, то оставьте тут комментарий, попробуем разобраться вместе:)

Теперь, когда все важные данные на своих местах, можно «подтянуть» версию Kerio Control Appliance до актуальной. Штатный процесс обновления может проходить двумя способами, в автоматическом и ручном режимах.

Автоматический режим обновления версии.

Kerio Control может выполнять автоматическую проверку наличия новых версий на сайте обновления компании Kerio.

  1. Дополнительные опции », во вкладку «Проверка обновлений »
  2. Включите опцию «Периодически проверять наличие новых версий ». Kerio Control будет проверять наличие новых версий каждые 24 часа. Как только будет установлено наличие новой версии, на вкладке «Проверка обновлений » будет отображена ссылка для загрузки обновления. Для того чтобы проверить наличие обновления незамедлительно, щёлкните по кнопке «Проверить сейчас »
  3. Если Вы хотите загружать обновлённые версии сразу же после их обнаружения, включите опцию «Загружать новые версии автоматически ». Как только новая версия будет загружена, Вы получите соответствующее уведомление в веб-интерфейсе администрирования.
  4. После загрузки обновления нажмите кнопку «Обновить сейчас »
  5. Подтвердите Ваше намерение произвести обновление и выполнить последующую автоматическую перезагрузку Kerio Control
  6. Дождитесь завершения установки новой версии и перезагрузки Kerio Control.
  7. Обновление завершено.

Ручной режим обновления версии.

Данный режим обновления может быть полезен при следующих обстоятельствах:

Для выполнения обновления в ручном режиме Вам необходимо загрузить специальный образ (Upgrade Image) со страницы загрузки Kerio Control (http://www.kerio.ru/support/kerio-control).

После загрузки выполните следующие шаги:

  • В веб-интерфейсе администрирования перейдите в пункт меню «Дополнительные опции », во вкладку «Проверка обновлений »
  • Щёлкните по кнопку «Выбор »
  • Укажите местоположение файла образа обновления (kerio-control-upgrade.img)
  • Щёлкните по кнопке «Загрузить файл обновления версии »
  • После загрузки щёлкните по кнопке «Начать обновление версии »
  • Дождитесь обновления версии и перезагрузки Kerio Control
  • Обновление завершено.

Вуаля, у вас полноценный интернет шлюз на базе Kerio Control Appliance! Поздравляем вас с завершением процесса перехода на UTM Kerio Control!

Только зарегистрированные пользователи могут участвовать в опросе.

Зачем это надо?

Продукты Kerio версии 7 содержат в себе несколько дополнительных (новых) модулей: встроенный антивирус Sophos вместо привычного McAfee, модуль предотвращения вторжений Snort. Кроме того, есть некоторые дополнительные возможности - использование внешних антивирусных плагинов, например. Все это требует регулярных обновлений, а производитель не дает такой возможности:)

Существует единственный путь - обновлять все эти модули и необходимую информацию для них самостоятельно, подкладывая продуктам Kerio обработанные соответствующим образом данные. Проблема состоит не в том, чтобы найти источники для такой информации, а в том, чтобы формат ее представления соответствовал неким стандартам, определяемым или продуктами Kerio, или способом обработки полученных данных. Поскольку абсолютно все модули используют для своего обновления протокол http (https ), требуется создать структурированный определенным образом веб-сайт, с которого будет получать обновление подготовленный для этого продукт Kerio.

Что для этого надо?

Собственно, веб-сервер, любой конфигурации, типа и размещения - все требования к нему типовые вне зависимости от ОС. Максимально упростим задачу - используем встроенные возможности операционной системы Windows, т.е. IIS любой версии (здесь рассматривается IIS7 ).
Будем создавать зеркало для следующих продуктов: WebFilter, McAfee, Sophos, Snort и ClamAV.

Несколько пояснений - обновления для антивирусов McAfee и ClamAV расположены по стабильным ссылкам и, в принципе, зеркало для них не так уж и нужно. Однако, есть замкнутые системы, в которых доступ предоставляется не ко всем ресурсам Интернета, вот для таких систем зеркало незаменимо - его можно наполнять с флешки.

Можно было включить в число продуктов в зеркале антивирус Avast! -- это не сделано только потому, что использование этого антивируса предполагает наличие серверной лицензии, а такая программа обновляется самостоятельно. Технически сделать зеркало для Avast! несложно и м.б. вскоре это будет сделано.

Обновления для Snort - бесплатны и всегда доступны, проблема только в том, что эти обновления должны быть обработаны по правилам, которые использует Kerio.

Обновления для Sophos надо искать в Интернете и такие источники существуют, однако нестабильны по формату представления данных, актуализации и целостности.

С чего начнем?

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

Структура эта проста (опять же для простоты используем приведенное в одной из утилит, которую позже применим, описание ):

Кроме того, создадим папку для размещения наших скриптов и промежуточных результатов - c:\autoit .

Теперь настроим веб-сервер (предполагается, что его установка не вызывает у читателя затруднений). Используем созданный при установке сайт по умолчанию, который расположится по адресу c:\inetpub\wwwroot . Что меняем в настройках:

1. В привязки сайта добавим три имени (все имена условны, важен их формат ) для протокола http - updater, antivirus-updater.MyLocalDomain.ru и в качестве имени - IP-адрес компьютера 172.16.101.1, по которому к нему будут обращаться за обновлениями клиенты с прослушиванием по всем сетевым адресам.

Зачем так: обращение по имени updater требует наличия соответствующей ДНС-записи, что не всегда возможно. Кроме того, 64-битные версии Kerio некорректно обрабатывают ДНС-ответы по коротким именам, поэтому мы будем использовать там, где это возможно, в качестве имени IP-адрес веб-сервера. Длинное доменное имя необходимо использовать в версиях KCONTROL 7.1.1 и KCONNECT 7.1.4 - длина имени должна быть равна 23 символам, включая точки, или больше. Естественно, что имена можно выбрать по собственному вкусу.

Для обновлений продуктам Kerio используется протокол https. Патч может убирать такую привязку при прямом указании протокола, например для WebFilter - http://updater , однако для библиотеки Sophos автор такую возможность не предусмотрел, оставив нам только HTTPS -протокол, поэтому в привязках сайта укажем и его с любым сертификатом, который предложит нам система.

2. Добавляем MIME-типы для сайта. Все добавляемые значения должны иметь тип text\plain.

Добавить надо следующие значения:

McAfee: .log .bof .gem .msc .ini .pdb .so .nrc

Snort: .rules .db

Sophos: .ver .vdb .dat .ide .list .php

ClamAv: .cvd .cld

3. В обработчики событий сайта добавляем сопоставление модуля для файлов .rules аналогично указанному для события

StaticFile - StaticFileModule,DefaultDocumentModule,DirectoryListingModule,

обязательно включив ограничение запроса на файл\каталог. Называем его как хотим.

4. В фильтрации запросов сайта удаляем запись для типа файлов *.rules.

5. Создаем виртуальные каталоги на сайте с привязкой к созданной ранее файловой структуре и разрешаем просмотр содержимого каталогов (проще, но неправильней - всего сайта):

Все - сайт для обновления продуктов Kerio создан. Проверяем его доступность по сети путем открытия в браузере необходимых каталогов - http://updater/snort или http://172.16.101.1/sophos или http://antivirus-updater.MyLocalDomain.ru/clamav

Должны открываться пустые каталоги.

Еще раз про имя сайта: для каждого продукта может быть использовано свое имя, выбор зависит от версии продукта, разрядности ОС, настроек ДНС. Имя выбирается при патче конкретного продукта и не зависит от веб-сервера и его настроек - оно должно быть учтено в привязках.

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

Эта методика положена в основу действующего сервера обновлений - .

Серверполностью сконфигурирован для использования в качестве источника обновлений всех компонентов Kerio Control и Kerio Сonnect : Sophos, McAfee



В продолжение темы:
Windows

Часть вторая : "Важнейшие характеристики каждого семейства процессоров Intel Core i3/i5/i7. Какие из этих чипов представляют особый интерес" Введение Сначала мы приведём...

Новые статьи
/
Популярные