Хабрахабр

Проблема классификации хакеров по опасности

Есть только это пространство, полностью знакомое, в котором нет никаких неожиданностей.
Оно полностью освещено, каждый сантиметр под присмотром.

Вооруженные руки. Но за границей периметра непроглядная тьма такая, что и на метр ничего не разглядеть.
И из этой тьмы тянутся руки. Хорошо известно как он выглядит и на что он способен. С одной целью — уничтожить весь этот свет.
И вот из тьмы показывается пистолет. Desert Eagle.

Но как понять чья рука его держит?

Это наёмник, который и глазом не моргнёт перед выстрелом, или дошкольник, который едва удерживает пистолет, и выстрел из которого его самого убьёт?
Кажется, вступление получилось намного интереснее самой статьи.

Давайте я попробую ещё раз, менее литературно.

Работа над ошибками

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

Годы прошли, но часть вопросов, которые были подняты в моём дипломе, до сих пор меня волнует.
Я более чем уверен, что я очень многое упустил в классификации нарушителей и хотел бы увидеть ваши мысли по этому поводу в комментариях.

Теперь точно начало

Можно ли использовать классификации нарушителей безопасности иначе, кроме как для создания модели нарушителя безопасности?

Мой диплом был в частности о том, что да, можно.

Но для начала давайте разберемся с определениями.

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

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

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

Классифицируем?

Итак, мы пришли к классификации хакеров по опасности для системы. Ну а как можно классифицировать? Да можно взять три градации: «низкая опасность», «средняя опасность» и «высокая опасность».

Спасибо, что прочитали мою небольшую статью, я рад, что вы потратили на неё своё время. Всё, разобрались.

На самом деле мы потихоньку приближаемся к проблеме, которая меня волнует: можно ли автоматизированно классифицировать хакеров?

Поэтому сначала посмотрим что есть сейчас.

Мне удалось найти два основных подхода:

  • по ресурсам;
  • по знаниям.

А теперь посмотрим что же мне в них не нравится.

Классификация по ресурсам

Эту классификацию можно найти у ФСТЭК. Если быть точнее, то классифицируют они не самих нарушителей, а их потенциал:

  1. Нарушители с базовым (низким) потенциалом.
  2. Нарушители с базовым повышенным (средним) потенциалом.
  3. Нарушители с высоким потенциалом.

В нарушители третьей категории отнесены «Специальные службы иностранных государств (блоков государств)».

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

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

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

Либо уже при расследовании инцидента экспертным методом определить сколько сил и средств было затрачено и сколько человек в этом участвовало.

Классификация по знаниям

Такая классификация обычно выглядит как-то так:

  1. Скрипт-кидди.
  2. Хацкеры.
  3. Хакеры высокого уровня.

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

Так в чём проблема?

Проблема в том, что нельзя дать написать атакующему какой-нибудь ЕГЭ.

Даже в более контролируемых условиях экзамена выводы могут быть неправильные. В условиях неопределенности сложно сделать вывод о знаниях.

Детектировать инструментарий?

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

Т.е., по сути, я говорю о том, что такая система подвержена ошибкам и первого, и второго рода (как завышение опасности, так и занижение).

Может проще?

Есть ещё метод, который я использовал в своём дипломе — использование CVE, а если быть точнее, то CVSS.

В описании уязвимости CVSS есть такая строка как «сложность эксплуатации».

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

Так что же мне и тут не нравится? Кажется, идеально: смотрим какие уязвимости эксплуатирует хакер, ищем их в базе и присваиваем хакеру оценку опасности.

А он может ошибаться в оценке, он может иметь свой интерес (намеренно занизить или завысить оценку), да ещё что угодно, ведь это человек. Оценку эксплуатации уязвимости производит эксперт.

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

Вместо выводов

Задумавшись над решением этой задачи я понял, что, в общем-то, я решить её не смогу — у меня нет необходимых знаний.

Быть может я пропустил очевидный подход? Быть может Хабр подскажет по каким критериям можно классифицировать хакеров?

А самое главное — нужно ли это вообще?

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

Не смотря на чрезвычайно простую постановку вопроса («как определить уровень хакера?») дача ответа совершенно не очевидна.

Чем-то похоже на машинное зрение и распознавание образов.

Только намного скучнее.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть