Практические советы по программе Bug Hunting

Дата публикации: 2024-09-06T14:43:23

Теги: ["bug-hunting", "security"]

⏪ На главную
⏪ В Gemlog

Как мы, исследователи безопасности, можем добиться точного поиска, глубокого изучения и нахождения высококачественных отчетов об уязвимостях.

Часть 1. Предварительная подготовка - Инструкции перед поиском ошибок

1.1 Четыре необходимых приготовления перед получением вознаграждения за ошибку

# 1. Понимание распространенных уязвимостей

# 2. Использование инструментов взлома

# 3. Освоение технических знаний по безопасности

→ Языки программирования

→ Основы сетевой безопасности

→ Операционные системы и безопасность системы

→ Безопасность веб-приложений

→ Безопасность мобильных приложений

1.2 Начало действий всегда важнее, чем воображение!

Не начинайте веб-хакинг сейчас, начните со ВЧЕРА! Подготовьтесь к Bug Bounty всего за 4 шага:

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

2. Начните обучение на https://portswigger.net/web-security, выбрав определенный тип ошибки, например, Broken Access Control

3. Продолжайте читать раскрытые отчеты на https://hackerone.com/hacktivity/

4. Не попадайтесь в цикл обучения, начните взламывать сегодня!

Часть 2. Практическая стратегия - Идеи действий при поиске ошибок

2.1 Примените «стратегию голубого океана» к взлому Android!

Сначала начните с динамического анализа (это упрощает начало). Почти 50% приложений Android можно перехватить без SSL Pinning, не боясь этого.

Затем найдите проблемы с контролем доступа, например, сначала IDOR — APK с большей вероятностью будут уязвимы для BAC. Наконец, поместите свою полезную нагрузку XSS в приложение Android и проверьте, отражается ли она в его веб-приложении — я нашел много

Дополнительный совет: не помещайте свою полезную нагрузку XSS в графический интерфейс APK напрямую, вставьте ее через Burp с помощью перехвата — иногда фильтр приложений заменяет вредоносный код. [Моя первая награда Android появилась благодаря этому подходу]

2.2 Найдите вдохновение для награды за ошибки в объявлениях CVE

Когда вы ищете последние CVE, начните с создания всеобъемлющего набора данных, который включает все разведывательные данные из ваших программ. Это будет служить вам точкой отсчета.

Затем, каждый раз, когда выпускается новый CVE, просматривайте свой набор данных, чтобы определить любые технологии или продукты, которые могут быть уязвимы. Вы можете сделать это с помощью инструментов обнаружения технологий, таких как httpx, а затем выполните поиск конкретной технологии или продукта, упомянутых в CVE.

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

2.3 Не игнорируйте уязвимости аутентификации на основе OAuth или SAML

Никогда не пропускайте аутентификацию на основе OAuth или SAML. Большинство исследователей игнорируют их из-за их сложности. Даже разработчикам сложно правильно их настроить. Вот почему они наиболее уязвимы. Вы можете найти несколько хороших обходов аутентификации и также избежать дубликатов.

Часть 3. Руководство по действию - Практические навыки поиска ошибок

3.1 Шесть важных действий выдающихся исследователей

# 1. Безопасные методы кодирования

→ Проверка ввода и очистка вывода

→ Принцип наименьших привилегий

→ Использование безопасных библиотек и фреймворков

→ Стандарты безопасного кодирования

# 2. Используйте фреймворки тестирования веб-безопасности

# 3. Изучите программы вознаграждения за ошибки

# 4. Регулярно обновляйте знания

# 5. Этические соображения

# 6. Практикуйтесь и экспериментируйте

3.2 Добавьте 9 важных слов в свой список слов

Добавьте это в свой список слов, не пропустите:

/Signup

/Sign_up

/registration

/join

/enroll

/subscribe

/register

/Sign-Up

/v1/signup

Найдено внутреннее наказание только для сотрудников, запрашивающее учетные данные сотрудников--> fuzz --> найдена конечная точка регистрации --> зарегистрироваться как сотрудник 1/2.

3.3 Некоторые сочетания клавиш Burp Suite для повышения эффективности

Не используйте Burp Suite как Mediocre - Некоторые сочетания клавиш Burp Suite для эффективного взлома!

3.4 Поиск ошибок в URL - От сбора исторических URL до поиска критических ошибок

# 1. Используйте исторические URL для поиска ошибок

Используйте автоматизированные инструменты для сбора исторических URL из различных источников, команды:

Вручную просмотрите собранные URL-адреса, чтобы определить уникальные и потенциально интересные конечные точки.

Используйте grep для категоризации URL-адресов на основе определенных ключевых слов, таких как конечные точки API, файлы JavaScript, файлы PHP, файлы конфигурации и т.д.

Проверьте категоризированные URL-адреса на наличие потенциальных уязвимостей, таких как утечки PII, конфиденциальная информация в файлах JavaScript и т.д.

Конечные точки API: проверьте api_urls.txt на предмет конечных точек, которые могут раскрыть PII или другие конфиденциальные данные. Найдите открытые параметры, которые могут быть изменены для IDOR или других проблем с контролем доступа. Проверьте js_files.txt на наличие жестко закодированных учетных данных, ключей API или конфиденциальной информации.

Проверьте проверенные URL-адреса на наличие распространенных уязвимостей, таких как небезопасные прямые ссылки на объекты (IDOR), Broken Access Control (BAC) и другие.

# 2. Использование BurpJSLinkFinder для поиска критических ошибок

Анализируя эти URL-адреса, вы можете обнаружить IDOR, BAC, раскрытие информации, XSS, CSRF и многие другие ошибки.

Вы также можете поделиться статьей со своими друзьями в социальных сетях, которым может быть интересна эта статья, или просто оставить комментарий ниже. Спасибо.