Тестирование безопасности базы данных проводится для выявления лазеек в механизмах безопасности, а также для выявления уязвимостей или слабых мест системы базы данных.
Основной целью тестирования безопасности базы данных является выявление уязвимостей в системе и определение того, защищены ли ее данные и ресурсы от потенциальных злоумышленников. Тестирование безопасности определяет способ эффективной идентификации потенциальных уязвимостей при регулярном выполнении.
Ниже приведены основные задачи тестирования безопасности базы данных.
- Аутентификация
- авторизация
- конфиденциальность
- Доступность
- целостность
- упругость
Типы угроз в системе баз данных
SQL-инъекция
Это наиболее распространенный тип атаки в системе базы данных, где вредоносные операторы SQL вставляются в систему базы данных и выполняются для получения критической информации из системы базы данных. Эта атака использует лазейки в реализации пользовательских приложений. Чтобы предотвратить это, поля ввода пользователя должны быть тщательно обработаны.
Повышение привилегий в базе данных
В этой атаке пользователь уже имеет некоторый доступ к системе базы данных, и он только пытается поднять этот уровень доступа на более высокий уровень, чтобы он / она мог выполнять некоторые несанкционированные действия в системе базы данных.
Отказ в обслуживании
При атаке такого типа злоумышленник делает систему базы данных или ресурс приложения недоступными для своих законных пользователей. Приложения также могут быть атакованы способами, которые делают приложение, а иногда и весь компьютер, непригодным для использования.
Несанкционированный доступ к данным
Другой тип атаки — получение несанкционированного доступа к данным в приложении или системе баз данных. Несанкционированный доступ включает в себя —
- Несанкционированный доступ к данным через пользовательские приложения
- Несанкционированный доступ с помощью контроля доступа других
- Несанкционированный доступ к повторно используемой информации аутентификации клиента
Подмена личности
В Identity Spoofing хакер использует учетные данные пользователя или устройства для запуска атак на сетевые узлы, кражи данных или обхода контроля доступа к системе базы данных. Предотвращение этой атаки требует смягчения IT-инфраструктуры и сетевого уровня.
Манипуляция данными
В атаке манипулирования данными, хакер изменяет данные, чтобы получить некоторое преимущество или повредить имиджу владельцев базы данных.
Методы тестирования безопасности баз данных
Проверка на проницаемость
Тест на проникновение — это атака на компьютерную систему с целью обнаружения лазеек в системе безопасности, получения доступа к ней, ее функциональности и данным.
Поиск рисков
Поиск риска — это процесс оценки и принятия решения о риске, связанном с типом потери и возможностью возникновения уязвимости. Это определяется внутри организации различными интервью, обсуждениями и анализом.
SQL инъекционный тест
Он включает проверку пользовательских входных данных в полях приложения. Например, ввод специального символа, такого как «,» или «;» в любом текстовом поле в пользовательском приложении не должно быть разрешено. Когда происходит ошибка базы данных, это означает, что пользовательский ввод вставляется в некоторый запрос, который затем выполняется приложением. В таком случае приложение уязвимо для внедрения SQL.
Эти атаки представляют большую угрозу для данных, поскольку злоумышленники могут получить доступ к важной информации из базы данных сервера. Чтобы проверить точки входа SQL-инъекций в ваше веб-приложение, найдите код из базы кода, где прямые запросы MySQL выполняются в базе данных, приняв некоторые пользовательские данные.
Проверка SQL-инъекций может выполняться для скобок, запятых и кавычек.
Взлом пароля
Это самая важная проверка при выполнении тестирования системы базы данных. Чтобы получить доступ к важной информации, хакеры могут использовать инструмент взлома пароля или угадать общее имя пользователя / пароль. Эти общие пароли легко доступны в интернете, а также существуют инструменты для взлома паролей.
Поэтому во время тестирования необходимо проверить, поддерживается ли политика паролей в системе. В случае любых банковских и финансовых приложений необходимо установить строгую политику паролей во всех системах баз данных критической информации.
Аудит безопасности системы баз данных
Аудит безопасности — это процесс оценки политик безопасности компании через регулярные промежутки времени, чтобы определить, соблюдаются ли необходимые стандарты или нет. В соответствии с бизнес-требованиями можно следовать различным стандартам безопасности, чтобы определить политику безопасности, и затем можно выполнить оценку установленных политик в соответствии с этими стандартами.
Примером наиболее распространенных стандартов безопасности являются ISO 27001, BS15999 и т. Д.
Инструменты тестирования безопасности баз данных
На рынке доступны различные инструменты для тестирования системы, которые можно использовать для проверки ОС и проверки приложений. Некоторые из наиболее распространенных инструментов обсуждаются ниже.
Zed Attack Proxy
Это инструмент для тестирования на проникновение для поиска уязвимостей в веб-приложениях. Он предназначен для использования людьми с широким спектром опыта в области безопасности и поэтому идеально подходит для разработчиков и функциональных тестеров, впервые знакомых с тестированием на проникновение. Обычно используется для Windows, Linux, Mac OS.
Парос
Все данные HTTP и HTTPS между сервером и клиентом, включая файлы cookie и поля формы, могут быть перехвачены и изменены с помощью этих сканеров. Он используется для кроссплатформенности, Java JRE / JDK 1.4.2 или выше.
Инструментарий социального инженера
Это инструмент с открытым исходным кодом, и на него нападают человеческие элементы, а не системный элемент. Это позволяет отправлять электронные письма, Java-апплеты и т. Д., Содержащие код атаки. Предпочитается для Linux, Apple Mac OS X и Microsoft Windows.
Skipfish
Этот инструмент используется для сканирования их сайтов на наличие уязвимостей. Отчеты, созданные с помощью этого инструмента, служат основой для профессиональной оценки безопасности веб-приложений. Он предпочтителен для Linux, FreeBSD, MacOS X и Windows.
Вега
Это мультиплатформенный инструмент веб-безопасности с открытым исходным кодом, который используется для обнаружения случаев внедрения SQL-кода, межсайтового скриптинга (XSS) и других уязвимостей в веб-приложениях. Предпочитается для Java, Linux и Windows.
вапити
Wapiti — это инструмент с открытым исходным кодом и веб-инструмент, который сканирует веб-страницы веб-приложения и проверяет наличие сценариев и форм, в которые он может вводить данные. Он построен на Python и может обнаруживать ошибки обработки файлов, инъекции базы данных, XSS, LDAP и CRLF, обнаружение выполнения команд.
Веб скарабей
Он написан на Java и используется для анализа приложений, которые обмениваются данными по протоколам HTTP / HTTPS. Этот инструмент в первую очередь предназначен для разработчиков, которые могут сами писать код. Этот инструмент не зависит от ОС.