Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции
В данной работе предложен алгоритм обнаружения атаки инъекций SQL с помощью функции распознавания и дана оценка эффективности предложенного алгоритма с помощью искусственных данных. В предлагаемом методе создан с помощью примерных данных атакующих и нормальных строк набор символов для распознавания...
Gespeichert in:
Datum: | 2019 |
---|---|
Hauptverfasser: | , , , |
Format: | Artikel |
Sprache: | Russian |
Veröffentlicht: |
Інститут кібернетики ім. В.М. Глушкова НАН України
2019
|
Schriftenreihe: | Проблемы управления и информатики |
Schlagworte: | |
Online Zugang: | http://dspace.nbuv.gov.ua/handle/123456789/180824 |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
Zitieren: | Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции / А.Т. Рахманов, Р.Х. Хамдамов, К.Ф. Керимов, Ш.К. Камалов // Проблемы управления и информатики. — 2019. — № 4. — С. 105-111. — Бібліогр.: 5 назв. — рос. |
Institution
Digital Library of Periodicals of National Academy of Sciences of Ukraineid |
irk-123456789-180824 |
---|---|
record_format |
dspace |
spelling |
irk-123456789-1808242021-10-21T01:26:30Z Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции Рахманов, А.Т. Хамдамов, Р.Х. Керимов, К.Ф. Камалов, Ш.К. Методы обработки и защиты информации В данной работе предложен алгоритм обнаружения атаки инъекций SQL с помощью функции распознавания и дана оценка эффективности предложенного алгоритма с помощью искусственных данных. В предлагаемом методе создан с помощью примерных данных атакующих и нормальных строк набор символов для распознавания как атаки, так и нормального запроса с ранее известным порогом. Согласно экспериментам с искусственными данными набор содержит пробел, точку с запятой и правую скобку, которая наиболее подходит для распознавания атаки и нормальной строки. Однако важен гибкий выбор набора в зависимости от наблюдаемых данных. Атаки на веб-додатки є відносно новим видом загрози. Якщо в веб-додатку належним чином не провадиться фільтрація вхідних параметрів, то зловмисники можуть отримати можливість фальсифікувати базу даних, використовуючи форму на веб-сторінці або змінюючи інші вхідні дані. Математичне моделювання та ідентифікація інформаційних об’єктів відіграють важливу роль при вирішенні задач розпізнавання образів. Однією з таких задач є виявлення атак на веб-додатки або нормальних запитів. Дослідження, присвячені вивченню виявлення атак або нормальних запитів, почалися порівняно недавно. Проте існує багато досліджень в цьому напрямку. Атака виду SQL-ін’єкції — поширений спосіб злому веб-додатків, які мають базу даних. Запропоновано математичний спосіб ідентифікації атак SQL-ін’єкцій за допомогою обмеженої знизу функції, що залежить від вхідного рядка. Для побудови такої функції використано символи і ключові слова, які часто зустрічаються в побудові атак зловмисників. За допомогою запропонованого методу можна виявляти атаки ін’єкцій SQL, використовуючи один символ. Проте експериментально показано, що даний метод виявлення з використанням набору численних символів дозволяє більш точно визначити вразливість виду SQL-ін’єкції. У запропонованому методі створено набір символів, що поєднується як з атакою, так і з нормальними запитами, з раніше відомим порогом, використовуючи приблизні дані атак та нормальних запитів. Згідно з експериментами з штучними даними набір містить пробіл, крапку з комою і праву дужку, що найбільше підходить для виявлення атаки чи нормального запиту. Attacks to web applications are a relatively new type of attack. If the web application does not filter incoming parameters properly, then attackers can get the opportunity to falsify the database using the form on the web page or by changing other incoming data. Mathematical modeling and identification of information objects play an important role in solving problems of pattern recognition. One of these tasks is to detect attacks or normal requests for web applications. Studies on the detection of attacks or normal requests for web applications began relatively recently. Nevertheless, there is a lot of research in this direction. Attack of the form of SQL-injection is a common way of hacking web applications that have a database. Our paper proposes a mathematical method for identifying SQL-injection attacks using a function bounded below that depends on the input string. To build such a function, we used special characters and keywords that are often found in the construction of attacks by intruders. In our proposed method, we can detect SQL-injection attacks using a single character. Nevertheless, we experimentally show that the proposed detection method using a set of numerous symbols allows us to determine the vulnerability of the form of SQL-injection more accurately. In the proposed method, we created a character set that combines both attack and normal detections, and the previously known threshold, using the approximate data of the attackers and normal strings. According to our experiments with artificial data, the set contains a space, a semicolon, and the right bracket has worked well for a larger weight range for the attack and the normal string. 2019 Article Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции / А.Т. Рахманов, Р.Х. Хамдамов, К.Ф. Керимов, Ш.К. Камалов // Проблемы управления и информатики. — 2019. — № 4. — С. 105-111. — Бібліогр.: 5 назв. — рос. 0572-2691 http://dspace.nbuv.gov.ua/handle/123456789/180824 004.056.53 ru Проблемы управления и информатики Інститут кібернетики ім. В.М. Глушкова НАН України |
institution |
Digital Library of Periodicals of National Academy of Sciences of Ukraine |
collection |
DSpace DC |
language |
Russian |
topic |
Методы обработки и защиты информации Методы обработки и защиты информации |
spellingShingle |
Методы обработки и защиты информации Методы обработки и защиты информации Рахманов, А.Т. Хамдамов, Р.Х. Керимов, К.Ф. Камалов, Ш.К. Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции Проблемы управления и информатики |
description |
В данной работе предложен алгоритм обнаружения атаки инъекций SQL с помощью функции распознавания и дана оценка эффективности предложенного алгоритма с помощью искусственных данных. В предлагаемом методе создан с помощью примерных данных атакующих и нормальных строк набор символов для распознавания как атаки, так и нормального запроса с ранее известным порогом. Согласно экспериментам с искусственными данными набор содержит пробел, точку с запятой и правую скобку, которая наиболее подходит для распознавания атаки и нормальной строки. Однако важен гибкий выбор набора в зависимости от наблюдаемых данных. |
format |
Article |
author |
Рахманов, А.Т. Хамдамов, Р.Х. Керимов, К.Ф. Камалов, Ш.К. |
author_facet |
Рахманов, А.Т. Хамдамов, Р.Х. Керимов, К.Ф. Камалов, Ш.К. |
author_sort |
Рахманов, А.Т. |
title |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции |
title_short |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции |
title_full |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции |
title_fullStr |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции |
title_full_unstemmed |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции |
title_sort |
алгоритм автоматического обнаружения уязвимости вида sql-инъекции |
publisher |
Інститут кібернетики ім. В.М. Глушкова НАН України |
publishDate |
2019 |
topic_facet |
Методы обработки и защиты информации |
url |
http://dspace.nbuv.gov.ua/handle/123456789/180824 |
citation_txt |
Алгоритм автоматического обнаружения уязвимости вида SQL-инъекции / А.Т. Рахманов, Р.Х. Хамдамов, К.Ф. Керимов, Ш.К. Камалов // Проблемы управления и информатики. — 2019. — № 4. — С. 105-111. — Бібліогр.: 5 назв. — рос. |
series |
Проблемы управления и информатики |
work_keys_str_mv |
AT rahmanovat algoritmavtomatičeskogoobnaruženiâuâzvimostividasqlinʺekcii AT hamdamovrh algoritmavtomatičeskogoobnaruženiâuâzvimostividasqlinʺekcii AT kerimovkf algoritmavtomatičeskogoobnaruženiâuâzvimostividasqlinʺekcii AT kamalovšk algoritmavtomatičeskogoobnaruženiâuâzvimostividasqlinʺekcii |
first_indexed |
2025-07-15T21:09:31Z |
last_indexed |
2025-07-15T21:09:31Z |
_version_ |
1837748740614520832 |
fulltext |
© А.Т. РАХМАНОВ, Р.Х. ХАМДАМОВ, К.Ф. КЕРИМОВ, Ш.К. КАМАЛОВ, 2019
Международный научно-технический журнал
«Проблемы управления и информатики», 2019, № 4 105
УДК 004.056.53
А.Т. Рахманов, Р.Х. Хамдамов, К.Ф. Керимов, Ш.К. Камалов
АЛГОРИТМ АВТОМАТИЧЕСКОГО ОБНАРУЖЕНИЯ
УЯЗВИМОСТИ ВИДА SQL-ИНЪЕКЦИИ
Ключевые слова: SQL-инъекция, выявление угроз, адаптивный анализ, мате-
матическая модель.
Введение
Атаки на веб-приложения являются относительно новым видом угрозы.
Если в веб-приложении должным образом не осуществляется фильтрация входя-
щих параметров, то злоумышленники могут получить возможность фальсифи-
цировать базу данных, используя форму на веб-странице либо изменяя другие
входящие данные.
Математическое моделирование и идентификация информационных объек-
тов играют важную роль при решении задач распознавания образов. Одной из
таких задач является обнаружение атак на веб-приложения или нормальных
запросов. Исследования, посвященные изучению обнаружения атак или нормаль-
ных запросов, начались сравнительно недавно. Но тем не менее существует много
исследований в этом направлении.
Применение математических методов в решении таких задач рассматри-
валось во многих работах ученых [1–3]. Например, в [3] описаны два способа
обнаружения атак SQL-инъекций, основанных на свойстве распределения симво-
лов при построении атак SQL-инъекций. В [4] предложено моделирование атак и
нормальных запросов и рассмотрена их идентификация с помощью некоторой
функции, нижняя граница которой зависит от длины входной строки.
В данной работе предлагается математический способ идентификации атак
SQL-инъекций с помощью ограниченной снизу функции, которая зависит от вход-
ной строки. Для построения такой функции используются символы и ключевые
слова, которые часто встречаются в построении атак злоумышленников.
В предлагаемом методе можно обнаружить атаки инъекций SQL с помощью
одного символа. Тем не менее экспериментально показано, что метод обнаруже-
ния с использованием набора многочисленных символов позволяет более точно
определить уязвимость вида SQL-инъекции.
1. Обнаружение атак вида SQL-инъекции
Атака вида SQL-инъекции выполняется посредством сигнатуры, которая вве-
дена через форму на веб-странице либо другим способом, позволяющим менять
входящие параметры. Рассмотрим пример SQL-инъекции.
Запросы отправляем на сайт form.php. В данном файле запишем следующий
код:
$test = $_GET['test'];
$query = "SELECT * FROM userlist WHERE user='$test".
Здесь делаем выборку данных по значению переменной $test. После этого посы-
лаем запрос с кавычкой:
sqlinj/index2.php?user=AlexanderPHP'.
Если при выполнении данного запроса получаем ошибку, то уязвимость вида
SQL-инъекции имеет место.
106 ISSN 0572-2691
Чтобы определить, является ли вводимая строка атакой, используем комбина-
цию символов. Для этого необходимо разработать алгоритм, который исходя из
символов определяет, является ли входящая строка нормальным запросом либо атакой.
1.1. Подготовка. Для определения SQL-инъекции вводим характеристики
атак SQL-инъекций с помощью символов (табл. 1) и ключевых слов (табл. 2).
Пусть наблюдается некоторая входная строка ,L 2021 ...,,, xxx — частота по-
явления в L символов (табл. 1), 302221 ...,,, xxx — частота появления ключевых
слов (табл. 2), 31х — частота появления всех остальных знаков и чисел 0, 1, 2, ..., 9
в строке .L С точки зрения определения атак типа SQL-инъекций обычные сим-
волы zba ...,,, и числа 0, 1,…, 9 не играют важную роль. Поэтому в данной работе
предполагается, что частота появления всех этих символов и чисел в наблюдаемой
строке L равна единице, т.е. .131 х Таким образом, любую строку L можно опреде-
лить с помощью характеристик следующим образом: ...,,...,,,( 212021 xxxxL
),..., 3130 xx как элемент некоторого фазового пространства .X Часто в построении
атак типа SQL-инъекций используются символы и ключевые слова (табл. 1, 2).
Таблица 1
Переменная Символ
u1
u2
u3
u4
u5
u6
u7
u8
u9
u10
u11
u12
u13
u14
u15
u16
u17
u18
u19
u20
Пробел
Точка-запятая
Апостроф
Правая скобка
Левая скобка
Правая фигурная скобка
Левая фигурная скобка
Правая квадратная скобка
Левая квадратная скобка
Диез
Процент
Кавычка
Амперсанд
Обратная косая
Вертикальная линия
Знак равенства
Больше чем
Меньше чем
Звездочка
Косая черта
(;)
(’)
())
(()
(})
({)
(])
([)
(#)
(%)
(”)
(&)
(\)
(|)
(=)
(>)
(<)
(*)
(/)
Таблица 2
Переменная Ключевые слова
u21
u22
u23
u24
u25
u26
u27
u28
u29
u30
and
or
union
where
limit
group by
select
\'
hex
substr
Международный научно-технический журнал
«Проблемы управления и информатики», 2019, № 4 107
1.2. Метод определения. Из определения L видно, что любой элемент L
из построенного пространства X лежит на гиперплоскости ...,,({Г 21 xxL
}.1:),...,,..., 31313020 xxxx Поэтому можно предположить, что чем больше ча-
стота появления символов и ключевых слов во входной строке, тем очевиднее
близость входной строки L к атакам типа SQL-инъекций. Поэтому функция
определения атаки должна быть возрастающей по переменным ,..., 21 xx
302120 ...,,,..., xxx и убывающей — по переменной .31х Исходя из этого предлага-
ем следующую возрастающую по 30212021 ...,,,...,,, xxxxx функцию
31
30
1
30
1
31212021 )...,,,...,,,()(
xx
x
xxxxxfLf
i
i
i
i
для определения атак типа SQL-инъекций. Так как в данной работе предполагает-
ся, что частота появления всех остальных знаков и чисел 0, 1, 2, ..., 9 в строке L
равна единице, из последнего равенства получим
.
1
)...,,,...,,,()(
30
1
30
1
31212021
i
i
i
i
x
x
xxxxxfLf (1)
Данная функция имеет следующие свойства:
1) 1)(0 Lf для всех Г;L
2) для атак вида SQL-инъекций минимальное значение функции снизу огра-
ничено числом 1/2.
Таким образом, если входная строка L — атака типа SQL-инъекции, то она,
по крайней мере, должна содержать один символ (табл. 1) или одно ключевое
слово (табл. 2). Поэтому ,1
30
1
i
ix и так как функция )(Lf является возрастаю-
щей по каждой из переменных ,ix ее минимум при 1
30
1
i
ix достигается в точке
,0L для которой .1
30
1
i
ix
Таким образом, если L — произвольная строка и ,2/1)( Lf то ,L возможно,
является атакой вида SQL-инъекции, или 2/1)( Lf — входная строка нормальная,
если при построении атак SQL-инъекций используются ключевые слова (табл. 2).
Поэтому функцию (1) можно использовать для распознавания нормальных строк
и атак SQL-инъекций, построенных с помощью символов и ключевых слов.
Таким образом, если L — произвольная строка, содержащая минимум два сим-
вола (табл. 1), то 3/2)( Lf и ,L возможно, является атакой SQL-инъекции. Если
,3/2)( Lf то входная строка, возможно, нормальная, если при построении атак
SQL-инъекций используются только символы (табл. 1). Поэтому функцию (1)
можно применять для распознавания нормальных строк и атак SQL-инъекций, по-
строенных с помощью символов (табл. 1) и ключевых слов (табл. 2).
108 ISSN 0572-2691
В обоих случаях, используя функцию (1), имеем критерий качества для опре-
деления угроз. Подобная функция построена и использована в работе [1], но там
значение функции зависит от длины входной строки L и минимума такой функ-
ции для любой строки L не существует. Поэтому в [5] для определения границы
разпознающей функции строятся дополнительные усредненные критерии каче-
ства, решая соответствующую оптимизационную задачу с помощью дополни-
тельных математических аппаратов.
В данном случае границей разпознающей функции (1) является рациональное
число 1/2. Таким образом, если строка L содержит хотя бы один символ или одно
ключевое слово, то условие 2/1)( Lf достаточно для определения угрозы.
Образцы строк, содержащих SQL-инъекции, и нормальных строк представ-
лены в табл. 3, 4 соответственно.
Таблица 3
Номер Строки атаки
1 id=1'
2 AlexanderPHP'
3 AlexanderPHP'%20--%20habrahabr
4 1 UNION SELECT 1,2
5 1 UNION SELECT 1,2,3
6 1 UNION SELECT 1,2,3,4,5
7 1 GROUP BY 2
8 1 GROUP BY 8
9 – 1 UNION SELECT 1,2,3,4,5
10 – 1 UNION SELECT 1,2,3,4,5 FROM users WHERE id=1
11 – 1 UNION SELECT name,2,pass,4,5 FROM users WHERE id=1
12 – 1' UNION SELECT name,2,pass,4,5 FROM users WHERE id=1 --%20
13 – 1' UNION SELECT 1,'<?php eval($_GET[1]) ?>',3,4,5 INTO OUTFILE '1.php' --%20
14 – 1' UNION SELECT 1,2,3,4,5 INTO OUTFILE '1.php' --%20
15 – 1' UNION SELECT 1,LOAD_FILE('1.php'),3,4,5 --%20
16 4+OR+1
17 4+--
18 4+UNION+SELECT+*+FROM+news+WHERE+id=4
19 admin' --
20 admin' #
21 admin'/*
22 ' or 1=1--
23 ' or 1=1#
24 ' or 1=1/*
... …
39 ') or ('1'='1—
Таблица 4
Номер Нормальные строки
1
2
3
4
5
6
Test
password
kamil@
@kamil
{(1%2)+(3/4)}/5}
&temptest(URL){ width,height }
2. Вычисление коэффициента важности ключевых слов (символов)
Для определения коэффициента важности символов из табл. 1 проведены
экспериментальные вычисления по 39 атакам инъекции SQL. При этом использо-
вана формула
Международный научно-технический журнал
«Проблемы управления и информатики», 2019, № 4 109
,
N
U
B
K
K
K
где BK — коэффициент важности символа U, UK — количество атак
SQL-инъекций L, при построении которых используется специальный символ u,
NK — oбщее количество атак SQL-инъекций.
Далее, используя введенные обозначения, определим входную строку как
вектор с числовыми координатами:
).,.,..,,( 313021 313021
xKxKxKxKL UUUU (2)
Такое определение входной строки отличается от предыдущего тем, что ко-
ординаты входной строки (2) имеют различные значения, отличные от единицы.
Поэтому входные строки имеют различные координаты. Но если в пространстве X
определено понятие длины, то некоторые входные строки могут иметь одинако-
вую длину, что не помешает различать входные строки. Отличительной особен-
ностью входной строки-атаки SQL-инъекций, определенной согласно (2), являет-
ся то, что она имеет только неотрицательные координаты, и поэтому если длина
строки строго положительна, то эта строка, возможно, близка к атаке SQL-инъекций.
Таким образом, можем построить новую функцию распознавания, используя
определение (2) для входной строки. Тогда функция распознавания определяет
входную строку более точно, чем (1), так как в этом случае при построении функ-
ции распознавания учитывается коэффициент важности всех символов (табл. 5).
Но при этом важно отметить, что для определения коэффициента важности каж-
дого из них необходимо провести экспериментальные вычисления над большим
количеством атак SQL-инъекций (например, 500–600). И тогда коэффициент важ-
ности каждого будет неизменным почти для всех атак SQL-инъекций. Учитывая
этот факт, построим новую функцию для определения атак SQL-инъекций:
.
1
)...,,,...,,,()(
30
1
30
1
31212021
i
iu
i
iu
K
xK
xK
xxxxxfLf
i
i
(3)
Теперь для определения статуса входной строки (2) вместо функции (1) мож-
но использовать функцию (3). Здесь так же, как и выше, можно определить ниж-
нюю границу функции (3) для выявления атак SQL-инъекций.
Таблица 5
Символы Коэффициент важности символов
= 0,4872
% 0,2051
‘ 0,6923
* 0,0769
/ 0,0513
] 0,0256
[ 0,0257
{ 0
} 0
& 0
\ 0
# 0,0513
“ 0
! 0
< 0,0256
> 0,0255
( 0,1538
) 0,1795
; 0
пробел 0,7949
110 ISSN 0572-2691
Алгоритм распознавания состоит из следующих шагов.
Шаг 1. Используя реальную входную строку, определяем объект L согласно (2).
Шаг 2. Вычисляем значение функции (3).
Шаг 3. Определяем минимальное значение функции (3).
Шаг 4. Сравнивая значение функции (3) с ее минимальным значением, опре-
деляем статус входной строки.
Видно, что все функции определения статуса входных строк зависят от моде-
лирования информационного объекта (входных строк). Поэтому очень важен
принцип формализации определения входной строки, что во многом определяет и
методы решения распознавания информационных объектов.
Заключение
В данной работе предложен алгоритм обнаружения атаки инъекций SQL с
помощью функции распознавания и дана оценка эффективности предложенного
алгоритма с помощью искусственных данных. В предлагаемом методе создан с
помощью примерных данных атакующих и нормальных строк набор символов
для распознавания как атаки, так и нормального запроса с ранее известным поро-
гом. Согласно экспериментам с искусственными данными набор содержит про-
бел, точку с запятой и правую скобку, которая наиболее подходит для распозна-
вания атаки и нормальной строки. Однако важен гибкий выбор набора в зависи-
мости от наблюдаемых данных.
Проблемы предлагаемого метода — сбор информации об атаках и нормальных
запросах и ее генерация. В экспериментах использовались искусственно сгенериро-
ванные данные, однако необходим реальный набор данных с серверов веб-прило-
жений в эксплуатации.
А.Т. Рахманов, Р.Х. Хамдамов, К.Ф. Керімов, Ш.К. Камалов
АЛГОРИТМ АВТОМАТИЧНОГО ВИЯВЛЕННЯ
ВРАЗЛИВОСТІ ВИДУ SQL-ІН’ЄКЦІЇ
Атаки на веб-додатки є відносно новим видом загрози. Якщо в веб-додатку на-
лежним чином не провадиться фільтрація вхідних параметрів, то зловмисники
можуть отримати можливість фальсифікувати базу даних, використовуючи форму
на веб-сторінці або змінюючи інші вхідні дані. Математичне моделювання
та ідентифікація інформаційних об’єктів відіграють важливу роль при вирі-
шенні задач розпізнавання образів. Однією з таких задач є виявлення атак на
веб-додатки або нормальних запитів. Дослідження, присвячені вивченню вияв-
лення атак або нормальних запитів, почалися порівняно недавно. Проте існує
багато досліджень в цьому напрямку. Атака виду SQL-ін’єкції — поширений
спосіб злому веб-додатків, які мають базу даних. Запропоновано математичний
спосіб ідентифікації атак SQL-ін’єкцій за допомогою обмеженої знизу функції,
що залежить від вхідного рядка. Для побудови такої функції використано сим-
воли і ключові слова, які часто зустрічаються в побудові атак зловмисників. За
допомогою запропонованого методу можна виявляти атаки ін’єкцій SQL, вико-
ристовуючи один символ. Проте експериментально показано, що даний метод
виявлення з використанням набору численних символів дозволяє більш точно ви-
значити вразливість виду SQL-ін’єкції. У запропонованому методі створено набір
символів, що поєднується як з атакою, так і з нормальними запитами, з раніше
відомим порогом, використовуючи приблизні дані атак та нормальних запитів.
Згідно з експериментами з штучними даними набір містить пробіл, крапку
з комою і праву дужку, що найбільше підходить для виявлення атаки чи
нормального запиту.
Ключові слова: SQL-ін’єкція, виявлення загроз, адаптивний аналіз, мате-
матична модель.
Международный научно-технический журнал
«Проблемы управления и информатики», 2019, № 4 111
A.T. Rakhmanov, R.Kh. Khamdamov, K.F. Kerimov, Sh.K. Kamalov
AUTOMATIC DETECTION ALGORITHM
FOR VULNERABILITY OF SQL-INJECTION
Attacks to web applications are a relatively new type of attack. If the web application
does not filter incoming parameters properly, then attackers can get the opportunity
to falsify the database using the form on the web page or by changing other incoming
data. Mathematical modeling and identification of information objects play an im-
portant role in solving problems of pattern recognition. One of these tasks is to detect
attacks or normal requests for web applications. Studies on the detection of attacks or
normal requests for web applications began relatively recently. Nevertheless, there is
a lot of research in this direction. Attack of the form of SQL-injection is a common
way of hacking web applications that have a database. Our paper proposes a mathe-
matical method for identifying SQL-injection attacks using a function bounded below
that depends on the input string. To build such a function, we used special characters
and keywords that are often found in the construction of attacks by intruders. In our
proposed method, we can detect SQL-injection attacks using a single character. Nev-
ertheless, we experimentally show that the proposed detection method using a set of
numerous symbols allows us to determine the vulnerability of the form of SQL-injection
more accurately. In the proposed method, we created a character set that combines
both attack and normal detections, and the previously known threshold, using the ap-
proximate data of the attackers and normal strings. According to our experiments
with artificial data, the set contains a space, a semicolon, and the right bracket has
worked well for a larger weight range for the attack and the normal string.
Keywords: SQL-injection, threat identification, adaptive analysis, mathematical
model.
1. Керимов К.Ф. Модель выявления угроз информационной безопасности в электронных ре-
сурсах. Перспективы развития техники и технологии и достижения горно-металлурги-
ческой отрасли за годы независимости Республики Узбекистан: Тез. докл. Респ. науч.
конф. 12-14 мая. Навои, 2011. С. 339–340.
2. Козлов Д.Д., Петухов А.А. Методы обнаружения уязвимостей в web-приложениях. Про-
граммные системы и инструменты. 2006. № 7. С. 156–166.
3. Рябко Д.М. Подход к тестированию уязвимости web-приложений от атак типа SQL-инъек-
ций. Проблеми програмування. 2006. № 2-3. С. 585–591.
4. Керимов К.Ф., Мухсинов Ш.Ш., Исматуллаев С.О. Брандмауэр баз данных, основан-
ный на обнаружении аномалий. Проблемы информатики и энергетики. 2016. № 1.
С. 89–95.
5. Opanasenko V.N., Kryvyi S.L. Synthesis of adaptive logical networks on the basis of Zhe-
galkin polynomials. Cybernetics and Systems Analysis. 2015. 51, N 6. P. 969–977. DOI:
10.1007/s10559-015-9790-1.
Получено 01.04.2019
После доработки 24.05.2019
|