HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > БЕЗОПАСНОСТЬ И УЯЗВИМОСТИ > Этичный хакинг или пентестинг
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 01.01.2017, 20:54
<~DarkNode~>
Новичок
Регистрация: 20.10.2016
Сообщений: 0
С нами: 5033900

Репутация: 0
По умолчанию

Привет колеги.
Добро пожаловать на курс Web Application Pentesting.
В этой статье мы с вами поговорим о:
  • Вспомним немного заголовки ответа сервера
  • Поговорим о HTTP аутентификации ,ее видах
  • Посмотрим на HTTP базовую аутентификацию (HTTP Bacic Auth)
  • Посмотрим как атаковать HTTP Basic Auth c помощью:
    • http-brute скрипта от Nmap
    • http-login auxiliary модуля вMetasploit
    • Перебор пароля с помощьюHydra (Дополнение от меня)
Итак прежде чем мы начнем знакомство за HTTP аутентификацией давайте немножко вспомним коды ответа веб сервера:



В прошлой статье мы познакомились с вами как можно отсылать на сервер различные запросы (GET,POST,HEAD и т.д) И на каждый такой запрос сервер нам отвечает в первую очередь статус кодом ответа.То есть это может быть успешное обращение к ресурсу(2xx),в результате которого мы получаем желаемый контент,перенаправление на другой ресурс(3xx), ошибки на стороне сервера(5xx),информационные заголовки (1xx) или ошибки на стороне клиента (4xx)
Конкретно в этой статье мы будем встречаться с заголовком 401 - не пройдена авторизация клиента.

Теперь давайте поговорим об аутентификации HTTP
Аутентификация в HTTP бывает только двух видов:
  • HTTP Bacic Auth(Базовая Аутентификация)
  • HTTP Digest Auth(Цифровая Аутентификация)
Это важно понимать!! Так как различные формы аутентификации, windows ntlm аутентификации и т.д
не имеют никакого отношения к стандартам HTTP протокола и HTTP аутентификации.



Теперь давайте посмотрим на слайд выше, и попытаемся понять как же работает аутентификация в HTTP. Как можно наблюдать, все очень и очень просто:
  1. Клиент запрашивает защищенный ресурс у сервера
  2. Сервер просит клиента отправить ему необходимый логин:пароль
  3. Клиент отправляет Серверу логин:пароль
  4. В случае успешной проверки присланных данных сервер дает доступ на запрашиваемый защищенный ресурс,в противном (если логин и пароль не прошли проверку ) случае отдаст статус код ответа401
Вроде как все понятно.
Давайте посмотрим как это выглядит на практике через анализатор сетевого трафика WireShark:
В PentesterAcademy есть бесплатная площадка для тренировки полученных знаний:
Давайте откроемтаск по http basic auth



Видим что это задания которое мы решим немножко поже в этой статье,немного забегая наперед возьмем пока уже готовый логин и пароль от этого таска( только в целях демонстрации работы аутентификации)
логин: admin
пароль: aaddd
Откроем и запускаем WireShark и сперва давайте посмотрим на трафик неудачной аутентификации:









Как можете наблюдать сервер передается запрос методом POST и появляется заголовок (header|хедер)Authorization со значением Basic и base64 символы. На что сервер ответил нам 401 статус кодом и мы не получили желаемый контент.
Теперь давайте попробуем зайти под валидными кредами|creds(логин:пароль):






Как видим идет запрос на сервер к защищенному ресурсу через метод POST но в хедере Authorization идут уже валидные логин и пароль (admin:aaddd) в base64 кодировке(Wireshark имеет в себе функционал декодировать base64 кодировку) Если кто хочет проверить то можно легко это сделать даже в командной строке :



Как результат успешной проверки логина и пароля на стороне сервера ,нам вернулся заголовок ответа 200 ОК и желаемый контент)
Надеюсь здесь более менее понятно как работает базовая HTTP аутентификация ,о Digest Auth мы поговорим в следующей статьи.

Теперь давайте перейдем к атаке на базовую аутентификацию:
Для начала как в рамках курсах Вивека посмотрим атаки с помощью Nmap и Metasploit Framework
Сразу же хочу заметить плюсы такой атаки



Суть атаки как вы уже смогли догадаться в том , что мы перебираем возможные пароли и логины к запрашиваемому ресурсу через брутфорс по словарю.
И так давайте вернемся к нашему таску от Вивека:
Видим подсказку (hint|хинт) о том , что валидный логин или admin или nick
а пароль состоит из 5 латинских символов в нижнем регистре и состоит только из трех букв a,s,d



Создадим сперва словарик утилитой crunch:



Подготовим файл с логинами:



Сходим на официальный сайт nmap за документацией по http-brute скрипту
Смотрим необходимые параметры:



Наша команда для нмап выглядит примерно так:

nmap -p 80 --script http-brute --script-args 'http-brute.hostname=pentesteracademylab.appspot.com,http-brute.method=POST,http-brute.path=/lab/webapp/basicauth,passdb=./pass.txt,userdb=./users.txt' -v pentesteracademylab.appspot.com -n
И результат:



Как видим все на отлично отработало) Наш логин пароль сбрутился за 9 секунд.
Идем дальше.
Давайте добьемся того же результата через метасплоит через модуль http_login:



