Учебники

Тестирование безопасности — выполнение вредоносных файлов

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

пример

Некоторые из классических примеров включают в себя —

  • Загрузите файл .jsp в веб-дерево.
  • Загрузите .gif для изменения размера.
  • Загрузите огромные файлы.
  • Загрузите файл, содержащий теги.
  • Загрузить файл .exe в веб-дерево.

Руки вверх

Шаг 1 — Запустите WebGoat и перейдите к разделу «Вредоносный файл». Снимок сценария приведен ниже —

malacious_file_execution

Шаг 2 — Чтобы завершить этот урок, нам нужно загрузить guest.txt в указанном выше месте.

Шаг 3 — Давайте создадим файл jsp так, чтобы файл guest.txt создавался при выполнении jsp. Именование jsp не играет никакой роли в этом контексте, так как мы выполняем содержимое файла jsp.

<HTML> 
   <% java.io.File file = new 
      java.io.File("C:\\Users\\username$\\.extract\\webapps\\WebGoat\\mfe_target\\guest.txt"); 
      file.createNewFile(); %> 
</HTML>

Шаг 4 — Теперь загрузите файл JSP и скопируйте расположение ссылки там же после загрузки. Загрузка ожидает изображение, но мы загружаем jsp.

malacious_file_execution1

Шаг 5 — Перейдя к файлу jsp, пользователь не получит никаких сообщений.

Шаг 6 — Теперь обновите сеанс, в который вы загрузили файл jsp, и вы получите сообщение «Поздравляем. Вы успешно завершили урок».