Web Application Protection - Инструмент для обнаружения и исправления уязвимостей в веб-приложениях PHP

  • Автор темы Cherep
  • Дата начала
  • Участники 1

Cherep

Newbie
10.06.2020
8
0
1
1601637278563.png

Защита веб-приложений (WAP) - это инструмент статического анализа исходного кода и интеллектуального анализа данных для обнаружения и исправления уязвимостей проверки ввода в веб-приложениях, написанных на PHP (версия 4.0 или выше) с низким уровнем ложных срабатываний.

WAP обнаруживает и исправляет следующие уязвимости:
SQL-инъекция (SQLI)
Межсайтовый скриптинг (XSS)
Включение удаленного файла (RFI)
Включение локального файла (LFI)
Обход каталога или обход пути (DT / PT)
Раскрытие исходного кода (SCD)
Внедрение команд ОС (OSCI)
Внедрение кода PHP

1601637321319.png

1601637330698.png

Этот инструмент семантически анализирует исходный код. Точнее, он выполняет анализ помеченных данных (анализ потока данных) для обнаружения уязвимостей проверки входных данных. Целью анализа заражения является отслеживание вредоносных входных данных, вставленных точками входа (массивы $ _GET, $ _POST), и проверка того, достигают ли они какого-либо чувствительного приемника (функции PHP, которые могут быть использованы злонамеренным вводом). После обнаружения инструмент использует интеллектуальный анализ данных, чтобы подтвердить, являются ли уязвимости реальными или ложными. В конце настоящие уязвимости исправляются путем вставки исправлений (небольших фрагментов кода) в исходный код.


1601637362033.png

1601637368741.png

WAP написан на Java и состоит из трех модулей:
Анализатор кода: состоит из генератора дерева и анализатора помеченных данных. Инструмент интегрировал лексический анализатор и синтаксический анализатор, созданный ANTLR и основанный на грамматике и древовидной грамматике, написанной на языке PHP. Генератор дерева использует лексический анализатор и анализатор для построения AST (абстрактного синтаксического дерева) для каждого файла PHP. Анализатор заражения выполняет анализ заражения, перемещаясь по AST, чтобы обнаружить потенциальные уязвимости.
Предиктор ложных срабатываний: состоит из контролируемого обученного набора данных с экземплярами, классифицированными как уязвимости и ложные срабатывания, а также алгоритмом машинного обучения логистической регрессии. Для каждой потенциальной уязвимости, обнаруженной анализатором кода, этот модуль собирает наличие атрибутов, определяющих ложное срабатывание. Затем алгоритм логистической регрессии получает их и классифицирует экземпляр как ложноположительный или нет (реальная уязвимость).
Корректор кода: каждая реальная уязвимость устраняется путем исправления ее исходного кода. Этот модуль для типа уязвимости выбирает исправление, которое устраняет уязвимость, и указывает места в исходном коде, куда будет вставлено исправление. Затем код исправляется с добавлением исправлений и создаются новые файлы.


 

Вложения

Об LS-LA

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

About LS-LA

  • We, a group of like-minded people, whose main goal is to increase the level of knowledge and skills.
    Not forgetting about everyone’s material well-being)

Быстрая навигация

Пользовательское меню