Security awareness — больше, чем просто фишинг. Часть 1

Чаще всего, когда читаешь про security awareness или повышение киберграмотности, то речь идет о фишинговых атаках — поддельные письма, сайты, странные вложения и прочее. Конечно, фишинг по-прежнему остается одним из основных сценариев атаки на сотрудников, но повышение осведомленности не должно ограничиваться только этим.

Мы в QIWI на протяжении последних 7 лет проводим недели безопасности, в рамках которых освещаем различные аспекты информационной безопасности. Расскажу про разные форматы заданий, которые мы проводили, какие плюсы и минусы были в каждом. Надеюсь, что этот опыт будет вам полезен при проведении аналогичных активностей.

image-loader.svg

Неделя безопасности проводится раз в году и, как и следует из названия, занимает 1 неделю. Сами активности разбиваются на 2 или 3 блока:

  • сессия, которая понятна и проста рядовым сотрудникам (далеким от IT)

  • сессия для IT-шников

  • активности для выделенных групп (например, топ-менеджмент или продуктовые PM-ы)

Все активности должны так или иначе нести образовательный характер — доносить какую-то мысль в рамках киберграмотности.

Прежде чем начать планировать активности:

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

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

  • начать готовиться за пару месяцев до мероприятия

  • геймификация заданий. Никаких скучных презентаций и тестов

  • в конце мероприятия не поленитесь собрать статистику и фидбек

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

CTF

Крайне важно отдельное внимание уделять IT-сотрудникам — разработчики, администраторы, продуктовые аналитики и т.д. Практически ежегодно мы проводим индивидуальные соревнования CTF в формате jeopardy. Задания подбираются разной сложности и разных направлений. Для того, чтобы охватить как можно больше разных групп сотрудников, стоит выбирать различные категории — web, reverse, forensic, osint. Чаще всего, конечно, все равно превалирует web, но другие категории заданий не менее важны. По сложности мы стараемся делать low/medium задания, примерно в рамках 50–300 очков (к примеру на различных CTF стоимость сложных заданий может достигать 1500 очков).

9bd9d6cdb068ecf787fc1fd81e9bdefe.jpeg

В рамках этой активности одновременно преследуется несколько целей:

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

  • налаживание коммуникаций между IT/OPS и Information Security. Наверняка какое-то количество тасков не будет решено и участники будут выяснять способы решения и лишний раз смогут подружиться с безопасниками.

  • headhunting — вы можете даже не догадываться, что в соседнем отделе сидит разработчик, который давно хотел пойти в безопасность, но все время это откладывал. Один такой переманенный разработчик или админ, который хочет и умеет разбираться в безопасности обычно окупает проведение всего CTF.

Советы из опыта:

  • Учебные стенды. До проведения самого CTF или в первый его день стоит развернуть учебный стенд для OWASP TOP 10 (webgoat или mutillidae) и показать на этом примере как пользоваться основным инструментарием (burp/zap и тд) и эксплуатировать основные уязвимости.

  • Подсказки. Чтобы сохранять спортивный интерес и из-за разного уровня подготовки участников мы публикуем различные подсказки — как для заданий, которые никто не смог решить (в этом случае без понижения стоимости), так и для заданий, которые смогли решить немногие (в этом случае с понижением стоимости задания).

  • Разбор заданий. Обязательно после проведения CTF делать разбор заданий, которые смогли решить не все участники. Можно отдельно попросить победителей рассказать про те задания, которые решили они.

  • Одни и те же победители. Скорее всего на второй, третий год проведения таких соревнования в топе будут одни и те же участники. Конечно запрещать им принимать участие не стоит, но у себя мы их просто исключаем из итогов для вручения призов. Аналогично делаем и для безопасников, которые хотят принять участие — их результат не влияет на общий скорборд, делаем отдельное подведение итогов внутри отдела.

  • Реалистичные вектора и таски. Задания должны быть приближены к каким-то настоящим приложениям и уязвимостям, если придумывать чистую синтетику, то будет не интересно проходить и также не будет «образовательного» характера. Также отдельный профит будет, если задания будут сделаны конкретно под ваш профиль компании и вектора атак характерные для реальных кейсов.

  • Разработка. Можно конечно разработать и scoreboard и сами задания самим, но мы решили подойти более практично к этому вопросу и заказываем разработку таких заданий у тех компаний, кто постоянно проводят такие соревнования на внешних платформах. Обычно у них уже есть какие-то готовые задания и сделать небольшие доработки под вас будет не так проблематично. Не буду здесь вставлять рекламу тех партнеров, которые помогали нам, но в личке смогу подсказать контакты.

  • Внешний CTF. Если набирается достаточное количество тех, кому тема CTF стала интересной, то отдельно можно попробовать принять участие в публичных jeopardy CTF совместно с командой ИБ. Отлично помогает сплотить коллектив, тем более в текущее ковидное время. Список CTF-ов можно найти, например, тут

  • Attack-and-Defense CTF. Через пару лет обычный task-based CTF наскучит, и есть смысл попробовать формат attack-and-defense. Формат более сложный, как с точки зрения организации, так и с точки зрения участия и подведения итогов. Мы пока успели только один раз провести соревнования в таком формате. За счет того, что это формат более сконцентрированный по времени — лучше проводить в вечернее время, после работы. Мы делали рандомные команды из записавшихся заранее участников, меняя атакующих и защищающихся. Далее очки подсчитывались для всех участников команды. Из-за этого может произойти перевес — что кто-то из команды фактически не принимал участия, но получил много очков. Выравнивали это в конце руками, убирая из итогов участников, которые были номинально.

