- •Обнаружение вторжений на основе анализа фрагментов унитарного кода
- •1. Методы обнаружения вредоносных фрагментов унитарного кода в телекоммуникационных системах
- •1.1.1. Логическое моделирование цифровых схем с помощью эвм
- •1.1.2. Моделирование неисправностей цифровых схем
- •1.1.3. Моделирование процесса тестовой диагностики цифровых схем
- •1.1.5. Одноканальный сигнатурный анализатор
- •1.1.6. Методы, использующие сигнатуры вторжений
- •1.2. Методы и средства структурного обнаружения потенциально опасных фрагментов унитарного кода
- •1.2.1. Метод неинтеллектуального дизассемблирования
- •1.2.2. Метод интеллектуального дизассемблирования от точки входа
- •1.2.3. Метод потокового анализа
- •1.2.4. Метод разметки (предиката)
- •1.2.5. Дизассемблер автоматизированного анализа
- •1.3. Методы и средства системного обнаружения потенциально опасных фрагментов унитарного кода
- •1.3.1. Метод статистического анализа
- •1.3.2. Метод эвристического анализа
- •1.4. Этапы проведения анализа потоков унитарного кода
- •2. Программно-аппаратный комплекс обнаружения вредоносных фрагментов унитарного кода в телекоммуникационных системах
- •2.1. Методика оценки потенциальной опасности фрагментов унитарного кода
- •2.2. Алгоритм оценки потенциальной опасности фрагментов унитарного кода
- •2.3. Структурно-функциональная схема программно-аппаратного комплекса анализа фрагментов унитарного кода
- •2.4. Риск-анализ использования технологий обнаружения информационных воздействий
- •394026 Воронеж, Московский просп., 14
1.1.5. Одноканальный сигнатурный анализатор
Типовая структурная схема сигнатурного анализатора состоит из регистра сдвига и сумматора по модулю 2, на входы которого подключены выходы разрядов регистра в соответствии с порождающим полиномом p(x). Управляющими сигналами сигнатурного анализатора являются СТАРТ, СТОП и СДВИГ. Сигналы СТАРТ и СТОП формируют временной интервал, в течение которого осуществляется процедура сжатия информации на анализаторе. Под действием сигнала СТАРТ элементы памяти регистра сдвига устанавливаются в исходное состояние, как правило, нулевое, а сам регистр начинает выполнять функцию сдвига на один разряд вправо под действием синхронизирующих сигналов СДВИГ. По истечении 2m-1 тактов функционирования сигнатурного анализатора на его элементах памяти фиксируется двоичный код, который представляет собой сигнатуру, отображаемую в виде 16-ричного кода.
Таким образом, путём формирования тестовой последовательности на входах анализируемого цифрового устройства для каждого его полюса находим эталонные значения сигнатур, множество которых запоминается и в дальнейшем используется для сравнения со значениями сигнатур, снимаемых с проверяемых устройств. Любое отличие реально полученной сигнатуры от эталонной свидетельствует о том, что полюс схемы функционирует отлично от случая исправного состояния устройства. Причина, вызвавшая отличие сигнатур на данном полюсе, может быть установлена последовательным анализом сигнатур от указанного полюса к входам устройства.
Эффективность использования сигнатурного анализатора ограничивается наличием в нём только одного информационного входа, в то время как количество выходов сложных цифровых узлов достигает значительных величин. Исследование подобных узлов осуществляется с использованием нескольких сигнатурных анализаторов, путём свёртки по модулю два выходных последовательностей или с применением некоторых других схемных решений.
Сигнатурный анализатор можно рассматривать как линейную последовательную машину без выходов, определяемую в виде совокупности двух объектов C=(A,B).
Для вычисления суммы длин минимальных расстояний полинома степени r выполняем следующие действия:
1. Строим бинарную (r,r) матрицу A:
0 |
0 |
0 |
... |
0 |
a0 |
1 |
0 |
0 |
... |
0 |
a1 |
0 |
1 |
0 |
... |
0 |
a2 |
0 |
0 |
1 |
... |
0 |
a3 |
............................ |
|||||
0 |
0 |
0 |
... |
1 |
ar-1 |
2. Строим вектор-столбец B размерности r, у которого первая компонента равна 1, а остальные являются нулями.
3. Строим бинарную (r,n)-матрицу
Hc(n) = [Ak-1B, Ak-2B ... A1B, A0B].
В операции умножения бинарных матриц под умножением бинарных элементов понимаем их конъюнкцию, а под сложением сложение по модулю 2.
Обозначим минимальное расстояние dc(n), где n — длина входной последовательности. СА обнаруживает dc-1 ошибок. Если полином примитивный, то для n=2r dc(n)=2.
Допустим, что для n, которое больше r dc(n)=d. Если матрица А неособенная (это будет тогда и только тогда, когда a0=1), то для вычисления dc (n+1) нужно проверить, существуют ли такие наименьшие d' меньше d-2 и n-1 больше k1...kd' и больше нуля, что AnB можно получить линейной комбинацией из d' столбцов из матрицы H, которые расположены после n-того столбца.
Если такое d' существует, то dc(n+1)=d'+2, иначе dc (n+1)=dc(n)=d.
Суммируем длины всех минимальных расстояний, полученных при длинах входных последовательностях от 1 до 2r-1, где r — старшая степень полинома.
Чем выше сумма длин полиномиальных кодов, тем сигнатурный анализатор эффективнее.
Сигнатурный метод анализа основан на том, что большинство атак на информационно-телекоммуникационную систему известны и развиваются по схожим сценариям. В данном подходе сигнатуры вторжений определяют характерные особенности, условия, устройства и взаимосвязь событий, которые ведут к попыткам или собственно к вторжению. Простейшим методом реализации сигнатурного анализа является поддержание системой безопасности базы данных сигнатур вторжений. Последовательность действий, выполняемая пользователем или программой во время выполнения, сравнивается с известными сигнатурами. Признаком попытки нарушения безопасности может служить частичное соответствие сигнатуре последовательности событий.
Типичными представителями, реализующими данную идею, являются антивирусные сканнеры (работают с базой данных сигнатур вирусов) и системы обнаружения сетевых атак (работают с базой данных сигнатур удаленных атак).
Необходимо отметить, что непосредственное сравнение сигнатуры вторжения с регистрируемой активностью, малоэффективно, в связи с тем, что регистрируемые данные, относящиеся к атаке, часто бывают зашумлены вследствие вариаций действий нарушителя во время атаки или мутаций сценария. Поэтому, сигнатурный метод вторжения предполагает использование методов искусственного интеллекта.