🐉 Что такое фаззинг? Почему он важен для кибербезопасности? |

🐉 Что такое фаззинг? Почему он важен для кибербезопасности?

Статьи

Фазз-тестирование или фаззинг – это техника тестирования программного обеспечения методом “черного ящика”, которая в основном заключается в поиске ошибок реализации с помощью введения недостоверных/полунедостоверных данных в автоматизированной задаче.

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

В ответ на это приложение выдает исключение или сбой.

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

Фаззинг – это относительно простое и эффективное решение, которое может быть включено в процессы обеспечения качества и тестирования безопасности.

Именно поэтому фаззинг также иногда называют тестированием на устойчивость или негативным тестированием.

История фаззинга

Классическое фазз-тестирование было разработано в университете Висконсин-Мэдисон в 1989 году профессором Бартоном Миллером и студентами.

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

Типы атак в фаззинге

Обычно фаззер (программа для фаззинга) пробует комбинации атак на:

  • числа (целые числа со знаком/без знака/плоские числа и т.д.).
  • символы (урлы, вводы командной строки).
  • метаданные: вводимый пользователем текст (тег id3).
  • бинарные последовательности

Общий подход к фаззингу заключается в определении списков “известных опасных значений” (fuzz vectors) для каждого типа, и внедрении их или их комбинаций.

  • Для целых чисел: ноль, возможно, отрицательные или очень большие числа.
  • Для символов: экранированные, интерпретируемые символы / инструкции (например: для SQL-запросов, кавычки / команды и т.д.).
  • Для двоичных чисел: случайные единицы.

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

Любой недоверенный источник ввода данных считается небезопасным и непоследовательным.

Например, граница доверия между приложением и интернет-пользователем непредсказуема.

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

В нашей последующей статье мы узнаем о фаззерах в системе Kali Linux.

Почему фаззинг важен для тестирования безопасности?

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

Значит, систематический подход рано или поздно должен их обнаружить.

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

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

см. также:

🕵️‍♂️ Обзор инструментов фаззинга для проверки веб-приложений

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий