Институт системного программирования им. В.П. Иванникова РАН


Скачать сборник технологий

Natch: инструмент определения поверхности атаки

Natch - это инструмент для определения поверхности атаки, основанный на полносистемном эмуляторе Qemu. Инструмент использует технологии анализа помеченных данных, интроспекции виртуальных машин и детерминированного воспроизведения.

Основная функция Natch — получение поверхности атаки, то есть поиск исполняемых файлов, динамических библиотек, функций, отвечающих за обработку входных данных (файлов, сетевых пакетов) во время выполнения задачи.

Особенности и преимущества

Natch построен на базе полносистемного эмулятора QEMU, поэтому позволяет анализировать все компоненты системы, включая ядро ОС и драйверы.

Natch может работать с операционными системами на основе ядра Linux любых версий на платформе x86-64.

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

Ключевые возможности

  • Получение поверхности атаки, представленной набором процессов, модулей и функций, которые обрабатывали помеченные данные по время выполнения тестового сценария.
  • Получение подробной трассы обращений к помеченным данным для более детального анализа.
  • Получение трассы вызовов функций с диапазонами адресов памяти, на которых они выполняют запись и чтение помеченных данных.
  • Построение графа, иллюстрирующего распространение помеченных данных от некоторых источников через процессы и модули по всей системе.
  • Возможность помечать входящий сетевой трафик и обращения к файлам.
  • Логирование сетевых пакетов.
  • Запись сценария работы с последующим многократным воспроизведением.
  • Пометка сетевых пакетов на заданных шагах сценария.
  • Сбор покрытия бинарного кода.

Для кого предназначен Natch?

  • Отечественные компании-разработчики безопасного программного обеспечения.
  • Испытательные лаборатории и органы по сертификации.

Услуги с использованием Natch

  • Целевое обучение и повышение квалификации.

Поддерживаемые платформы и архитектуры

  • Системные требования инструмента Natch: ОС Linux x86-64, ОЗУ не менее 16 Гбайт, рекомендуется не менее 200 Гбайт дискового пространства.
  • Целевые процессорные архитектуры: x86-64.
  • Целевые ОС: семейство Linux, поддерживается возможность работы с неопознанной ОС на базе Linux.

Краткое руководство пользователя

По вопросам определения стоимости, приобретения и использования, обращайтесь по адресу natch@ispras.ru

Разработчик/участник

Компиляторные технологии

Перейти к списку всех технологий