Суммируя свои впечатления от внутреннего CTF — обязательно для проведения, если вы еще ни разу не делали. Полнота покрытия — примерно около 10% от IT-сотрудников. Бюджет — начать можно и бесплатно (webgoat и тд), но если делать качественный CTF, то будьте готовы заплатить минимум 400–500к рублей. При этом мы стараемся делать три первых места с довольно хорошими призами.

Quiz

Чтобы охватить сотрудников, далеких от sql injection или вообще от IT, мы проводим различные викторины. Платформ для проведения таких активностей много, в тч и бесплатных. При этом за счет такого формата можно совместить обучающие задания в рамках как каких-то внутренних процессов/инструментариев и тд, так и в рамках общих вопросов по информационной безопасности. Отдельным уровнем также можно сделать набор заданий для IT, например, найти уязвимость в участке кода.

image-loader.svg

Советы из опыта:

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

  • С каждым годом придумывать 30–50 вопросов становится все сложнее. И аналогично вовлеченность сотрудников падает, поэтому стоит проводить не каждый год и менять форматы заданий.

Quiz это наиболее простой игровой формат, в рамках которого можно привлечь внимание к вопросам ИБ и донести какую-то информацию до сотрудников. Плюс стоит учитывать особенности компании и в качестве платформы использовать что-то локальное — например slack или telegram-ботов, если это принято в качестве корпоративной механики общения. Полнота покрытия — около 20–30% от общего числа сотрудников. Бюджет — если делать просто викторину в формате вопрос-ответ, то можно обойтись бесплатными решениями. Для разработки полноценной активности, в которой будет подобие сюжетной линии, придется заплатить минимум 300–400к рублей. Призы тоже необходимы, но в отличие от CTF, делаем больше призовых мест (около 10) и меньше стоимость самих призов.

Квесты

Многие любят принимать участие в оффлайн-квестах, когда вас запирают в комнате и нужно решать логические или иногда не очень логические задачки и найти выход из комнаты. Мы решили сделать такой же квест, но с блэкджеком заданиями связанными с IT/ИБ. Сразу скажу, что формат крайне хлопотный, как с точки зрения организации, так и с точки зрения основной цели проведения — обучение сотрудников киберграмотности.

image-loader.svg

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

Приведу примеры таких заданий:

Линейка 1. На столе стоят 2 компьютера.  Один из них с паролем, второй нет. На компьютере без пароля на рабочем столе лежит текстовый файл с названием «Pass», команда находит этот файл, там множество простых паролей и один сложный.

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

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

Показываем простые и сложные пароли, учим отличать их друг от друга.

Нельзя оставлять пароли в документах и в открытом виде.

Линейка 2: Подсказка в урне — Ящик на 3 действия — Очки — белый монитор — Сейф с крокозябрами — Карточка №2

Команда видит шредер, из которого торчит яркая подсказка, как только они подходят к нему и начинают пытаться прочитать подсказку шредер съедает документ (шредер управляется с пульта). Рядом со шредером стоит корзина, где точно такой-же документ лежит, но разорванный. Собирают его кусочки, читают текст-подсказку «Ящик для документов открывается с удара».

Находят ящик для документов, он закрыт. Бьют по нему, открывается первая секция, внутри они находят фонарь с посланием (посвети), светят на вторую секцию, она открывается, внутри находят свисток и послание (посвисти). Громко свистят, открывается третья секция, там лежат специальные очки и послание «Осмотрись». Команда надевает очки, и начинает осматриваться в комнате.  Все это время в комнате стоял монитор с белым экраном, на котором не было никакой информации.

Если посмотреть на этот монитор через найденные очки, то на нем появляется изображение. Команда видит на нем непонятные символы, точно такие же символы есть на сейфе в этой комнате (Сейф находится на удалении от монитора). Команда делится на 2 части, одни остаются у монитора, другие идут к сейфу.

Те, кто остались у монитора, диктуют символы, те, что у сейфа, вводят пароль на сейфе. Открывают сейф, внутри находят вторую карточку.

Показываем, что важные документы нужно уничтожать при помощи шредера

Советы из опыта:

  • Сложно найти компанию на рынке, которые согласятся и смогут сделать такой квест. Даже если и согласятся, сценарий и задания целиком за вас не придумают. Мы обычно проходим 2–3 итерации изменений и корректировок сценария. Надеюсь, не сочтут рекламой, укажу компанию, которая для нас занимается такой разработкой.

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

  • Игровые задания. Придумать задания с элементами обучения на 20–30 минут практически невозможно, учитывая ограничения инвентаря, поэтому часть заданий будут просто игровыми — например, собрать слово из пазла или разгадать какой-то простой шифр. Ничего с этим не поделаешь, стоит принять и простить :)

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

После тотального перехода многих компаний на удаленку этот формат более сложно использовать, но может и наоборот — помимо направленности на киберграмотность принесет еще пользу в виде небольшого тимбилдинга.

Вот тут можно посмотреть, как выглядел последний квест, в стиле mr. Robot. Полнота покрытия — около 120 человек (при условии 2 дней), в одной команде обычно принимают участие около 5–6 человек. Бюджет — самый дорогой формат из рассматриваемых, за счет индивидуальной разработки, необходимости использования инвентаря или даже его создания под заказчика, поэтому будьте готовы отдать минимум 1 млн рублей, если устали от стандартных форматов.

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

Расскажите, есть ли у вас в компании подобные активности и насколько интересно описание следующей части?

© Habrahabr.ru