HHIDE_DUMP
Гость
H
HHIDE_DUMP
Гость
Практически в любом веб-проекте есть уязвимости, и я научу вас использовать это обстоятельство в своих целях. Практических, конечно же.
Как исследовать элемент Site Name
Любое web-приложение работает по принципу кодировки символов «<» и «>». Для начала, нужно выяснить каким образом происходит обработка. Проверку получится обойти, если она происходит на стороне клиента HTML5/Javascript.
Итак, откройте страницу в удобном браузере, правой кнопкой мыши кликните на форме «Site Name». Вы увидите контекстное меню. Для того, чтобы открыть окно с редактированием свойств элементов необходимо выбрать пункт под названием "Inspect Element".
Как удалить все ограничения на стороне клиента
Тут все очень просто. Потребуется всего лишь увеличить значение в поле maxsize, при этом предварительно удалив поле pattern. Итого, мы получаем:
<input type="text" placeholder="Name of site" maxsize=" 100" class="form-control" required="" name="name">
Как удалить код, отвечающий за кодирование символов
С большой вероятностью, символы "<" и ">" обрабатываются при помощи файла ex1.js (Javascript). Первым делом необходимо слегка отредактировать avascript-код на стороне клиента. Для этого предлагаю использовать плагин Web Developer. Удаляем код, который отвечает за кодирование HTML-символов, зайдя во вкладку Sources. Вот что у нас получается:
var siteName = $(".ex1 input[type='text']").val().trim().replace(/</g, "<").replace(/>/g, ">"); var siteURL = $(".ex1 input[type='url']").val().trim().replace(/</g, "<").replace(/>/g, ">");
Как добавить полезную нагрузку
После удаления обработки символов на стороне клиента, в поле Site Name необходимо добавить следующую полезную нагрузку, не забыв нажать на Submit:
<script>alert('Ex1')</script>
Что имеем в сухом остатке? При помощи проведенных манипуляций, мы успешно инжектируем в страницу полезную нагрузку. Защититься от таких атак можно единственным способом: необходимо, чтобы проверка данных пользователя происходила на стороне сервера.
Спасибо за прочтение.