Специалист Службы Экономической Безопасности делится практическим опытом

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

Вот как сказал об этом в комментариях:»Лично мне больше по душе варианты Active Directory, Samba+OpenLdap и scrypt. Не считаю, что надо дать пользователю совершить что нибудь а потом его за это ловить.
ПРАВИЛЬНО: сделать так, что бы юзер не мог совершить ничего противоправного. Даже если бы захотел. К сожалению не везде админы умеют работать со средствами AD или настраивать дуэт из Samba 3.5 и OpenLdap.
Я видел эти правильно настроенные системы, принимал участие в их создании. Считаю так правильнее и честнее.
Если хотите, постараюсь написать и об этом опыте.
»

Напомню, что классический «треугольник мошенничества», по мнению специалистов, выглядит примерно так:
1. Доступ к тому, что можно украсть, т.е. принципиальная возможность совершить хищение.
2. Высокая вероятность, что не поймают и не накажут
3. Возможность оправдания своего поступка в собственных глазах.

Только при наличии всех трех компонентов хищение состоится. Поэтому, насколько мне известно, квалифицированная работа по предотвращению хищений напоминают не карательную экспедицию, а планомерную работу по профилактике возникновения «треугольника».

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

Поскольку тема — пограничная, т.к. она затрагивает и работу Службы Безопасности, и работу IT (а отчасти и работу конкурентной разведки), я прошу специалистов, сведущих в этих вопросах, дать подсказки, что, по их мнению, можно было бы сделать лучше.
Офисному планктону просьба не тратить здесь время, ибо он никому неинтересен с его мнением. А вот людям, у которых есть вопросы, уточнения, или, тем более — дополнения — наоборот, просьба принять участие в обсуждении.

Итак, ниже — перепост с блога :

Вариант безопасной системы.

Сразу же оговорюсь, что тема очень объемная. Я не админ, а специалист ИБ СЭБ. Моя задача выявить дыры и «ткнуть лицом» на них IT-шников.

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

Итак варианты: на основе Windows или на основе Linux. Или что еще интереснее — тонкий клиент.

Конечно, на основе Linux или тонком клиенте предпочтительнее — это более безопасно. Но реалии таковы, что в бизнесе  на настоящий момент — windows машины и windows server 2003 (на многих предприятиях еще и «паленые»).

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

Безопасная архитектура — это фундамент.

Итак, помимо централизованной политики безопасности, без которой de facto невозможно построение безопасной сети в принципе, особое внимание следует обратить на следующее:

      1. Использование безопасных протоколов обмена (не секрет, что такие текстовые протоколы, как FTP и Telnet, представляют собой явную угрозу) и туннелирование данных, например, посредством SSH.

      2. Шифрование критичных данных с использованием надежных криптоалгоритмов.

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

      4. Использование IDS (система обнаружения вторжения), IPS (система предотвращения вторжений) и NAT.

      5. Защита периферии посредством тонких клиентов и двухфакторной системы аутентификации.

DMZ. Не секрет, что системы, открытые для прямого доступа извне, являются главными целями злоумышленников. DMZ — сокращение от demilitarized zone (демилитаризованная зона) — подразумевает собой фрагмент сети, не являющийся полностью доверенным. Смысл создания DMZ заключается в том, чтобы оградить внутреннюю систему (в данном случае это наша защищенная LAN) от доступа, который осуществляется из Интернета. DMZ создается посредством реализации полузащищенной сетевой зоны, что достигается путем применения межсетевых экранов или маршрутизаторов со строгими фильтрами. Затем посредством элементов управления сетью определяется политика, какому трафику разрешается проникновение в DMZ, а какому трафику разрешено выходить за пределы DMZ. Очевидно, что все системы, доступные из внешней среды, должны быть размещены в демилитаризованной зоне. Следует учитывать и то, что, если система доступна через интерактивный сеанс (такой, как telnet или SSH), то открывается возможность проведения атак против других систем, находящихся в DMZ.

IDS — система обнаружения вторжений. В идеальном случае такая система лишь выдаст сигнал тревоги при попытке проникновения. Обнаружение вторжений помогает при превентивной идентификации активных угроз посредством оповещений и предупреждений о том, что злоумышленник осуществляет сбор информации, необходимой для проведения атаки. Разновидностью IDS является IPS, возможности которой выходят за рамки простого обнаружения вторжений и дополняются возможностью превентивного противодействия. В настоящее время можно выделить, по крайней мере, два основных типа IDS:

  • узловые (HIDS);

  • и сетевые (NIDS).

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

