Bug Bounty, Bug Hunting, HTTP Basic

#31 Bug Bounty v.2 — Аутентификация. HTTP Basic

Здравствуйте, дорогие друзья.

Если приложение требует, чтобы вы вошли в систему, оно должно использовать ту или иную форму аутентификации, чтобы подтвердить, кто вы такой. В зависимости от того, какой метод аутентификации использует приложение, для нарушения процесса аутентификации может быть использовано несколько типов атак.

Нарушение процесса аутентификации, как правило, приводит к перехвату учетной записи (ATO) уязвимости и, в зависимости от того, какие учетные записи вы перехватываете, также могут привести к повышению привилегий. В следующих разделах я расскажу о наиболее распространенных методах аутентификации и их подводных камнях.

HTTP Basic

Это, вероятно, самый простой и понятный способ аутентификации. Как показано на рисунке ниже, вы можете идентифицировать HTTP Basic Auth по всплывающему окну, которое отображается в веб-браузерах.

HTTP Basic Auth

После ввода вашего имени пользователя и пароля данные для аутентификации сохраняются в заголовке авторизации, как показано ниже:

сохранение данных в заголовке авторизации

Обратите внимание, что заголовок authorization — это просто строка имени пользователя и пароля в кодировке base64. Если бы мы расшифровали приведенную выше строку, то получили бы следующее:

Расшифровка строки

Это один из самых больших недостатков использования HTTP Basic Auth. Каждый раз, когда вы отправляете запрос, ваше имя пользователя и пароль в виде открытого текста отправляются в виде заголовка аутентификации в кодировке base64, что делает его очень уязвимым для атак на перехват.

На этом все. Всем хорошего дня!

Цикл статей по Bug Bounty.