Какие виды уязвимостей в веб-приложениях вы знаете?

SQL-инъекции: Внедрение вредоносного SQL-кода через пользовательский ввод для манипуляции базой данных.

Короткий ответ

Что ответить на собеседовании

SQL-инъекции: Внедрение вредоносного SQL-кода через пользовательский ввод для манипуляции базой данных.

Подробный разбор

Ответ с пояснениями

  • SQL-инъекции: Внедрение вредоносного SQL-кода через пользовательский ввод для манипуляции базой данных.

    -- Пример SQL-инъекции в параметре "id"  
    SELECT * FROM users WHERE id = '1' OR '1' = '1';  
    
  • XSS (Межсайтовый скриптинг): Внедрение вредоносного клиентского скрипта в веб-страницу, просматриваемую другими пользователями.

    <!-- Пример отраженного XSS -->  
    <script>alert('Уязвимость XSS!');</script>  
    
  • CSRF (Межсайтовая подделка запросов): Атака, вынуждающая пользователя выполнить нежелательные действия на веб-приложении, в котором он аутентифицирован.

  • LFI/RFI (Включение удаленного/локального файла): Уязвимость, позволяющая выполнять код или просматривать файлы на сервере через параметры запроса.

    // Пример уязвимого кода для LFI  
    include($_GET['page'] . '.php');  
    
  • Уязвимости сериализации (Deserialization Vulnerabilities): Взлом приложения путем манипуляции сериализованными объектами.

    // Пример небезопасной десериализации  
    $data = unserialize($_GET['data']); // Потенциально опасная функция  
    
  • Неправильная конфигурация безопасности: Отсутствие или неверная настройка механизмов безопасности (например, открытые папки, дефолтные пароли).

  • Недостатки контроля доступа: Возможность получить доступ к ресурсам или функционалу, к которым у пользователя не должно быть прав.

    Роль Ресурс Права
    Пользователь Профиль пользователя Чтение, Запись
    Пользователь Страница админа Нет
  • Инъекции команд ОС: Выполнение команд операционной системы через пользовательский ввод.

    // Пример уязвимого кода для инъекции команд ОС  
    $output = shell_exec('ls ' . $_GET['dir']);  
    
  • XXE (XML External Entity) Уязвимости, связанные с обработкой внешних сущностей в XML-документах.

  • Broken Authentication (Несовершенство аутентификации): Слабые или отсутствующие механизмы аутентификации пользователей.

  • Broken Access Control (Несовершенство контроля доступа): Неправильная реализация проверки прав доступа, позволяющая неавторизованный доступ к данным или функциям.

  • Security Misconfiguration (Неправильная конфигурация безопасности): Оставленные открытыми дефолтные аккаунты, неверно настроенные HTTP-заголовки, избыточные информационные сообщения об ошибках.

  • Sensitive Data Exposure (Раскрытие конфиденциальных данных): Передача или хранение конфиденциальных данных (пароли, номера карт) в незашифрованном виде.

  • Using Components with Known Vulnerabilities (Использование компонентов с известными уязвимостями): Использование устаревших библиотек, фреймворков или CMS с известными уязвимостями.

  • Insufficient Logging & Monitoring (Недостаточное логирование и мониторинг): Отсутствие или неполное логирование событий безопасности, что затрудняет выявление и расследование инцидентов.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее