Друзья, всех приветствую!

В этой статье мы поговорим о том, как подбирать пароли к учетным записям, сайтам, страницам, аккаунтам с помощью Burp Suite.

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

В следующем примере демонстрируется техника обхода аутентификации с использованием имитированной страницы входа в систему из учебного инструмента "Mutillidae". Версия "Mutillidae", которую мы используем, взята из проекта OWASP "Broken Web Application Project". Скачать проект BWAP вы можете здесь.

Во-первых, убедитесь, что Burp Suite правильно настроен в вашем браузере. Во вкладке Burp Proxy убедитесь, что "Перехват выключен" ("Intercept is off") и посетите страницу входа (login page) в WEB-приложение, которое вы тестируете в вашем браузере.

Вернитесь в Burp Suite. На вкладке Proxy "Intercept" убедитесь, что "Intercept is on".

В браузере введите произвольные данные на странице входа и отправьте запрос.

Перехваченный запрос можно просмотреть на вкладке Proxy "Intercept". Щелкните правой кнопкой мыши на запросе, чтобы вызвать контекстное меню. Затем нажмите "Send to Intruder".

Перейдите на вкладку Intruder "Positions". Очистите предварительно установленные позиции, используя кнопку "Clear" справа от редактора запросов. Добавьте значения параметров "username" и "password" в качестве позиций, выделив их и используя кнопку "Add". Измените атаку на "Cluster bomb", используя выпадающее меню "Attack type".

Перейдите на вкладку "Payloads". В настройках "Payload sets" убедитесь, что "Payload set" равен "1", а "Payload type" установлен на "Simple list". В настройках "Payload options" введите несколько возможных имен пользователей. Вы можете сделать это вручную или использовать предварительно установленный список username.

Затем в настройках "Payload Sets" измените значение параметра "Payload" на "2". В настройках "Payload options" введите несколько возможных паролей. Вы можете сделать это так же вручную или использовать предварительно установленный список паролей. Далее нажмите кнопку "Начать атаку".

В окне "Intruder attack" вы можете сортировать результаты, используя заголовки столбцов. В данном примере сортировка производится по длине ("Content-Length") и по статусу.

Теперь таблица предоставляет нам некоторые интересные результаты для дальнейшего исследования. Просматривая ответ в окне атаки, мы видим, что запрос 118 вошел в систему под именем "admin".

Чтобы подтвердить успешность "брутфорса", используйте имя пользователя и пароль на странице входа в веб-приложение.

В некоторых случаях перебор на странице входа в систему может привести к тому, что приложение заблокирует учетную запись пользователя. Это может быть связано с политикой блокировки, основанной на определенном количестве неудачных попыток входа в систему и т.д. Хотя такая политика разработана для защиты учетной записи, она может привести к дополнительным уязвимостям. Злоумышленник может заблокировать несколько учетных записей, лишив пользователей доступа к ним. Кроме того, заблокированная учетная запись может вызвать изменения в "поведении" web-приложения, и это поведение должно быть изучено и потенциально использовано.

Всем спасибо за внимание!

Подписывайтесь на меня в соц. сетях, буду всем рад!

Комментарии (18)


  1. agratoth
    23.08.2022 18:42
    +2

    Столько телодвижений для простого брутфорса? Зачем возиться с целой "suite", если это все можно сделать примитивным скриптом на Python?


    1. Vest
      23.08.2022 19:25
      -2

      И быть забаненым по айпишнику через 5 попыток.


      1. agratoth
        23.08.2022 20:32
        +2

        И как эту проблему решает софт из сабжа? Мб, никак?


        1. Vest
          23.08.2022 23:29
          -2

          Не знаю за что вы меня минусуете, но ни этот софт, ни ваш скрипт на питоне не решает эту проблему. А подбирали бы вы пароль на какой-нибудь внутренней системе, то вообще бы залочили бедного пользователя.


          1. agratoth
            23.08.2022 23:32

            То был не я, вы обознались :) Я либо минусую, либо вычказываюсь - что-то одно :)


          1. M0r7iF3r
            24.08.2022 19:41
            -2

            Ну вообще этот софт может решить данную проблему благодаря двум параметрам: "Maximum concurrent requests" и "Delay between requests"


    1. M0r7iF3r
      25.08.2022 05:43

      С таким подходом совсем никаким софтом можно не возиться, потому что почти все можно написать на Python.

      Сколько времени потребуется чтобы написать скрипт на Python, который запустит простой брут? В Burp это займет секунд 20 и десяток кликов мыши, что позволяет сильно понизить порог входа для всяких тестировщиков.

      Здесь просто статья выбрана не очень удачно для демонстрации, хотя бы добавить как предварительно извлечь CSRF-токен, было бы чуть полезнее.


  1. mOlind
    23.08.2022 19:25
    +5

    Оригинал был написан 7 лет назад и устарел.


  1. BasicWolf
    23.08.2022 21:38
    +1

    Взрыв из прошлого. Как-будто вернулся в начало 2000-х и открыл свежий номер "Хакера".


    1. pae174
      23.08.2022 22:32
      +2

      Вот вы тут глумитесь, а у меня в логах тучи мамкиных хакеров брутят пароли WP, которой на сервере вообще нет. То есть какие-то странные толпы народу спокойно раз за разом запрашивают один и тот же /blog/wp-login.php, каждый раз пихают туда какие-то логины и пароли и даже кукисы с хомяка, получают в ответ 404 Not found и ... пытаются снова. Никаких неудобств это не доставляет - в Nginx уже давно добавлено правило специально для этих кретинов.


      1. agratoth
        23.08.2022 22:38

        Да это ж боты просто


        1. pae174
          23.08.2022 22:41

          Я в курсе. Я просто к тому, что ботописатели как-то отупели совсем - их дурацкие боты уже даже не понимают 404. В 2000х таких глупых скрипткидди не было.


          1. Wedmer
            24.08.2022 02:31
            +2

            Ну, у меня чисто по приколу некоторые служебные странички отдавали код 404)


      1. saboteur_kiev
        24.08.2022 02:00
        +3

        это не хакеры, это пентестеры после супер курсов


  1. HappyGroundhog
    23.08.2022 22:46
    +1

    Ссылка на новую страницу в Академии от разработчиков Burp несёт гораздо больше информации и даже с лабами…
    portswigger.net/web-security/authentication/password-based

    P.S. Скриншоты 7 летней давности особенно впечатляют, как уже выше указали)
    Даже на оригинальной странице висит плашка «This page may be out of date»


  1. n140
    24.08.2022 08:59

    Где скопипастил признавайся?)


    1. in9uz
      26.08.2022 11:01
      +1

      Это ж перевод)


  1. Moskus
    25.08.2022 05:40

    Любопытно, когда стало можно делать переводы в recovery mode?