Обробка корисного навантаження Burp Suite
Сьогодні ми збираємося обговорити опцію «Обробка корисного навантаження» Burp suite, яка є розширеною функціональністю, доступною на вкладці Intruder для виконання фаззінгу. Однак ви можете знати, як виконується фаззінг на вкладці Intruder, тому давайте розглянемо деякі з його вдосконалених методів, які можуть покращити нашуметодологію пошуку помилок.
TOOLS FOR FIND VULNERABILITY
Обробка корисного навантаження
Сьогодні ми збираємося обговорити опцію «Обробка корисного навантаження» Burp suite, яка є розширеною функціональністю, доступною на вкладці Intruder для виконання фаззінгу. Однак ви можете знати, як виконується фаззінг на вкладці Intruder, тому давайте розглянемо деякі з його вдосконалених методів, які можуть покращити нашуметодологію пошуку помилок.
Правила обробки корисного навантаження
Ці правила визначені для виконання різних завдань обробки кожного корисного навантаження перед його використанням. Ці правила виконуються в певній послідовності, і їх можна використовувати для усунення будь-якої проблеми з конфігурацією. Правила обробки корисного навантаження корисні в ситуаціях, коли потрібно створити різні корисні навантаження або коли ми хочемо обернути корисні навантаження в ширшу структуру чи схему кодування.
Доступно 12 типів правил обробки корисного навантаження:
Add prefix
Add suffix
Match / Replace
Substring
Reverse substring
Modify case
Encode
Decode
Hash
Skip if matches regex
Add Prefix
Це правило обробки додає префікс перед корисним навантаженням. По-перше, перехопимо запит сторінки входу в Bwapp, де ми вказали ім’я користувача за замовчуванням і неправильний пароль. Потім клацніть увійти, набір burp захопить запит сторінки входу на вкладці перехоплення.
Надішліть отриманий запит до Intruder, натиснувши вкладку правою кнопки миші. Тепер відкрийте вкладку Intruder, потім виберіть вкладку Position, і ви побачите виділені значення зеленого або червоного кольору, нам потрібно буде трішки зачистити непотрібне.
Натисніть кнопку Очистити праворуч від рамки вікна.
Тепер ми виберемо поля, які ми хочемо атакувати, тобто пароль, і клацнемо на кнопку Додати.
Виберіть тип атаки як sniper
Тепер натисніть вкладку Payloads. Потім виберіть тип корисного навантаження як Simple list, куди додамо словник, натиснувши кнопку Завантажити. Ми можемо завантажити словник або вручну додати значення за допомогою кнопки Додати в параметрах корисного навантаження, як показано на зображенні.
Перед виконанням атаки ми додамо правило обробки корисного навантаження до існуючого навантаження, тиснимо Add Prefix, і додаємо значення hash, який ,буде додаватися як префікс до кожного значення в словнику, як показано у вікні результатів. Виберіть «start atack» в меню Intruder, як показано на зображенні.
Тепер сядьте зручніше та розслабтеся, тому що тепер burp виконає свою роботу за вас.
Add Suffix
Це правило обробки додає суфікс після корисного навантаження. Щоб подивитися як це працює, ми перехопили запит з сторінки входу в Bwapp. Закидуємо запит знову в Intruder.
Тепер знову заходимо в Intruder, там вибираємо що саме будемо перебирати в вкладці Position, далі закидуємо значення паролів і вибираємо додавання вже суфікса до нашого списку навантажень, додавши в поле суфіксу 1234.
Тиснемо знову кнопку атаки, влаштовуємося зручніше та очікуємо на результати, а в попапі атаки ми побачимо що до кожного пароля додався суфікс 1234.
Match / Replace
Це правило обробки використовується для заміни будь-якої частини корисного навантаження. Як завжди хапаємо реквест в Bwapp, перекидуємо реквест в Intruder
Тепер знову заходимо в Intruder, там вибираємо що саме будемо перебирати в вкладці Position, далі закидуємо значення паролів і вибираємо match/replace до нашого списку навантажень, додавши в перше поле 1234, яке буде відповідати за заміну даних з цього значення, якщо буде зустрічатися із нашого списку значень, на то, що ми ввели в друге поле 9870. Спробуйте додати якесь значення паролю з 1234 і побачите як буде замінено це значення на то, що ми ввели в другому рядку.
Після атаки бачимо що два значення з паролів провели заміну значень.
Substring
Це правило обробки використовується для вилучення підчастини корисного навантаження, починаючи від початку слова в словнику до заданого символу в слові.
Перед виконанням атаки давайте налаштуємо Substring, в поле From вкажемо «0», який буде зчитувати та відправляти з першої літери в словах нашого словника, і введемо «3» у полі Length, який визначає довжину читаємого рядка, тобто буде пратися перці 4 літери в кожному слові зі словника. Наприклад, якщо слово «password», то при такому налаштувані буде так p = 0; а = 1; s = 2 і s = 3, отже, вийде на відправку лише pass з усього слова password.
Тиснемо атаку і даблюдаємо за такою картиною, що в кожному слові буде лише до 4 символів з нашого списку.
revers Substring
Це правило обробки працює як минула але в зворотньому порядку, тобто вилучення зі слова символів буде з кінця до початку.
Перед виконанням атаки давайте налаштуємо revers Substring, в поле From вкажемо «0», який буде зчитувати та робити відправку з останьої літери в словах нашого словника, і введемо «3» у полі Length, який визначає довжину читаємого рядка, тобто буде братися остані 4 літери в кожному слові зі словника. Наприклад, якщо слово «password», то при такому налаштувані буде так w = 3; 0 = 2; r = 1 і d = 0, отже, вийде на відправку лише word з усього слова password.
Modify Case
За потреби це правило обробки можна використовувати для зміни регістру корисного навантаження. Це правило має ті самі параметри, що доступні для типу корисного навантаження Case Modification.
Payload Encode
Це правило обробки можна використовувати для кодування корисного навантаження за допомогою різних схем, таких як URL, HTML, Base64, шістнадцятковий ASCII. Давайте розпочнемо!! По-перше, ми перехопили запит сторінки входу маршрутизатора, надавши IP-адресу за замовчуванням 192.168.1.1, де ми вказали недійсне ім’я користувача та пароль. Потім клацніть увійти, burp захопить запит сторінки входу на вкладці перехоплення.
Таким чином, надісланий запит буде перехоплено burp, який ви можете побачити на зображенні нижче. На скріншоті я виділив деяке значення в останньому рядку. Тут вказується, що тип автентифікації, який надає маршрутизатор, є базовим, ми бачимо, що вона закодована в базі 64.
Тепер вибираємо в запиті перебір саме цього хеша у вкладці Intruder, як це ми робили з паролем. Заливаємо список навантажень, а далі кодуємо його base64 — це комбінація імені користувача та пароля, тепер сценарій передбачає генерування такого самого кодованого значення автентифікації за допомогою словника паролів користувача.
Decode
Це правило обробки можна використовувати для декодування корисного навантаження за допомогою різних схем: URL, HTML, Base64 або ASCII hex. Як ми знаємо, декодування - це не що інше, як зворотне кодування. Його можна використовувати у протилежний спосіб, у який виконується кодування.
Hash
Це правило обробки можна використовувати для виконання операції хешування корисного навантаження. У цьому правилі обробки корисного навантаження доступно 7 типів алгоритмів хешування:
- SHA-384
- SHA-224
-SHA-256
- MD5
- MD2
- SHA
- SHA-512
Робимо перехоплення запиту де є уразливость, в хеш-значенні URL-адреси ми вказали неправильне хеш-значення HTTP://www.google.com замість фактичного хеш-значення HTTP://www.hackingarticles.in.
Перед виконанням атаки ми додали правило обробки корисного навантаження яким є Hashand, а потім ми вибрали MD5, який є поширеним алгоритмом для перетворення URL-адрес веб-сайтів у значення Hash MD5. Як ви бачите, вхідні рядки словника мають просту текстову форму з назвами сайтів, але це правило обробки перетворює їх у значення Hash MD5, які можна побачити у вікні результатів атаки.
Skip if Matches Regex
Це правило обробки можна використовувати для того щоб вилучити зі списку слів в яких є якась схожіть на той символ чи співвідношення додано в обробку даних. Давайте наприклад в обробку додамо символ @, це означає що всі слова в яких є цей символ, то вони не будуть використовуватись в переборі даних.
Запустивши атаку з набором мил та інших слів ми побачимо, що в атаці потрапили лише ті слова яких нема символа @, так як ми додали цей символ в обробку.
Отже тепер ми знаємо як можна обробляти дані при брут форсі для перевірок на вразливості як мобільні так і веб додатки.