Цитата:

Признаюсь честно ,при попытке выполнить этот модуль на таске Вивека - он у меня не отработал,наверное упустил какуе то мелочную деталь в опциях,но пока нету времени разбираться с проблемой так что попытаюсь разобраться немножко позже и укажу где была проблема,а пока для демонстрации возьму вдс-ку одного товарища)



Заполним необходимые опции и запустим :



Проверим результат SoolFaa привет)


Теперь от себя немного добавлю.
Так же HTTP Basic аутентификация прекрасно брутится с помощью утилиты Hydra
hydra -l admin -P pass.txt pentesteracademylab.appspot.com http-post /lab/webapp/basicauth




Как видим результат тот же)
Вот видосик к статье:

Всем спасибо) Продолжение следует)
Понравилась статья - жмакни лайк

Вот пдф-ка со слайдами небольшая по статье смотрите во вложенных файлах.
 
Ответить с цитированием

  #2  
Старый 02.01.2017, 16:45
id2746
Новичок
Регистрация: 13.11.2016
Сообщений: 0
С нами: 4999287

Репутация: 0
По умолчанию

Цитата:

~~DarkNode~~ сказал(а):

Заполним необходимые опции и запустим :

забыли еще на скрине при запуске и ошибке эксплойта на вдс-ку товарища RHOSTS замазать
 
Ответить с цитированием

  #3  
Старый 02.01.2017, 17:07
<~DarkNode~>
Новичок
Регистрация: 20.10.2016
Сообщений: 0
С нами: 5033900

Репутация: 0
По умолчанию

Цитата:

id2746 сказал(а):

забыли еще на скрине при запуске и ошибке эксплойта на вдс-ку товарища RHOSTS замазать

Ничего страшного) Он не обидится )
 
Ответить с цитированием

  #4  
Старый 03.01.2017, 23:17
<~DarkNode~>
Новичок
Регистрация: 20.10.2016
Сообщений: 0
С нами: 5033900

Репутация: 0
По умолчанию

Цитата:

Inject0r сказал(а):

~~DarkNode~~,подскажи, а как изменится команда брута через гидру, если форма с логином и паролем находится на корневой странице? Пробовал после http-post поставить слеш и не работает в итоге. Гидра считает все пароли правильными из файла, хотя это не так.

А у тебя точно Basic Auth по / ??? Или там быть может просто веб форма аутентификации?
попробуй http-get /
Если не поможет - стучи в личку. Попробуем решить.
 
Ответить с цитированием

  #5  
Старый 07.01.2017, 12:26
ghostphisher
Новичок
Регистрация: 07.12.2016
Сообщений: 0
С нами: 4963406

Репутация: 0
По умолчанию

Цитата:

sdfsd сказал(а):

DNS сервер данных сайтов настроен так, чтобы отсылать данный IP адрес.

1) #ping blablabla.com
PING blablabla.com (69.172.201.153) 56(84) bytes of data.
2) nmap -Pn используется при сканирование "не пингующихся" хостов
 
Ответить с цитированием

  #6  
Старый 07.01.2017, 13:38
<~DarkNode~>
Новичок
Регистрация: 20.10.2016
Сообщений: 0
С нами: 5033900

Репутация: 0
По умолчанию

Цитата:

sdfsd сказал(а):

Hello! Can i ask you a question?
Почему я получаю ответ 127.0.0.1 когда пингую "blablabla.com",и nmap тоже.Cмог нагуглить - Это не ошибка Outpost. DNS сервер данных сайтов настроен так, чтобы отсылать данный IP адрес.

Попробуйте воспользоваться DSN сервером гугла:
Если используется Windows:



Если Linux добавить строкуnameserver 8.8.8.8 в /etc/resolv.conf:





После чего sudo service networking restart && sudo service network-manager restart
 
Ответить с цитированием

  #7  
Старый 07.01.2017, 16:55
<~DarkNode~>
Новичок
Регистрация: 20.10.2016
Сообщений: 0
С нами: 5033900

Репутация: 0
По умолчанию

Цитата:

sdfsd сказал(а):

у меня slackware, днс гугла добавил этих команд не видит.service: command not found
вафлю обычно перезагружаю /etc/rc.d/rc.inet1 restart
та же песня 127.0.0.1
[doublepost=1483793358,1483791046][/doublepost]
это происходит лишь с одним доменом

На всякий случай посмотрите содержимое файла:
/etc/hosts
 
Ответить с цитированием

  #8  
Старый 07.01.2017, 18:57
ghostphisher
Новичок
Регистрация: 07.12.2016
Сообщений: 0
С нами: 4963406

Репутация: 0
По умолчанию

Может надо в железке (роутере) прописать? И не относится ли каким либо образом ресурс, который надо исследовать к сети провайдера?
 
Ответить с цитированием

  #9  
Старый 23.07.2017, 15:38
ActionNum
Новичок
Регистрация: 27.11.2016
Сообщений: 0
С нами: 4977822

Репутация: 0
По умолчанию

Аналогично в Metasploit не получилось сделать брут. Указываю AUTH_URI /lab/webapp/basicauth в RHOST pentesteracademylab.appspot.com, но запрос почему то идет минуя AUTH_URI
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.