Программа opensoc


Cisco OpenSOC — open source решение для создания собственного центра мониторинга киберугроз

Как часто бывает, сначала ты ищешь решение на рынке и, не найдя его, делаешь самостоятельно и под себя. А потом получается настолько хорошо, что ты отдаешь это другим. Так было и с OpenSOC, open source решением для управления большими объемами данных в области кибербезопасности, которое было разработано в Cisco для своих собственных нужд, а потом было выложено на GitHub для всеобщего доступа.

Если вспомнить одну из наших предыдущих заметок про то, как выстроен процесс управления доступом внутри Cisco, то можно обратить внимание на количество устройств, которые нам приходится контролировать. А теперь давайте посмотрим, сколько данных, важных для безопасности, эти устройства генерят/пропускают через себя ежедневно:

  • 47 Терабайт данных сетевого трафика
  • 1,2 триллиона сетевых событий
  • 4,8 миллиарда DNS-запросов для системы Cisco Umbrella
  • 4,1 миллиона e-mail сообщений для системы Cisco Email Security Appliance
  • 45 миллионов Web-запросов (URL) для системы Cisco Web Security Appliance и Cisco Cloud Web Security
  • 15 миллиардов потоков NetFlow для системы Cisco Stealthwatch
  • 1,5 миллиона сигналов тревоги от Cisco NGIPS
  • 10 тысяч файлов для системы Cisco AMP ThreatGrid.
Всего же мы собираем и храним для целей анализа 4 ТБ данных ежедневно. Это огромный объем информации, для эффективного управления которой нашей службе кибербезопасности был просто необходим специализированный инструментарий. Первое, что приходит в голову, когда возникает тема управления событиями безопасности, — это SIEM (Security Information Event Management), и мы, как и многие другие компании в мире, тоже пытались использовать такие решения. Но к сожалению, ни одно решение SIEM не смогло решить наши задачи и причин тому было несколько:
  • сложность индексации данных не от средств защиты информации, включая и поддержку форматов данных от нами разработанных средств ИБ (в данном случае речь идет не о портфолио Cisco, которые мы не только продаем заказчикам, но и используем сами, а собственноручно написанных нашими инженерами по ИБ различных “тулзов” под те или иные задачи)
  • серьезные проблемы с масштабированием и скоростью обработки данных (поиск в всего 10 ГБ данных занимал больше 6 минут)
  • сложность в кастомизации решения под наши задачи и необходимость переписывать практически с нуля все встроенные правила, которые генерили слишком много ложных срабатываний
  • сложность работы со структурированными и неструктурированными данными.
В качестве альтернативы существующим SIEM-решениям мы стали использовать Splunk, который позволил решить многие перечисленные выше проблемы, да еще и стоил дешевле. Но… Splunk, несмотря ни на что, все-таки не смог решить все наши задачи; только 95% из них. Он собирал данные от наших антивирусов, МСЭ, IDS/IPS, систем контентной фильтрации и т.п. Но 5% информации, очень важной для нашей группы реагирования на инциденты, оставалась за бортом. Очень важной информации об угрозах, нападающих, их методах и тактике. Не так-то просто было обогатить имеющиеся в Splunk данные от средств защиты этой информацией. Сначала мы создавали различные простые скрипты и утилиты, каждый(ая) из которых решали свои узкие задачи. Потом возникла идея сделать свое решение, превратив его в полноценную платформу для анализа больших данных в области кибербезопасности (Threat Intelligence Platform).

