Эта публикация цитируется в
1 статье
Computer system organization
Об обнаружении эксплуатации уязвимостей, приводящей к запуску вредоносного кода
Ю. В. Косолапов Южный Федеральный Университет, ул. Мильчакова, 8а, г. Ростов-на-Дону, 344090 Россия
Аннотация:
Задача защиты программного обеспечения от эксплуатации возможных неизвестных уязвимостей может решаться как путем поиска (например, с помощью символьного исполнения) и последующего устранения уязвимостей, так и путем использования систем обнаружения и/или предотвращения вторжений. В последнем случае эта задача решается обычно путем формирования профиля нормального выполнения программ, а недопустимое отклонение от нормального состояния расценивается как аномалия или атака. В настоящей работе рассматривается задача защиты заданного исполнимого файла (программы)
$P$ от эксплуатации неизвестных уязвимостей в нем. Для этого предлагается способ построения профиля нормального выполнения программы
$P$, в котором кроме набора легальных цепочек системных и библиотечных функций длины
$l$ учитывается расстояние между соседними вызовами функций, вычисляемое как разность адресов вызова соответствующих функций. Учет расстояний между вызовами функций позволяет выявлять исполнение вредоносного шеллкода, использующего вызовы системных и/или библиотечных функций, если хотя бы один из используемых в шеллкоде вызовов находится на нетипичном для программы
$P$ расстоянии от предыдущего вызова. В работе строится алгоритм и система обнаружения аномального выполнения кода и проводятся эксперименты в случае, когда
$P$ — браузер FireFox для операционной системы Windows.
Ключевые слова:
системные вызовы, вызовы библиотек, уязвимости программного обеспечения.
УДК:
517.9
MSC: 68M25 Поступила в редакцию: 09.03.2019
Исправленный вариант: 23.03.2020
Принята в печать: 25.03.2020
DOI:
10.18255/1818-1015-2020-2-138-151