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

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

Ниже приводятся основные задачи выполнения тестирования безопасности базы данных:

  • Аутентификация
  • Авторизация
  • Конфиденциальность
  • Доступность
  • Целостность
  • Упругость

Типы угроз в системе баз данных

SQL-инъекция

Это наиболее распространенный тип атаки в системе баз данных, где вредоносные операторы SQL вставляются в систему базы данных и выполняются для получения важной информации из системы базы данных. Эта атака использует лазейки в реализации пользовательских приложений. Чтобы этого не произошло, следует тщательно обрабатывать поля пользовательских входов.

Привилегия в базе данных

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

Отказ в обслуживании

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

Несанкционированный доступ к данным

Другой тип атаки - получение несанкционированного доступа к данным в системе приложений или баз данных. Несанкционированный доступ включает в себя:

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

Идентификация спуфинга

В Identity Spoofing хакер использует учетные данные пользователя или устройства для запуска атак против сетевых хостов, кражи данных или обхода элементов управления доступом к системе баз данных. Для предотвращения этой атаки требуется ИТ-инфраструктура и снижение уровня сетевого уровня.

Манипуляция данными

В атаке манипуляции данными хакер меняет данные, чтобы получить какое-то преимущество или повредить изображение владельцев баз данных.

Методы тестирования безопасности базы данных

Проверка на проницаемость

Тест на проникновение представляет собой атаку на компьютерную систему с намерением найти лазейки безопасности, потенциально доступ к ней, ее функциональность и данные.

Поиск рисков

Поиск рисков - это процесс оценки и принятия решения о риске, связанном с типом потерь и возможностью возникновения уязвимости. Это определяется внутри организации различными интервью, обсуждениями и анализом.

SQL-инъекция

Он включает проверку пользовательских входов в полях приложений. Например, ввод специального символа типа ',' или ';' в любом текстовом поле в пользовательском приложении не должно быть разрешено. При возникновении ошибки базы данных это означает, что пользовательский ввод вставляется в некоторый запрос, который затем выполняется приложением. В этом случае приложение уязвимо для SQL-инъекции.

Эти атаки представляют большую угрозу для данных, поскольку злоумышленники могут получить доступ к важной информации из базы данных сервера. Чтобы проверить точки ввода SQL-инъекций в ваше веб-приложение, найдите код с базы кода, где в базе данных выполняются прямые запросы MySQL, принимая некоторые пользовательские входы.

SQL Injection Testing может выполняться для скобок, запятых и котировок.

Пароль крекинг

Это самая важная проверка при тестировании системы базы данных. Для доступа к важной информации хакеры могут использовать инструмент для взлома паролей или могут угадывать общее имя пользователя / пароль. Эти общие пароли легко доступны в Интернете, а также инструменты для взлома паролей существуют свободно.

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

Аудит безопасности системы баз данных

Аудит безопасности - это процесс оценки политик безопасности компании на регулярном временном интервале, чтобы определить, соблюдаются ли необходимые стандарты или нет. Различные стандарты безопасности могут соблюдаться в соответствии с требованиями бизнеса для определения политики безопасности, а затем может быть проведена оценка установленных политик в отношении этих стандартов.

Инструменты тестирования безопасности базы данных

На рынке доступны различные инструменты тестирования системы, которые можно использовать для тестирования ОС и проверки приложений. Ниже приведены некоторые из наиболее распространенных инструментов.

Прокси-сервер Zed

Это инструмент для тестирования уязвимостей для поиска уязвимостей в веб-приложениях. Он предназначен для использования людьми с широким спектром опыта в области безопасности и, как таковой, идеально подходит разработчикам и функциональным тестировщикам, которые являются новыми для тестирования на проникновение. Он обычно используется для Windows, Linux, Mac OS.

Paros

Все данные HTTP и HTTPS между сервером и клиентом, включая файлы cookie и поля формы, могут быть перехвачены и изменены с помощью этих сканеров. Он используется для кросс-платформенных Java JRE / JDK 1.4.2 или выше.

Social Engineer Toolkit

Это инструмент с открытым исходным кодом, а человеческие элементы атакованы, а не системный элемент. Он позволяет отправлять электронные письма, java-апплеты и т. д., Содержащие код атаки. Это предпочтительнее для Linux, Apple Mac OS X и Microsoft Windows.

Skipfish

Этот инструмент используется для сканирования уязвимостей на своих сайтах. Отчеты, созданные инструментом, призваны служить основой для оценки безопасности профессиональных веб-приложений. Это предпочтительнее для Linux, FreeBSD, MacOS X и Windows.

Vega

Это инструмент для многопользовательской безопасности с открытым исходным кодом, который используется для поиска экземпляров SQL-инъекций, межсайтового скриптинга (XSS) и других уязвимостей в веб-приложениях. Это предпочтительнее для Java, Linux и Windows.

Wapiti

Wapiti - это инструмент с открытым исходным кодом и веб-интерфейсом, который сканирует веб-страницы веб-приложения и проверяет наличие сценариев и форм, где он может вводить данные. Он построен на Python и может обнаруживать ошибки обработки файлов, базы данных, XSS, LDAP и CRLF инъекции, обнаружение выполнения команд.

Web Scarab

Он написан на Java и используется для анализа приложений, которые обмениваются данными по протоколам HTTP / HTTPS. Этот инструмент в первую очередь предназначен для разработчиков, которые могут сами писать код. Этот инструмент не зависит от ОС.