Так как данная система, получившая название OpenSOC, создавалась для собственных нужд, то никаких разработчиков, занимающихся созданием продуктов Cisco, привлекать было нельзя — приходилось использовать только собственные силы службы ИБ. Поэтому вполне логично, что мы не стали писать все с нуля, а задействовали open source решения, среди которых главную роль сыграли:

  • Flume (https://flume.apache.org) — распределенный инструмент для сбора и агрегации больших объемов данных из разных источников в разных форматах (Syslog, SNMP, Netflow, JMS, HTTP, файлы, PCAP и т.д.). В OpenSOC Flume собирает телеметрию от различных средств защиты, приложений и оборудования.
  • Kafka (http://kafka.apache.org) — распределенный высокопроизводительный брокер сообщений (шина).
  • Storm ([http://storm.apache.org]) — распределенный обработчик данных в реальном времени, который получает данные для выполнения вычислений над ними в том числе и от Kafka. Встроенные обработчики позволяют выполнять различные задачи над событиями безопасности — фильтрацию, нормализацию, разбор (парсинг), обогащение сведениями об угрозах. В последнем случае нормализованные данные расширяются контекстом по ИБ — геолокацией, репутацией IP, информацией из Whois и т.п. В публичный вариант OpenSOC по умолчанию входит всего 4 обработчика, занимающихся обогащением исходных данных.
  • Hadoop ([hadoop.apache.org]) — набор утилит и библиотек для разработки выполнения распределенных программ, например, для поисковых и контекстных механизмов. Лежит в основе технологии “Больших данных”. Кластер Hadoop в OpenSOC хранит все данные
  • Elasticsearch — система поиска и индексации больших объемов данных в реальном времени.
  • HBase — нереляционная распределенная база данных. В OpenSOC обеспечивает долгосрочное хранение сетевых пакетов (PCAP).
  • Hive — система управления базами данных на базе Hadoop, в том числе HBase. В OpenSOC обеспечивает долгосрочное хранение событий безопасности.
  • MySQL — реляционная система управления базами данных. В OpenSOC хранит метаданные Hive, а также иные данные, например, геолокационные.
  • Kibana — система визуализации.

OpenSOC стал унифицированной платформой анализа данных безопасности в Cisco, которая:

  • собирает, хранит, обрабатывает и анализирует данные с разных сторон с целью обнаружения аномалий и иных явных и неявных нарушений ИБ
  • позволяет использовать различные предиктивные и корреляционные модели для поиска скрытых взаимозавимостей в собранных данных
  • учитывает контекст анализируемых данных в реальном времени
  • визуализирует события безопасности в нужном среде и генерит отчеты для заинтересованных лиц.
С технической точки зрения в основе лежит кластер из 45 серверов Cisco UCS (1440 процессоров, 12 ТБ памяти), вышеупомянутые технологии Hadoop, Hive, HBase, Elasticsearch и ряд других. Объем хранилища OpenSOC в Cisco составляет 1,2 ПБ. В одной таблице находится свыше 1,3 триллионов строк.

Cisco OpenSOC мы стали создавать в 2013-м году и в сентябре 2013-го появился первый прототип. На половине пути, в декабре 2013-го года к нам присоединилась компания Hortonworks, давшая толчок развитию проекта и привнесшая немало интересных идей по использованию open source компонентов для высокопроизводительной и распределенной платформы, которой должен был стать OpenSOC. В марте 2014 года мы завершили разработку OpenSOC, а в сентябре 2014 мы сделали его публичным и выложили на GitHub.

В базовой комплектации поддерживает функции сбора данных, их хранения и анализа, а также обогащения сведениями об угрозах, жертвах, нападающих. Число адаптеров, которые по сути и выполняют функцию корреляции различных событий, в публичной версии OpenSOC невелико. Как и в случае с большинством SIEM, правила корреляции “из коробки” работают не очень хорошо, и поэтому в OpenSOC их надо писать самостоятельно под каждого потребителя системы. В группе компаний NTT, например, в качестве инструмента для создания триггеров и правил корреляции используется open source движок Esper.

После успеха OpenSOC внутри компании, его было решено развивать в качестве основы для наших аутсорсинговых услуг. Cisco Active Threat Analytics (ATA) по сути представляет собой распределенный Security Operations Center (SOC), который берет на себя функции мониторинга и управления информационной безопасностью наших заказчиков. Развивая OpenSOC и внутри компании и в рамках Cisco ATA, мы столкнулись с тем, что лицензия Apache 2.0 не всегда позволяет нам реализовывать все, что мы хотели. Да и только open source компонентами мы уже не могли ограничиваться для решения всех возникающих у нас задач.

Было принято решение разделить развитие OpenSOC на два направления. Первое оставалось в Cisco, для нужд нашей службы ИБ и сервиса ATA. А вот второе направление оказалось очень интересным. OpenSOC вошел в инкубатор Apache, став полноценным проектом, развиваемым сообществом open source. OpenSOC поменял и имя, став называться Apache Metron. В апреле 2016-го года вышла первая версия Apache Metron 0.1. Идеология при этом осталась неизменной и пользователям OpenSOC будет легко перейти на Apache Metron.

Cisco OpenSOC получил свое развитие и в другом направлении. На его основе компания MapR создала свое решение Security Log Analytics, которое используется и упомянутой выше компанией NTT, и банком Zions Bank, и другими заказчиками. Но, как и в случае с Apache Metron, идеология OpenSOC остается неизменной — анализ больших данных в целях кибербезопасности и возможность работы не только со структурированными, но и с неструктурированными данными. Это позволяет существенно расширить функции мониторинга угроз в компании и «видеть» гораздо больше чем раньше, используя и большее число источников информации. Например, в компании Cisco за последние несколько лет произошел сдвиг от привычных всем статических правил и сигнатур в сторону анализа поведения, аномалий и threat intelligence. Все это было бы невозможно без Cisco OpenSOC.

habrahabr.ru

Взлом Вконтакте!

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

Зачем хакеры взламывают аккаунты Вконтакте?

Социальные сети становятся всё более популярны, с ростом популярности увеличивается количество взломов страниц Вконтакте и других социальных сетей. Причин много самые распространённые это:

  • Похищение личных данных
  • Похищение голосов (валюты)
  • Рассылка спама вашим друзьям
  • Продажа аккаунтов
  • Размещение рекламы
  • Или просто, для удовлетворение любопытства

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

Взлом Вконтакте через e-mail

Как вы знаете, пароль от странички Вконтакте можно получить через почту, на которую зарегистрирована страница. Используя функцию восстановления пароля. E-mail намного легче поддаётся взлому, обычно взламывают с помощью программы Brute (Брут). Чтобы защититься от брута, нужно придумать сложный пароль на свой E-mail, так как брут взламывает страницы с помощью подбора пароля. Это долго, но эффективно. Советую использовать пароли вида Uy59Jk%sY$P, я понимаю, что это очень неудобно, но с таким паролем вы будете в безопасности. Чтобы легче запоминать можно придумать, например такой пароль S22l04a19v92A (Моё имя и дата рождения Slava, 22.04.1992), в таком случаи главное запомнить, как вы зашифровали пароль. И ещё несколько советов по поводу взлома через E-mail:

  1. Сделайте для своей странички отдельный E-mail, который будете знать, только вы.
  2. Используйте в пароли большие и маленькие буквы, цифры и знаки.
  3. Обязательно придумайте секретный вопрос, который также будете знать только вы.
  4. Привяжите свою почту к телефонному номеру, такая возможность доступна в гугл и яндекс почте.

Фишинг Вконтакте

Фишинг (ловля рыбы) я объясню, в этом случаи создаётся сайт который является точной копией Вконтакте.ру на нём будет даже работать счётчик количества зарегистрированных пользователей. Но когда вы введёте пароль, ничего не произойдёт, сайт Вконтакте не откроется, но ваш пароль будет украден. Если вы думаете, что не попадёте на такую уловку, то давайте представим ситуацию. К вам на E-mail приходит сообщение, которое выглядит точ-в-точ как уведомление о новом комментарии, вы переходите и на автомате вводите пароль.  Чтобы не попасться всегда при вводе пароля проверяйте в адресной строке название сайта, если например вы увидите vkontacte.ru, сразу закрывайте страницу.

Программа для взлома Вконтакте

Как я писал выше, существует программа для взлома паролей Вконтакте под названием Brute, ссылку я давать не буду, так как я хочу помогать обыкновенным пользователям. Но кто захочет, сможет в гугле найти и скачать бесплатную программу для взлома. Повторяюсь, чтобы уберечь себя поставьте очень трудный пароль. Также просмотрите статью о 200 самых популярных паролях, вы не должны найти там свой пароль.

Письма от «Администрации»

Вам приходили письма от администрации Вконтакте или Павла Дурова? В таких письмах может идти речь о потери данных на сервере или других проблемах. Если у вас попросят пароль, сразу добавляйте в черный список, не бойтесь это мошенники. Администрация Вконтакте никогда не будет просить отправить им пароль.

Взлом через cookie

Cookie — файл на компьютере в котором храниться ваш логин или пароль, он служит для запоминания важной информации. Благодаря ему вам не приходиться каждый раз вводить пароль при входе на сайт. Если хакер завладеет вашим Cookie, он получит ваш пароль, но к счастью зашифрованный. Расшифровать простой пароль очень легко, поэтому в очередной раз говорю, придумывайте сложные пароли. Лучше сделать это раз и ваш аккаунт Вконтакте не будет взломан.

Скрипты для взлома контакта

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

Что нужно делать? Если хотите использовать скрипт, скачивайте скрипты только с проверенного и надёжного сайта. А ни то взлома страницы в контакте вам не избежать.

Программы для взлома контакта

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

Что нужно делать? Также как и скрипты скачивайте программы с проверенных ресурсов. Я уже публиковал статью, в которой приводил пример вредоносных программ для похищения паролей, советую ознакомиться и обходить эти программы десятой дорогой. Программы, которые воруют пароли!

Бесплатный Wi-Fi

Уже идут интересные способы, этот пункт скорее для тех, кто хочет украсть много аккаунтов. Если поставить бесплатный Wi-Fi в густонаселённом месте, можно за короткий период набрать большое количество паролей.

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

Фейки контакта

Я читал интересную статью, в которой описывался очень сложный способ получения E-mail жертвы. Суть состояла в том, что нужно сделать два фейковых аккаунта. Один фейк жертвы, второй его друга. Написать с фейков сообщения типа «Меня взломали, теперь это моя новая страница и т.д.» Написать и жертве и другу, а после этого можно начинать вести разговор. Ситуация будет такая: Друг пишет жертве, но так как вы написали что, это новая страница сообщения попадает вам, а вы его отправляете жертве, получаете ответ и пересылаете другу. В итоге переписка идёт через вас, в этот момент можно спросить про E-mail.

Что нужно делать? Быть внимательней, хакеры придумывают всё новые способы для взлом контакта. :(

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

Если вам помогла или понравилась данная статья, не забудьте поставить свой лайк, это поможет другим пользователям найти её быстрей. А я смогу узнать, что интересует вас больше всего, чтобы подготовить и написать еще больше интересных и полезных статей! С уважением, Вячеслав.

vkblog.ru

Как не “наступить на грабли” OpenSource-бизнеса / Хабрахабр

Вы наверняка слышали, что недавно вышел новый релиз IaaS-платформы OpenStack — OpenStack 13 «Mitaka». Это хороший повод написать небольшой анализ-сравнение OpenStack с каким-нибудь более ранним проектом и выяснить, что же сделало OpenStack настолько успешным.

Идея этого поста — в одном из моих предыдущих переводов, где были перечислены проблемы, с которыми сталкиваются компании, пытающиеся вести бизнес на Open Source. А если точнее, о проблемах писал руководитель компании XenSource, и в первую очередь, про проект Xen. Там была такая фраза: «Если вы думаете, что это всё осталось в прошлом и сейчас уже не актуально, я вам скажу, что вижу похожую ситуацию, происходящую сегодня с OpenStack, и такое, вероятно, происходит со многими другими успешными open source проектами.»

Давайте посмотрим, о каких трудностях XenSource писал Питер Левайн (Peter Levine) и как с этим обстоят дела в OpenStack.

Я не буду упоминать технические сложности — они свои у каждого проекта и, скажу прямо, в основном о технических проблемах OpenStack  я слышу почему-то от представителей EMC/VMware.  ;-) Кстати, если вспомнить высказывания представителей VMware, они тоже проводили аналогии между OpenStack и Xen:

Рэгу Рэгурэм (Raghu Raghuram), исполнительный вице-президент VMware по облачной инфраструктуре и управлению, не так уверен в OpenStack.… Рэгурэм приводит пример — не так давно десятки компаний поддерживали Xen, open source гипервизор, но в итоге почти все переключились на KVM.… По словам Рэгурэма, есть два варианта развития событий. Или OpenStack, подобно Linux, станет общепризнанным стандартом, или пойдёт путём Xen.Конечно, Рэгу Рэгурэм заметно “сгущает краски”, не так уж все плохо было с Xen и в 2012 году, когда я писал тот пост, и сейчас тем более (о позитивных изменениях, произошедших с Xen я писал вот тут).

Но вернемся к теме поста. Питер пишет “я расскажу и про другие факторы, которые играют против “настоящих” open source компаний.” Так каких же проблем нужно опасаться, связываясь с бизнесом на Open Source?

1. Недостаточная поддержка ИТ-отрасли. Широкая поддержка в ИТ-отрасли (подчеркну, что в том числе и среди производителей проприетарного ПО), наверное, является ключевым фактором успеха любого открытого проекта. Вот, что пишет Питер:

Но если компания не нанимает к себе на работу большинство разработчиков этого open source продукта, то высока вероятность того, что проект никогда не сможет набрать нужный темп разработки. И действительно, Xen довольно долго набирал обороты в свое время. Вероятно, что это было связано не только с “молодостью” технологий x86-виртуализации, но и с нехваткой ресурсов — многие компании просто выжидали, когда проект “созреет”, вместо того, чтобы вкладываться в разработку. У OpenStack с этим не было проблем — проект быстро набрал участников, которые активно развивали проект. OpenStack заслуженно называли “самым быстрорастущим открытым проектом” — на рисунке выше данные 2013 года, (а вот тут  актуальный на сегодняшний день список компаний). Хочу отметить, что активным участием в OpenStack многие компании занялись ещё до формирования OpenStack Foundation. У такой широкой поддержки, конечно, были свои причины, но не будем сейчас останавливаться на них.

2. «Расщепление» проекта. В предыдущем пункте я написал, что немногие компании горели желанием включаться в проект Xen, но даже те из них, кто что-то делали, ничего не возвращали в основной публичный репозиторий (Upstream). Вот что пишет Питер на этот счет:

Кроме этого, риском является то, что другая компания может решить создать форк вашего продукта.И чуть ниже: Усугубляется положение тем, что чем успешнее open source проект, тем больше крупные компании хотят самостоятельно управлять кодовой базой. Я сам столкнулся с этим, когда был CEO в XenSource — многие крупные игроки ИТ-рынка заимствовали нашу кодовую базу, а мы не получали взамен никакой выгоды. Поправьте меня, если я ошибаюсь, в то время было два основных ИТ-игрока, которые специализировались именно на Xen — это компании XenSource и VirtualIron (вторая была поглощена корпорацией Oracle в 2009 году, и с тех пор продукт не развивается и не поставляется заказчикам.)

Но кроме этого, были продукты Sun xVM, Oracle VM, ну и конечно Xen в составе дистрибутивов Linux, среди которых RHEL и SLES. Эти компании слабо координировали разработку между собой, т.к. были прямыми конкурентами. И вместо объединения усилий по разработке получалось распыление сил.

Обратите внимание — главное преимущество модели Open Source, которое заключается в возможности объединить ресурсы компаний, в которых работают лучшие специалисты ИТ-индустрии, не сработало в случае XenSource. Только после передачи Xen “под крыло” LinuxFoundation в 2013 году, появился основной публичный репозиторий (Upstream), который не зависел от коммерческих компаний, но ценное время уже было упущено…

А как с этим в OpenStack? Первоначально, у проекта OpenStack тоже были признаки похожей проблемы, но тут есть два существенных отличия. Первое заключается в том, что основатели OpenStack — NASA и Rackspace не зарабатывали деньги именно на продаже ПО OpenStack. (Заметили, как “торчат уши” платформы, о которой говорит Питер Левайн?). А второе отличие в том, что в 2012 году было образовано OpenStack Foundation и именно это, на мой взгляд, помогло превратить компании из конкурентов в единомышленников. Посмотрите на картинку выше, у OpenStack  действительно есть много разных дистрибутивов (верхний левый угол). Но это именно дистрибутивы, а не форки проекта OpenStack и это очень важное отличие. Хотя надо признать, что в плане извлечения прибыли, наличие большого числа конкурентов это, конечно, минус — вероятность того, что выберут именно ваш дистрибутив многократно уменьшается, когда на рынок выходят компании, с известным брендом, большой историей успешных проектов и хорошим каналом продаж. Вот и среди участников OpenStack Foundation бывают конфликты на этой почве:

Red Hat начала сотрудничать с Mirantis, но последняя никогда не обещала использовать только RHEL. В июне 2014 г. она заявила о сотрудничестве с Canonical, намереваясь на базе Ubuntu создать свой собственный дистрибутив OpenStack. Ответная реакция Red Hat не заставила себя долго ждать: Red Hat решила прекратить поддержку RHEL в дистрибутиве OpenStack от Mirantis.

3. Слабая управляемость разработкой. Это самое «больное место» всех открытых проектов. OpenStack, конечно, это не «небольшой коллектив», но для OpenStack данный фактор так же актуален, как и для Xen:

И еще один аргумент — для небольшого распределенного коллектива разработчиков очень сложно определить грань между контролем стабильности кода и активной разработкой. У XenSource довольно долго были проблемы с включением их патчей в основную ветку ядра Linux, что приводило к усложнению процессов установки и обновления. (Кстати, об этом писали в комментариях к посту-переводу).

Этот фактор, еще больше предыдущего проявился в OpenStack. Было множество разговоров о том, что OpenStack погубит его собственное сообщество и о том, что  проблемы управления платформой остаются актуальными. На хабре есть отличная статья на эту тему, процитирую маленький кусочек из неё:

Поэтому, несомненно, круто ругать OpenStack и говорить, что «что-то обязательно нужно сделать», чтобы изменить проект. Но факт в том, что OpenStack пройдет через этот «трудный подростковый» период, когда он еще неуклюж и когда старшие думают, что «кто-то должен взять мальчика за руку». Можно ли усовершенствовать нынешний процесс? Безусловно. Но сообщество может сделать это самостоятельно, без того, чтобы «папа» (или «мама») говорили ему «прибраться в комнате». Думаю, что именно из-за этих проблем с управлением, в свое время отношение Citrix к OpenStack менялось от полной вовлеченности до абсолютной отстраненности. И кстати, на прошлой неделе был ровно год с тех пор, как Citrix вернулась к активной работе с OpenStack. Но история взаимоотношений Citrix и OpenStack заслуживает отдельного поста, когда-нибудь я обязательно его напишу.

А c какими ещё трудностями сталкиваются OpenSource-компаний? Итак, можно сделать вывод, что те препятствия, о которых писал Питер Левайн были в той или иной степени устранены благодаря созданию OpenStack Foundation и более тесному взаимодействию компаний, участвующих в проекте.

Я описал три препятствия, с которыми сталкиваются компании, пытающиеся вести бизнес, связанный с Open Source. Возможно, к ним стоило бы добавить «Недоверие к открытому ПО среди руководства компаний-заказчиков», но думаю, что это препятствие уже в прошлом. Или нет? Как вы считаете? Пишите в комментариях другие трудности, с которыми сталкиваются OpenSource-компании, обсудим. ;-)

habrahabr.ru

Cisco OpenSOC — open source решение для создания собственного центра мониторинга киберугроз

Как часто бывает, сначала ты ищешь решение на рынке и, не найдя его, делаешь самостоятельно и под себя. А потом получается настолько хорошо, что ты отдаешь это другим. Так было и с OpenSOC, open source решением для управления большими объемами данных в области кибербезопасности, которое было разработано в Cisco для своих собственных нужд, а потом было выложено на GitHub для всеобщего доступа.

Если вспомнить одну из наших предыдущих заметок про то, как выстроен процесс управления доступом внутри Cisco, то можно обратить внимание на количество устройств, которые нам приходится контролировать. А теперь давайте посмотрим, сколько данных, важных для безопасности, эти устройства генерят/пропускают через себя ежедневно:

  • 47 Терабайт данных сетевого трафика
  • 1,2 триллиона сетевых событий
  • 4,8 миллиарда DNS-запросов для системы Cisco Umbrella
  • 4,1 миллиона e-mail сообщений для системы Cisco Email Security Appliance
  • 45 миллионов Web-запросов (URL) для системы Cisco Web Security Appliance и Cisco Cloud Web Security
  • 15 миллиардов потоков NetFlow для системы Cisco Stealthwatch
  • 1,5 миллиона сигналов тревоги от Cisco NGIPS
  • 10 тысяч файлов для системы Cisco AMP ThreatGrid.

Всего же мы собираем и храним для целей анализа 4 ТБ данных ежедневно. Это огромный объем информации, для эффективного управления которой нашей службе кибербезопасности был просто необходим специализированный инструментарий. Первое, что приходит в голову, когда возникает тема управления событиями безопасности, — это SIEM (Security Information Event Management), и мы, как и многие другие компании в мире, тоже пытались использовать такие решения. Но к сожалению, ни одно решение SIEM не смогло решить наши задачи и причин тому было несколько:

  • сложность индексации данных не от средств защиты информации, включая и поддержку форматов данных от нами разработанных средств ИБ (в данном случае речь идет не о портфолио Cisco, которые мы не только продаем заказчикам, но и используем сами, а собственноручно написанных нашими инженерами по ИБ различных “тулзов” под те или иные задачи)
  • серьезные проблемы с масштабированием и скоростью обработки данных (поиск в всего 10 ГБ данных занимал больше 6 минут)
  • сложность в кастомизации решения под наши задачи и необходимость переписывать практически с нуля все встроенные правила, которые генерили слишком много ложных срабатываний
  • сложность работы со структурированными и неструктурированными данными.

В качестве альтернативы существующим SIEM-решениям мы стали использовать Splunk, который позволил решить многие перечисленные выше проблемы, да еще и стоил дешевле. Но… Splunk, несмотря ни на что, все-таки не смог решить все наши задачи; только 95% из них. Он собирал данные от наших антивирусов, МСЭ, IDS/IPS, систем контентной фильтрации и т.п. Но 5% информации, очень важной для нашей группы реагирования на инциденты, оставалась за бортом. Очень важной информации об угрозах, нападающих, их методах и тактике. Не так-то просто было обогатить имеющиеся в Splunk данные от средств защиты этой информацией. Сначала мы создавали различные простые скрипты и утилиты, каждый(ая) из которых решали свои узкие задачи. Потом возникла идея сделать свое решение, превратив его в полноценную платформу для анализа больших данных в области кибербезопасности (Threat Intelligence Platform).

Так как данная система, получившая название OpenSOC, создавалась для собственных нужд, то никаких разработчиков, занимающихся созданием продуктов Cisco, привлекать было нельзя — приходилось использовать только собственные силы службы ИБ. Поэтому вполне логично, что мы не стали писать все с нуля, а задействовали open source решения, среди которых главную роль сыграли:

  • Flume (https://flume.apache.org) — распределенный инструмент для сбора и агрегации больших объемов данных из разных источников в разных форматах (Syslog, SNMP, Netflow, JMS, HTTP, файлы, PCAP и т.д.). В OpenSOC Flume собирает телеметрию от различных средств защиты, приложений и оборудования.
  • Kafka (http://kafka.apache.org) — распределенный высокопроизводительный брокер сообщений (шина).
  • Storm ([http://storm.apache.org]) — распределенный обработчик данных в реальном времени, который получает данные для выполнения вычислений над ними в том числе и от Kafka. Встроенные обработчики позволяют выполнять различные задачи над событиями безопасности — фильтрацию, нормализацию, разбор (парсинг), обогащение сведениями об угрозах. В последнем случае нормализованные данные расширяются контекстом по ИБ — геолокацией, репутацией IP, информацией из Whois и т.п. В публичный вариант OpenSOC по умолчанию входит всего 4 обработчика, занимающихся обогащением исходных данных.

  • Hadoop ([hadoop.apache.org]) — набор утилит и библиотек для разработки выполнения распределенных программ, например, для поисковых и контекстных механизмов. Лежит в основе технологии “Больших данных”. Кластер Hadoop в OpenSOC хранит все данные
  • Elasticsearch — система поиска и индексации больших объемов данных в реальном времени.
  • HBase — нереляционная распределенная база данных. В OpenSOC обеспечивает долгосрочное хранение сетевых пакетов (PCAP).
  • Hive — система управления базами данных на базе Hadoop, в том числе HBase. В OpenSOC обеспечивает долгосрочное хранение событий безопасности.
  • MySQL — реляционная система управления базами данных. В OpenSOC хранит метаданные Hive, а также иные данные, например, геолокационные.
  • Kibana — система визуализации.

OpenSOC стал унифицированной платформой анализа данных безопасности в Cisco, которая:

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

С технической точки зрения в основе лежит кластер из 45 серверов Cisco UCS (1440 процессоров, 12 ТБ памяти), вышеупомянутые технологии Hadoop, Hive, HBase, Elasticsearch и ряд других. Объем хранилища OpenSOC в Cisco составляет 1,2 ПБ. В одной таблице находится свыше 1,3 триллионов строк.

Cisco OpenSOC мы стали создавать в 2013-м году и в сентябре 2013-го появился первый прототип. На половине пути, в декабре 2013-го года к нам присоединилась компания Hortonworks, давшая толчок развитию проекта и привнесшая немало интересных идей по использованию open source компонентов для высокопроизводительной и распределенной платформы, которой должен был стать OpenSOC. В марте 2014 года мы завершили разработку OpenSOC, а в сентябре 2014 мы сделали его публичным и выложили на GitHub.

В базовой комплектации поддерживает функции сбора данных, их хранения и анализа, а также обогащения сведениями об угрозах, жертвах, нападающих. Число адаптеров, которые по сути и выполняют функцию корреляции различных событий, в публичной версии OpenSOC невелико. Как и в случае с большинством SIEM, правила корреляции “из коробки” работают не очень хорошо, и поэтому в OpenSOC их надо писать самостоятельно под каждого потребителя системы. В группе компаний NTT, например, в качестве инструмента для создания триггеров и правил корреляции используется open source движок Esper.

После успеха OpenSOC внутри компании, его было решено развивать в качестве основы для наших аутсорсинговых услуг. Cisco Active Threat Analytics (ATA) по сути представляет собой распределенный Security Operations Center (SOC), который берет на себя функции мониторинга и управления информационной безопасностью наших заказчиков. Развивая OpenSOC и внутри компании и в рамках Cisco ATA, мы столкнулись с тем, что лицензия Apache 2.0 не всегда позволяет нам реализовывать все, что мы хотели. Да и только open source компонентами мы уже не могли ограничиваться для решения всех возникающих у нас задач.

Было принято решение разделить развитие OpenSOC на два направления. Первое оставалось в Cisco, для нужд нашей службы ИБ и сервиса ATA. А вот второе направление оказалось очень интересным. OpenSOC вошел в инкубатор Apache, став полноценным проектом, развиваемым сообществом open source. OpenSOC поменял и имя, став называться Apache Metron. В апреле 2016-го года вышла первая версия Apache Metron 0.1. Идеология при этом осталась неизменной и пользователям OpenSOC будет легко перейти на Apache Metron.

Cisco OpenSOC получил свое развитие и в другом направлении. На его основе компания MapR создала свое решение Security Log Analytics, которое используется и упомянутой выше компанией NTT, и банком Zions Bank, и другими заказчиками. Но, как и в случае с Apache Metron, идеология OpenSOC остается неизменной — анализ больших данных в целях кибербезопасности и возможность работы не только со структурированными, но и с неструктурированными данными. Это позволяет существенно расширить функции мониторинга угроз в компании и «видеть» гораздо больше чем раньше, используя и большее число источников информации. Например, в компании Cisco за последние несколько лет произошел сдвиг от привычных всем статических правил и сигнатур в сторону анализа поведения, аномалий и threat intelligence. Все это было бы невозможно без Cisco OpenSOC.

Автор: Cisco

Источник

www.pvsm.ru

OpenSOC/opensoc-ui: User interface for OpenSOC

User interface for the OpenSOC platform. The UI is a modified version of Kibana 3 which is served by a node JS backend.

Deployment

Quick start

  • Create a config file: echo "{}" > ~/.opensoc-ui
  • Install opensoc-ui: npm install -g opensoc-ui
  • Start opensoc-ui: opensoc-ui

This will start the server in the same process. To start/stop a daemonized server use opensoc-ui start and opensoc-ui stop. You can view the location of the log file with opensoc-ui logs. The daemon is started using the forever node package. You can tack on other command line flags that the library supports. More information about this is available at https://www.npmjs.com/package/forever.

Next, head over to the "Configuration" section for more information about the config file.

Indepth guide

Step 1: Setup required services

OpenSOC UI requires access to the following services:

  • ElasticSearch with OpenSOC data.
  • PCAP Service for access to raw pcaps.
  • Active Directory or LDAP for authentication.

In addition raw PCAP access is restricted to any set groups. If you are using OpenLDAP, you must configure the memberOf overlay to provide reverse group membership information. Once these services are up and running, you are ready to setup the OpenSOC UI.

Step 2: Install required packages

The commands in this section are for deployment on Ubuntu 14.04. These instructions will need to be altered for Ubuntu 12.04 as the nodejs package is too old. It should be straight forward to adapt these instructions to other architectures as long as you are able to install the required packages.

apt-get update apt-get install -y libpcap-dev tshark nodejs npm ln -s /usr/bin/nodejs /usr/bin/node npm install -g opensoc-ui
Step 3: Configure the UI

Before you can spin up the UI, you need to point it to the various services and configure other deployment specific settings. The application will look for an application config using in the following places in order:

  • ~/.opensoc-ui
  • Path specified by the environment variable OPENSOC_UI_CONFIG
  • Path specified by the npm package config setting path. Once the package is installed, this can be set with npm config set opensoc-ui:path "/path/to/config.json"
Step 4: Test the server

This will run the server without daemonizing that may make it easier to debug any issues with your setup. You can exit the test server with Ctrl+C.

Step 5: Start daemonized server

Incidentally, to stop the server use:

and to restart it use:

For logs:

Configuration

The OpenSOC-UI is configured using a JSON file.

Fields
  • auth: Set to true to enable authentication with ldap.

  • host: IP address the server should listen on.

  • port: Port the server should listen on.

  • secret: A random string that used to sign cookies.

  • elasticsearch: Must be a JSON object with the following keys:

    • url: URI to OpenSOC ElasticSearch cluster.
  • ldap: Only required if auth is set to true. Must be a JSON object with the following keys:

    • url: URI to LDAP service.
    • searchBase: LDAP search base.
    • adminDn: LDAP admin distinguished name.
    • adminPassword: LDAP admin password.
  • pcap: Must be a JSON object with the following keys:

    • url: URI to the OpenSOC PCAP API service. The PCAP service uses the prefix pcap/pcapGetter. This should be included as it is a configurable in the PCAP service. For clarification, see the example config below.
    • mock: This should be set to false.
  • permissions: Must be a JSON object with the following keys:

    • pcap: List of AD/LDAP groups that should have access to raw pcap data.
Example config

The following is an example config.json file. This config will not work for you in production but is meant to serve as an example. It assumes that ElasticSearch, LDAP, and the OpenSOC PCAP service are running on 192.168.100.1:

{ "secret": "b^~BN-IdQ9gdp5sa2K$N=d5DV06eN7Y", "elasticsearch": { "url": "http://192.168.100.1:9200" }, "ldap": { "url": "ldap://192.168.100.1:389", "searchBase": "dc=opensoc,dc=dev", "searchFilter": "(mail={{username}})", "searchAttributes": ["cn", "uid", "mail", "givenName", "sn", "memberOf"], "adminDn": "cn=admin,dc=opensoc,dc=dev", "adminPassword": "opensoc" }, "pcap": { "url": "http://192.168.100.1/pcap/pcapGetter", "mock": false }, "permissions": { "pcap": ["cn=investigators,ou=groups,dc=opensoc,dc=dev"] } }

Development

These instructions are only for local development on the OpenSOC UI. Development is done in an Ubuntu 14.04(trusty) virtual machine that is provisioned using vagrant. It is intended to provided an isolated environment with all the dependencies and services either installed or stubbed. None of these instructions should be used for deployments. If that was not clear enough, these instructions are NOT FOR DEPLOYMENT.

Step 1: Install Virtualbox and Vagrant

Download the latest package for your platform here:

  1. Virtualbox
  2. Vagrant
Step 2: Get the code
git clone [email protected]:OpenSOC/opensoc-ui.git cd opensoc-ui git submodule update --init
Step 3: Download and provision the development environment

You might see a couple warnings, but usually these can be ignored. Check for any obvious errors as this can cause problems running the portal later.

Step 4: SSH into the vm

All dependencies will be installed in the VM. The repository root is shared between the host and VM. The shared volume is mounted at /vagrant. Use the following command to ssh into the newly built VM:

Step 5: Ensure tests pass

You can now run the tests:

Step 6: Launch the server

The nodemon utility automatically watches for changed files and reloads the node server automatically. Run the following commands from with the vagrant vm.

vagrant ssh cd /vagrant npm install -g nodemon nodemon

You can then access the OpenSOC ui at http://localhost:5000.

Two default accounts: mail: [email protected], [email protected] The default password is: opensoc

Seed data for development

When the VM is provisioned, elasticsearch and LDAP are provided some seed data to get you started. This fake data tries to mimic data from the OpenSOC platform to set you up for local development without running the entire platform. Occasionally, you may need to regenerate your seed data. To do this, use the following command.

On the other hand, to duplicate another ES installation use:

ES_HOST=changeme.com script/es_fetch.js

You should now have seed data in seed/es. You can load this into the dev ES instance with:

For authentication, make sure you set up the LDAP directory structure with:

github.com


Смотрите также