Добро пожаловать на курс Web Application Pentesting колеги. Сегодня мы поговорим с Вами о
Сразу же хочу предупредить , что у Вивека (автора оригинального курса ) эта часть больше теоретическая ,но я попытаюсь вкратце изложить суть его теории. Но в конце статьи , я просто приложу видео, где очень доходчиво на русском языке объясняется специалистами Mail.Ru Group вся теория, что бы не писать много текста.
Давайте себе на секунду представим ситуацию, когда мы с утра идем на метро и встречаем там незнакомца,который говорит нам : "Привет Серега, меня зовут Иван."
Так вот , на следующие утро,мы так же встречаем этого Ивана ,который просто говорит уже нам "Привет Серега" , а то что его зовут Иван,мы уже знаем после вчерашнего знакомства.
Теперь давайте снова вернемся к нашему протоколу HTTP:
Изучив с вами механизмы базовой аутентификации мы могли бы сделать с вами вывод о том, что это создает нам ряд неудобств таких как:
Сервер не помнит о том когда в последний раз вы аутентифицировались на нем, и при последующем обращении он снова попросит вас логин и пароль.
По этому в протоколе HTTP был разработан подход к решению этой проблемы, основанный на так называемых куках|кукисах(печеньках). Этот механизм представляет из себя способ поддержания состояния(сессии) клиента.
То есть веб сервер способен сохранять и извлекать информацию об клиенте.
Информация о куки передается в виде чистого текста ,хранится как правило в файле на стороне клиента,на стороне браузера.
Простыми словами - это не что похожее на уникальный идентификатор клиента,имея который можно в уникальный способ аутентифицироватся на сервере.
Думаю ни для кого не секрет , что куки с легкостью можно посмотреть в своем браузере:
Так они выглядят в Google Chrome:
Так вот в Mozilla Firefox:
В ваершарке можно с легкостью отфильтровать куки с помощью фильтра http.cookie:
А момент выдачи куки сервером клиенту фильтром: http.set_cookie:
Сервер в свою очередь посылает клиенту заголовок Set Cookie и необходимые параметры кукисов, после чего браузер клиента принимает выдаваемые сервером куки и в потом обращается на сервер с заголовком Cookie :
Как видим из скриншотов каждая куки имеет ряд параметров. Давайте посмотрим на них:
Name=Value -- каждая кука имеет имя и свое значения
Expires -- Время жизни куки, по умолчанию - до закрытия окна
Domain - домен куки , по умолчанию - домен текущего урл
Path - путь по которому действует кука,по умолчанию путь текущего урл
Secure - кука должна передаваться только по HTTPS
HttpOnly - куки недоступны для работы с ними через JavaScript (document.cookie на пример)
Красным я выделил два параметра ,которые не маловажные в пентесте - так их отсудствие - может говорить о том что куки с легкостью можно перехватить,например через XSS атаку и т.д.
Дальше, что бы не писать здесь много текста, я всем советую посмотреть видео от специалистов mail.ru group
Здесь более чем доступно рассматривается механизм работы куки
Также советую посмотреть и это видео,которое так же объясняет принцип работы куки:
Ну что же, надеюсь в видео вам все доступно объяснили. Давайте теперь по практикуемся на простеньком таске от рутми:
Стартуем таск и смотрим исходный код,находим там подсказку о том какие куки создаются сервером при переходе по ссылке:
Проверить куки легко можно в самой консоли браузера (hotkey ctrl+shift+i затем вкладка Network или сразу ctrl+shift+Q)
Далее интуитивно меняем куки на админскую куку с помощью любого куки менеджера,я использовал Cookie Manager + для Firefox. Сохраняем куку и вуаля - мы админ!)
Вот видео:
Ссылка скрыта от гостей
(Cookie).Сразу же хочу предупредить , что у Вивека (автора оригинального курса ) эта часть больше теоретическая ,но я попытаюсь вкратце изложить суть его теории. Но в конце статьи , я просто приложу видео, где очень доходчиво на русском языке объясняется специалистами Mail.Ru Group вся теория, что бы не писать много текста.
Давайте себе на секунду представим ситуацию, когда мы с утра идем на метро и встречаем там незнакомца,который говорит нам : "Привет Серега, меня зовут Иван."
Так вот , на следующие утро,мы так же встречаем этого Ивана ,который просто говорит уже нам "Привет Серега" , а то что его зовут Иван,мы уже знаем после вчерашнего знакомства.
Теперь давайте снова вернемся к нашему протоколу HTTP:
Изучив с вами механизмы базовой аутентификации мы могли бы сделать с вами вывод о том, что это создает нам ряд неудобств таких как:
Сервер не помнит о том когда в последний раз вы аутентифицировались на нем, и при последующем обращении он снова попросит вас логин и пароль.
По этому в протоколе HTTP был разработан подход к решению этой проблемы, основанный на так называемых куках|кукисах(печеньках). Этот механизм представляет из себя способ поддержания состояния(сессии) клиента.
То есть веб сервер способен сохранять и извлекать информацию об клиенте.
Информация о куки передается в виде чистого текста ,хранится как правило в файле на стороне клиента,на стороне браузера.
Простыми словами - это не что похожее на уникальный идентификатор клиента,имея который можно в уникальный способ аутентифицироватся на сервере.
Думаю ни для кого не секрет , что куки с легкостью можно посмотреть в своем браузере:
Так они выглядят в Google Chrome:
В ваершарке можно с легкостью отфильтровать куки с помощью фильтра http.cookie:
А момент выдачи куки сервером клиенту фильтром: http.set_cookie:
Сервер в свою очередь посылает клиенту заголовок Set Cookie и необходимые параметры кукисов, после чего браузер клиента принимает выдаваемые сервером куки и в потом обращается на сервер с заголовком Cookie :
Как видим из скриншотов каждая куки имеет ряд параметров. Давайте посмотрим на них:
Name=Value -- каждая кука имеет имя и свое значения
Expires -- Время жизни куки, по умолчанию - до закрытия окна
Domain - домен куки , по умолчанию - домен текущего урл
Path - путь по которому действует кука,по умолчанию путь текущего урл
Secure - кука должна передаваться только по HTTPS
HttpOnly - куки недоступны для работы с ними через JavaScript (document.cookie на пример)
Красным я выделил два параметра ,которые не маловажные в пентесте - так их отсудствие - может говорить о том что куки с легкостью можно перехватить,например через XSS атаку и т.д.
Дальше, что бы не писать здесь много текста, я всем советую посмотреть видео от специалистов mail.ru group
Здесь более чем доступно рассматривается механизм работы куки
Ну что же, надеюсь в видео вам все доступно объяснили. Давайте теперь по практикуемся на простеньком таске от рутми:
Ссылка скрыта от гостей
Стартуем таск и смотрим исходный код,находим там подсказку о том какие куки создаются сервером при переходе по ссылке:
Проверить куки легко можно в самой консоли браузера (hotkey ctrl+shift+i затем вкладка Network или сразу ctrl+shift+Q)
Далее интуитивно меняем куки на админскую куку с помощью любого куки менеджера,я использовал Cookie Manager + для Firefox. Сохраняем куку и вуаля - мы админ!)
Вот видео: