28.08.2015 @ 11:45 Перевод OWASP Testing Guide. Часть 1.6. owasp, web security Представляю вашему вниманию шестую часть перевода OWASP Testing Guide. В данной статье речь пойдет о поиске утечек информации в комментариях и метаданных веб-приложения. Предыдущие статьи: Тестирование: введение и задачи Сбор информации с помощью поисковых систем Определение веб-сервера Поиск информации в метафайлах веб-сервера Определение веб-приложений на сервере Резюме Зачастую разработчики добавляют в свои проекты детальные комментарии и метаданные. Однако, комментарии и метаданные в HTML страницах могут раскрыть различную внутреннюю информацию, которая может помочь злоумышленникам при проведении атаки. Необходимо изучать комментарии и метаданные, чтобы убедиться, что в них не содержится какая-либо важная информация. Поставленные задачи Изучить комментарии и метаданные в тестируемом веб-приложении, чтобы лучше его понять и попытаться найти информацию, которая может пригодится при проведении тестирования. Как тестировать В HTML комментарии разработчики включают различную отладочную информацию. Иногда они попросту забывают их убрать перед размещением веб-приложения в сети. Пентестеры должны изучить комментарии на всех страницах, которые начинаются с «<!—» (прим. переводчика: для поиска комментариев и метаданных отлично подходит OWASP Zed Attack Proxy, который содержит необходимый функционал для поиска). Тестирование по методу черного ящика Изучите все комментарии в исходном коде и попытайтесь найти информацию, которая может помочь атакующему при проведении атаки: SQL код, имена пользователей и пароли, внутренние IP-адреса или отладочную информацию. ... <div class="table2"> <div class="col1">1</div> <div class="col2">Mary</div> <div class="col1">2</div> <div class="col2">Peter</div> <div class="col1">3</div> <div class="col2">Joe</div> <!-- Query: SELECT id, name FROM app.users WHERE active='1' --> </div> ... Иногда пентестер может столкнуться даже с подобным: <!-- Use the DB administrator password for testing: f@keP@a$$w0rD --> Изучите версию HTML и определение типа документа (DTD). <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> strict.dtd loose.dtd frameset.dtd Некоторые мета теги не предоставляют векторов для атак, зато благодаря ним можно получить различную информацию <META name="Author" content="Andrew Muller"> Некоторые мета теги изменяют HTTP заголовки в ответе, например, аттрибут http-equiv устанавливает заголовки в ответе сервера в соответствии с его содержимым: <META http-equiv="Expires" content="Fri, 21 Dec 2012 12:34:56 GMT"> благодаря подобной конструкции появится HTTP заголовок: Expires: Fri, 21 Dec 2012 12:34:56 GMT Аттрибут http-equiv можно протестировать на наличие некоторых инъекционных атак (например, CRLF), хотя можно просто изменять запрос с помощью перехватывающего прокси (прим. переводчика). Довольно часто используется аттрибут refresh <META http-equiv="Refresh" content="15;URL=https://www.owasp.org/index.html"> В мета тегах также могут указываться ключевые слова для поиска <META name="keywords" lang="en-us" content="OWASP, security, sunshine, lollipops"> Поведением поисковых системы в основном управляют с помощью файла robots.txt, однако это можно также делать с помощью тега meta. Данный тег не рекомендует индексировать страницу и переходить по ссылкам на данной странице <META name=»robots» content=»none»> Тестирование по методу серого ящика Не применимо Инструменты Wget Функция браузера «Исходный код страницы» Глаза Curl Справочные руководства http://www.w3.org/TR/1999/REC-html401-19991224 HTML version 4.01 http://www.w3.org/TR/2010/REC-xhtml-basic-20101123/ XHTML http://www.w3.org/TR/html5/ HTML version 5 abychutkin 9886 Web security Читать дальше >>