Принцип функционирования NIDS чем-то схож с работой сетевого сниффера: NIDS переводит работу сетевой карты в системе в promiscuous mode (беспорядочный режим — состояние, в котором сетевой адаптер обнаруживает в сети все фреймы вне зависимости от их конечного адреса). После получения пакетов происходит анализ трафика с использованием набора правил и признаков атак для определения того, представляет ли этот трафик какой-либо интерес.

Классным вариантом будут honeypot и honeynet. Но для начала и Snort со Squil будет классно смотреться.

Еще одним инструментом, который мы применим при проектировании безопасной LAN, станет NAT.

NAT — это технология трансляции одного или нескольких адресов в другие адреса. В большинстве случаев функции NAT реализуются посредством межсетевого экрана. Очевидно, что функция безопасности NAT реализуется благодаря тому, что скрытые адреса внутренних систем являются невидимыми из внешней сети — в частности, из сети Интернет. Следует учитывать и тот факт, что для защиты от инсайдерских атак NAT бесполезна: если злоумышленник находится внутри организации или имеет прямой доступ к внутренней сети через VPN или телефонное соединение, то NAT и вовсе никак не сможет защитить сеть.

Необходимый минимум:

  1. Следует минимизировать количество служб и сервисов, предоставляемых сетью, используемых клиентами из сети Интернет.

  2. Архитектура LAN в обязательном порядке должна предусматривать наличие DMZ — демилитаризованной зоны, контролируемой межсетевым экраном.

  3. Крайне желательно наличие NAT (система переадресации выполняет функцию сокрытия адресов внутренних систем).

  4. Установка самых последних обновлений строго обязательна. Даже если ваша система имеет самые последние обновления, расслабляться все равно не стоит: с момента обнаружения новой уязвимости и до момента выхода заплатки «умные люди» успевают написать эксплоит или создать червя.

  5. Разумеется, как на сервере, так и на рабочих станциях должно быть установлено антивирусное ПО со свежими базами.

  6. Если у вас до сих пор файловая система FAT32, смените ее на NTFS. NTFS de facto более безопасна: она позволяет разграничить доступ к ресурсам вашего ПК и значительно усложнит процесс локального и сетевого взлома паролей базы SAM.

  7. В свойствах подключения крайне желательно оставить только самое необходимое, а именно ТСР/IP. «Службу доступа к файлам и принтерам сети Microsoft» необходимо отключить, чтобы не облегчать задачу всем любителям «дефолтовых» C$, D$, ADMIN$ и т. д. (Ой какое нытье ща виндовые админы подымут! Но это их удобство и даже не дыра — «раскрытые ворота»)

  8. Все неиспользуемые сервисы желательно выключить. Это не только улучшит производительность вашей системы, но и автоматически закроет кучу открытых портов.

  1. Удалите лишние учетные записи (такие, как HelpAssistant и SUPPORT_388945a0), а в оснастке gpedit.msc запретите локальный и сетевой вход для всех пользователей, оставив только используемых на данной машине.

  2. Пользователя «Администратор» лучше переименовать (через оснастку gpedit.msc).

Открытые по умолчанию ресурсы C$, D$, ADMIN$ желательно отключить (созданием параметра DWORD по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\ parameters);

  1. В локальной сети не стоит забывать и о снифферах, с помощью которых ваши пароли могут стать «общественным достоянием» (не секрет, что пароли таких сервисов, как FTP и Telnet, передаются по LAN в открытом виде). Используя сниффер (например, Cain&Abel), даже зашифрованные пароли легко взломать.

  1. Как вариант необходимо написать скрипт запускаемый при старте системы, который будет обращаться к другому скрипту на сервере, а тот уже будет восстанавливать установки реестра, а именно закрывать USB CD порты, закрывать автозапуск, закрывать «шары» и все остальное.

Выход — построение локальной сети не на хабах (сетевые пакеты, которые получает хаб, распределяются по всем адресам независимо от места назначения), а на свитчах (используется технология доставки пакетов «по адресу»). Применение свитчей значительно усложняет процесс перехвата сетевых паролей и делает злоумышленника «видимым» (перехват паролей возможен даже при использовании свитчей(!), но в этом случае машина злоумышленника вынуждена генерировать ARP-пакеты — технология ARP-poizoning), используя стандартный набор для антисниффинга (antisniff от знаменитой команды lophtcrack).

Следующий шаг — обеспечить безопасность со стороны рабочего места юзера.

