Криптоанализ резиновым шлангом и методы его предотвращения

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

Автор «Книги шифров» — Сингх Саймон.

Какие способы взлома эффективнее? Поиск уязвимостей в программах? Полный перебор? Разгадывание хэша? А вот и не угадали. Именно атаки на уровне пользователя эффективнее всего справляются со своей задачей.

Одна из основных проблем криптографии как раз и состоит в том, что человек является слабым звеном в криптосистеме.

Spoiler The Mandalorian

765c2dd43452745b7e33ca7ebf01e95a.jpeg

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

94926547aa2d8d80e0023a48f56838fc.png

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

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

Основные типы социальной инженерии.

  • Троянский конь - атака, при которой пользователь получает письмо, которое вызывает заинтересованность в посещении какого-либо сайта. Это могут быть выгодные акции, выигрыш в лотерее и т.д.

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

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

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

  • Обратная социальная инженерия — атака, в ходе которой «бандит» создаёт такие условия, чтобы пользователь самостоятельно передал необходимые данные, например, для ускорения процесса.

  • Плечевой сёрфинг — наблюдение за действиями жертвы при введении личных данных.

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

Теперь перечислим некоторые способы защиты от таких методов:

  • Сокрытие своих данных и паролей.

  • Повышение знаний в сфере информационной безопасности.

  • Наличие антивирусного ПО.

  • Наличие представления о возможных действиях социальных инженеров.

  • Использование лицензионного ПО.

  • Внимательное отношение к вещам, хранящим ваши данные.

  • Использование различных надёжных паролей для сайтов.

  • Неспешность в действиях и проверка полученной информации.

Это не исчерпывающий список, но то, чему стоит уделить внимание.

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

67c32dc264f1634656338cbaa60f3817.jpg

Один из способов предотвращения такого вида атак основан на использовании зашифрованного текста в качестве словаря для сокрытия истинно-секретного сообщения. Если человек будет вынужден отдать ключ, то злоумышленник получит только обманное сообщение, которое служит отвлечением. Истинно-секретное сообщение может быть получено с использованием набора чисел, которые представляют местоположения кода ASCII, включенного в зашифрованный текст сообщения сообщения-обманки. Изменение этого набора чисел приведет к созданию нового истинно-секретного сообщения. Шифрованный текст сообщения-обманки может использоваться для сокрытия нескольких секретных сообщений и может быть отправлен только один раз. Но при этом сообщение-обманка должно быть основано на реальных событиях, чтобы убедить нападавшего с резиновым шлангом, что он или она получили правильное сообщение.

Другим же, интересным, но не до конца изученным способом является применение неявного обучения. Что же это такое? Неявное обучение — это случайное заучивание сложной информации без осознания того, что было изучено (очень знакомо студентам). Основным свойством такого знания является то, что оно может быть передано только через обучение, а получено через личный опыт. Самым простым примером такого обучения является езда на велосипеде. Когда человек учится этому навыку, он наблюдает, а затем пытается повторить. Только лишь чётко сформулированные теоретические знания не помогут этому научиться.

Американскими исследователями был поставлен эксперимент (№1), направленный на изучение неявного обучения и анализ применимости такого метода для идентификации пользователя. Испытуемым было дано 2 задания:

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

  • Второе задание: участникам задаётся вопрос, видили ли они данную последовательность в предыдущем задании или нет. Требуется выразить уверенность по шкале от 1 до 9.

Я тоже попробовала выполнить эти задания. Если вы, как и я, хотите попробовать, то вот вам ссылка* (https://www.reberlab.org/file/show/SISL? group=667b435bdb923a53). Когда я играла, темп был довольно высоким и поэтому было невероятно сложно отслеживать последовательности. Сложилось ощущение, что большую часть времени мои пальцы двигались сами по себе.

*К сожалению, никаких результатов выполнения вы не увидите.

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

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

С исследованиями по неявному обучению можно ознакомиться в статье:
Ego Depletion Impairs Implicit Learning (Kelsey R. Thompson, Daniel J. Sanchez, Abigail H. Wesley, Paul J. Reber.)

Желаю никому никогда не встречаться с таким типом криптоанализаторов!

aef2234f0675fafd2469684199aa5e68.jpg

© Habrahabr.ru