Необходимо сделать так, чтобы конфиденциальная информация не уходила с него. Какие действия инсайдера или хакера могут увести информацию с него?

  • установка не регламентированного софта типа утилит удаленного доступа (TeamViewer), хакерских утилит и т.д (несанкционированный доступ и повышение привилегий).

  • Попытка перестановки оси (цель — повышение полномочий на машине);

  • попытка войти в реестр (цель — изменение прав по подключению устройств и повышение полномочий и запуск или остановка служб);

  • попытка войти в BIOS (для загрузки Live CD системы);

  • запись на съемные носители;

  • попытаться отправить информацию по протоколам FTP и Http;

  • Отправка через мессенджеры и почту файлами или в текстовом формате;

  • несанкционированная в фоне перекачка документов по маске или внедрение в систему трояна через autorun.

Решение на Windows машинах должно основываться на основе доменной структуры в AD (Active Directory). Все юзеры — только юзеры, каких либо полномочий лишены. В профилях пользователей прописанных на сервере обязательно должно быть прописано:

  • запрещается вход в BIOS,

  • запрещается изменения реестра,

  • установка каких-либо программ, запуск любых скриптов или командных файлов,

  • в BIOSе стоит загрузка ТОЛЬКО с харда,

  • USB и CD-DVD на большинстве машин отключены в реестре, на особо доверенных (где разрешены) в реестре отключен autorun.

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

  • Для защиты от отправки по протоколам — на проксе в фаерволе прописываем, помимо запрета различных фишинговых, мошеннических и других нехороших ресурсов, запрет ко всем социалкам, бесплатным почтовым сервисам, запрет не санкционированных ftp соединений и др.

  • Почтовый сервер организовать на основе Microsoft Exchange, установить фильтры по контенту, например «конфиденциально», «бюджет», и т.п.

  • Запрещен запуск програ, скриптов и командных файлов с любого носителя кроме диска C$;

  • на всех компьютерах в службах запреты на IIS, службы IPSEC и удаленный доступ. +см. п.7 выше.

  • см.п.12 выше;

  • При инициализации профиля запускается script проверяющий соответствие настроек перечисленных выше и возвращающий «на круги своя все настройки машины от имени админа сервера»

  • создание jabber сервера, «сообчения» которого можно фильтровать, а передачу файлов через него запретить.

Следующая ключевая область — административно-распорядительная документация.

Должно быть разработан комплект типовых документов по информационной безопасности. По кругу — политика-процедура-регламент-стандарты-концепции-инструкции-программы-протоколы.

Необходимый минимум:

  • Политика информационной безопасности;

  • Руководство по защите конфиденциальной информации;

  • Перечень сведений, составляющих конфиденциальную информацию;

  • Соглашение о конфиденциальности;

  • Правила обеспечения информационной безопасности при работе пользователей в корпоративной сети организации;

  • Регламент резервного копирования и восстановления данных;

  • План обеспечения непрерывности бизнеса. Аварийные процедуры, Программа и Протокол тестирования плана;

  • план защиты информационных ресурсов организации от несанкционированного доступа.

Но самое главное: в них должно быть четко описаны права и обязанности сторон работодателя и работника. Что может делать сотрудник, а на что претендовать не может. Там должно быть четко сказано, что компьютер ему предоставляется для РАБОТЫ, а не для развлечения, со всеми вытекающими последствиями. Должно быть четко описано, какая информация является конфиденциальной и порядок работы с ней. В каких случаях сотрудник может быть привлечен к ответственности. При приеме его знакомят с Руководством по защите конфиденциальной информации и Перечнем сведений, составляющих конфиденциальную информацию и подписывает Соглашение о конфиденциальности.

Это на Windows архитектуре. Но! Лично мне по душе структура на Linux машинах хотя бы потому, что порты там не раскрываются почем зря, расшаренных ресурсов априори нет!

Linux архитектура создается на основе Samba+OpenLDAP. OpenLdap с Samba позволяет создать некую замену групповым политикам в AD. Все контролируется в профилях созданных в LDAP и с помощью сервиса cron. А на машине все можно контролировать на уровне ядра вырезая или врезая те или иные компоненты, например поддержку USB. Решения в Инете можно найти…

А самое правильное решение таки на основе тонкого клиента, которого можно контролировать прямо на сервере. А у юзера только монитор и клавиатура с мышью. Только почему то все CIO резко против этого. Как думаете почему? Или сами догадаетесь?

100% защиты нет, как говорит г-н Лукацкий, к ней можно лишь приблизиться…

Запись опубликована в рубрике Uncategorized. Добавьте в закладки постоянную ссылку.