Ключевые идеи
1. Выбирайте программы Bug Bounty с умом
Первый шаг к успеху в охоте за уязвимостями — найти подходящую программу.
Типы активов и рамки программы. При выборе программы важно учитывать типы активов (веб, мобильные приложения, API, оборудование) и рамки программы (что входит в зону тестирования, а что нет). Новичкам стоит выбирать программы с широким охватом и активами, соответствующими их навыкам — например, социальные сайты или общие веб-приложения. Понимание рамок программы поможет избежать юридических проблем и сосредоточить усилия на действительно важных целях.
Платформы против независимых программ. Решите, хотите ли вы участвовать в программах на платформах типа HackerOne или Bugcrowd, или предпочитаете независимые программы. Платформы обеспечивают прозрачность и удобство, а независимые программы часто менее конкурентны и дают возможность напрямую общаться с командами разработчиков. Взвесьте плюсы и минусы, чтобы выбрать оптимальный вариант.
Выплаты и скорость отклика. Оцените структуру выплат (добровольные программы или денежные вознаграждения) и среднее время ответа. Отдавайте предпочтение программам с быстрым откликом — это ускорит обучение и позволит получать своевременную обратную связь. Также учитывайте репутацию программы и отношение к исследователям.
2. Пишите качественные отчёты об уязвимостях
Ваша задача — не только найти уязвимость, но и понятно объяснить её команде безопасности.
Чётко и понятно. Хорошо составленный отчёт — залог эффективного взаимодействия с командой безопасности. Включайте информативный заголовок, ясное описание проблемы и пошаговые инструкции для воспроизведения. Помните, что читатель может плохо разбираться в приложении, поэтому дайте все необходимые детали.
Оценка серьёзности и влияние. Честно оценивайте уровень серьёзности уязвимости (низкий, средний, высокий, критический) и опишите возможные последствия и сценарии атаки. Это поможет команде безопасности правильно расставить приоритеты и понять бизнес-риски. Оценка должна соответствовать приоритетам клиента.
Рекомендации и проверка. Предлагайте возможные способы устранения и тщательно проверяйте отчёт на технические ошибки и ясность. Это сэкономит время команды безопасности и укрепит доверие. Всегда общайтесь профессионально и с уважением.
3. Стройте отношения с командами безопасности
Ваша работа не заканчивается с отправкой отчёта.
Понимание статусов отчётов. Ознакомьтесь с разными статусами отчётов (нужна дополнительная информация, информативный, дубликат, неактуально, рассмотрен, исправлен) и отвечайте оперативно. Быстро предоставляйте разъяснения и помогайте команде устранить проблему.
Разрешение конфликтов и партнёрство. Решайте спорные моменты профессионально и с уважением, стремитесь к долгосрочному сотрудничеству с организациями. Это облегчит процесс рассмотрения отчётов, увеличит вознаграждения и может открыть двери к работе. Избегайте спама, навязчивых требований денег и оскорблений.
Стиль общения. Изучайте стиль коммуникации каждой организации и адаптируйте отчёты, чтобы облегчить работу читателю. Поддерживайте команду безопасности до полного решения проблемы и предлагайте советы по снижению рисков.
4. Освойте основы интернета и меры безопасности
Поиск уязвимостей в вебе — это умение использовать слабые места в технологии, поэтому фундаментальные знания обязательны.
Клиент-сервер и HTTP. Понимайте модель клиент-сервер, DNS, интернет-порты, HTTP-запросы и ответы. Изучите распространённые HTTP-методы (GET, POST, PUT, DELETE) и коды статуса (200, 302, 403, 500). Это основа веб-коммуникации.
Кодирование и шифрование. Ознакомьтесь со схемами кодирования (Base64, URL encoding) и методами шифрования. Учитесь декодировать данные и понимать, как шифрование защищает конфиденциальность. Это важно для анализа и манипуляций с веб-трафиком.
Управление сессиями и аутентификация. Разберитесь с управлением сессиями, HTTP-куки, аутентификацией на основе токенов и JSON Web Tokens (JWT). Поймите, как эти механизмы идентифицируют пользователей и защищают ресурсы. Также изучите политику одного источника (SOP) и её роль в предотвращении межсайтовых атак.
5. Проводите тщательный разведывательный анализ для максимального эффекта
Время, потраченное на разведку, даёт огромное преимущество — вы первыми обнаружите баги на редких активах, что повышает шансы найти уникальные уязвимости.
Определение рамок и картирование активов. Всегда проверяйте рамки тестирования и составьте карту всех активов в зоне (домены, поддомены, IP-адреса). Используйте WHOIS, обратный WHOIS, парсинг сертификатов и методы перебора поддоменов. Инструменты вроде Sublist3r, Amass и Gobuster помогут автоматизировать поиск.
Перечисление сервисов и перебор директорий. Сканируйте порты с помощью Nmap или Masscan, чтобы выявить сервисы на целевых машинах. Используйте Dirsearch или Gobuster для поиска скрытых директорий и файлов. Делайте скриншоты найденных страниц с помощью EyeWitness или Snapper.
OSINT и сторонний хостинг. Применяйте OSINT-техники (Google dorking, вакансии, профили LinkedIn) для сбора информации о технологическом стеке и инфраструктуре цели. Ищите S3-бакеты и другие сторонние хостинги, используемые организацией.
6. Методично эксплуатируйте распространённые веб-уязвимости
В этой книге Вики подробно разбирает разные типы уязвимостей, чтобы углубить ваше понимание веб-взлома.
Межсайтовый скриптинг (XSS). Поймите механизмы, типы (хранимый, отражённый, DOM-based) и методы защиты от XSS. Учитесь искать XSS, выявляя точки ввода, вставляя полезные нагрузки и подтверждая эффект. Освойте обходы защиты от XSS.
Открытые редиректы. Разберитесь, как работают открытые редиректы, как их предотвращать и как искать, анализируя параметры перенаправления. Освойте методы обхода защиты, включая автокоррекцию браузера, уязвимости в логике валидаторов и использование data URL.
Кликджекинг и CSRF. Поймите механизмы и методы защиты от кликджекинга и межсайтовой подделки запросов (CSRF). Учитесь находить эти уязвимости, выявляя действия, изменяющие состояние, и отсутствие защит. Освойте обходы защиты от кликджекинга и CSRF.
IDOR, SQL-инъекции и SSRF. Изучите механизмы и защиту от небезопасных прямых ссылок на объекты (IDOR), SQL-инъекций и серверных подделок запросов (SSRF). Учитесь искать уязвимости, создавая два аккаунта, исследуя функции, перехватывая запросы и меняя идентификаторы. Освойте обходы защиты.
Небезопасная десериализация и XXE. Поймите механизмы и защиту от небезопасной десериализации и уязвимостей XML External Entity (XXE). Учитесь искать их, находя точки ввода XML и тестируя классические и слепые XXE. Освойте обходы защиты.
Внедрение шаблонов, ошибки логики и удалённое выполнение кода (RCE). Изучите механизмы и защиту от внедрения шаблонов, ошибок логики и нарушений контроля доступа, а также RCE. Учитесь искать уязвимости, изучая цель, перехватывая запросы и думая нестандартно. Освойте обходы защиты.
7. Автоматизируйте разведку и поиск уязвимостей
Освоив программирование на Python или shell-скрипты, вы сэкономите массу времени.
Основы bash-скриптов. Изучите переменные, условия, циклы и функции в bash. Используйте скрипты для автоматизации задач разведки и создания собственных инструментов.
Сохранение вывода и добавление опций. Реализуйте перенаправление ввода-вывода для сохранения результатов в файлы. Добавляйте опции выбора инструментов и планируйте автоматические сканирования через cron.
Парсинг результатов и создание отчётов. Используйте grep и другие утилиты для обработки вывода и составления сводных отчётов. Создавайте библиотеки функций для повторного использования кода и интерактивных программ.
8. Анализируйте исходный код в поисках скрытых уязвимостей
Понимание того, как уязвимости проявляются в коде, развивает интуицию и помогает находить их быстрее.
Белое и чёрное тестирование. Разберитесь в различиях между белым (с доступом к коду) и чёрным тестированием. Если есть доступ к исходникам, проводите белый аудит для более эффективного поиска уязвимостей.
Быстрый метод: grep и поиск шаблонов. Используйте grep для поиска опасных функций, утечек секретов, слабого шифрования, устаревших зависимостей, комментариев разработчиков и отладочных функций. Это быстрый способ найти распространённые проблемы.
Подробный метод: важные функции и ввод пользователя. Сосредоточьтесь на ключевых функциях (аутентификация, сброс пароля, действия, меняющие состояние) и коде, обрабатывающем ввод пользователя. Это поможет выявить потенциальные уязвимости.
9. Адаптируйте навыки веб-взлома для мобильных приложений
Взлом мобильных приложений требует знаний веб-взлома и особенностей мобильных платформ.
Настройка мобильного прокси. Настройте устройство или эмулятор для работы с прокси, например Burp Suite. Установите сертификат прокси на устройство для перехвата HTTPS-трафика.
Обход certificate pinning. Научитесь обходить certificate pinning с помощью инструментов Frida или Objection. Это позволит перехватывать трафик приложений с защитой.
Анатомия APK. Поймите структуру Android APK: AndroidManifest.xml, classes.dex, resources.arsc и папку lib. Эти знания необходимы для анализа мобильных приложений.
10. Обеспечьте безопасность API, чтобы предотвратить утечки данных
Надёжная реализация API — ключ к защите данных клиентов.
Разведка API. Изучайте API, чтобы понять его функциональность и конечные точки. Ищите документацию и используйте инструменты для обнаружения скрытых эндпоинтов.
Тестирование контроля доступа и утечек информации. Проверяйте API на нарушения контроля доступа и утечки данных. Пытайтесь получить доступ к ресурсам без нужной аутентификации или авторизации.
Проверка ограничений по частоте и технических ошибок. Тестируйте API на проблемы с ограничением запросов и другие баги, которые могут привести к отказу в обслуживании или другим уязвимостям.
11. Ставьте этику и законность превыше всего
Помните: сила — в ответственности! Используйте знания только в рамках закона.
Получайте разрешение. Всегда получайте явное разрешение перед тестированием систем. Работайте только с теми системами, на которые у вас есть разрешение.
Соблюдайте рамки. Строго придерживайтесь рамок, определённых политикой программы bug bounty. Не тестируйте вне зоны разрешённого.
Отчитывайтесь ответственно. Сообщайте об уязвимостях профессионально и чётко. Предоставляйте подробные инструкции для воспроизведения проблемы.
Читают также
Частые вопросы
1. What is Bug Bounty Bootcamp by Vickie Li about?
- Comprehensive bug bounty guide: The book is a practical manual for aspiring and experienced hackers, focusing on how to find, exploit, and report web vulnerabilities through bug bounty programs.
- Structured learning path: It covers everything from internet fundamentals and reconnaissance to advanced exploitation techniques, automation, and professional reporting.
- Wide vulnerability coverage: Readers learn about a broad range of web security issues, including XSS, SQL injection, CSRF, IDOR, SSRF, XXE, SSTI, and more.
- Ethical hacking emphasis: Vickie Li stresses the importance of legal, responsible hacking and professional communication with organizations.
2. Why should I read Bug Bounty Bootcamp by Vickie Li?
- Expert insights and strategies: Vickie Li shares her real-world experience, offering practical advice to help readers avoid common pitfalls and maximize their bug bounty success.
- Hands-on, actionable content: The book is filled with step-by-step examples, payloads, and scenarios that readers can apply directly in bug bounty programs.
- Covers both basics and advanced topics: Whether you’re a beginner or a seasoned hacker, the book provides foundational knowledge and advanced techniques for continuous growth.
- Focus on ethical and professional conduct: It guides readers on responsible disclosure, building relationships with security teams, and sustaining a long-term career in security research.
3. Who should read Bug Bounty Bootcamp by Vickie Li?
- Beginners and experienced hackers: The book is accessible to those new to web security, as well as valuable for seasoned penetration testers and security researchers.
- Web developers and students: Anyone interested in understanding how web applications are attacked and secured will benefit from the book’s clear explanations.
- Reference for advanced users: Even experts will find the advanced exploitation techniques, automation tips, and reporting strategies useful as a reference.
- No strict prerequisites: While basic programming knowledge helps, the book is designed to be approachable for readers without a deep technical background.
4. How does Bug Bounty Bootcamp by Vickie Li explain the bug bounty industry and program selection?
- Overview of bug bounty programs: The book details different types of programs, including those for web apps, mobile apps, APIs, and IoT/hardware, helping readers choose based on their interests and skills.
- Platform vs. independent programs: It compares platforms like HackerOne and Bugcrowd with independently hosted programs, outlining their pros and cons.
- Key selection metrics: Readers learn to evaluate scope, payout amounts, response times, and public vs. private program benefits to maximize their chances of success.
- Industry insights: The book provides context on how bug bounty programs operate and what organizations look for in security researchers.
5. What essential skills and tools does Bug Bounty Bootcamp by Vickie Li recommend for new bug bounty hunters?
- Internet and web fundamentals: The book covers the client-server model, DNS, HTTP requests/responses, session management, and security controls like JWTs and the same-origin policy.
- Setting up a hacking environment: Readers are guided through installing and configuring tools such as Burp Suite and Firefox for traffic interception and manipulation.
- Reconnaissance techniques: The book teaches both manual and automated recon methods, including Google dorking, subdomain enumeration, directory brute-forcing, and bash scripting.
- Automation and scripting: It introduces bash scripting for automating recon tasks and explains how to build modular, interactive tools to streamline bug hunting.
6. How does Bug Bounty Bootcamp by Vickie Li teach vulnerability discovery and exploitation?
- Detailed vulnerability chapters: Each major web vulnerability (e.g., XSS, SQLi, CSRF, IDOR, SSRF) is explained with mechanisms, prevention, hunting steps, and escalation methods.
- Practical examples and payloads: The book provides real-world attack scenarios, sample payloads, and proof-of-concept demonstrations to help readers understand exploitation.
- Focus on real-world application: Readers learn how to find their first vulnerability of each type and how to chain and escalate bugs for maximum impact.
- Bypass and evasion techniques: The book covers filter bypasses, encoding tricks, and creative approaches to overcoming common security defenses.
7. What advice does Vickie Li give in Bug Bounty Bootcamp for writing effective bug bounty reports?
- Clear and concise titles: Reports should summarize the vulnerability type, location, and impact in a single sentence for quick understanding by security teams.
- Comprehensive structure: Include a summary, severity assessment, detailed reproduction steps, proof-of-concept files, impact description, and mitigation recommendations.
- Professional communication: Reports should be respectful, concise, and tailored to the organization’s priorities, avoiding assumptions and unnecessary details.
- Building relationships: Good reporting can foster trust, lead to private invites, and even job offers from organizations.
8. How does Bug Bounty Bootcamp by Vickie Li explain Cross-Site Scripting (XSS) and its exploitation?
- XSS types and impact: The book details stored, reflected, DOM-based, blind, and self-XSS, explaining their differences in detection and severity.
- Payload crafting and bypasses: It teaches how to craft payloads using alternative JavaScript syntax, encoding, and filter logic errors to bypass protections.
- Testing and automation: Readers are advised to use generic test strings, tools like XSS Hunter, and fuzzers for automated scanning and confirmation of impact.
- Prevention strategies: The book covers input validation, output encoding, HttpOnly cookies, and Content-Security-Policy headers as defenses.
9. What are Insecure Direct Object References (IDORs) and how does Bug Bounty Bootcamp by Vickie Li recommend finding them?
- IDOR definition and risks: IDORs occur when applications grant access to resources based on user-supplied identifiers without proper authorization checks, leading to unauthorized data access or modification.
- Testing methodology: The book recommends creating multiple accounts, mapping features that expose object IDs, intercepting requests, and swapping IDs to test for unauthorized access.
- Bypassing protections: Techniques include decoding encoded IDs, leveraging leaked IDs, changing HTTP methods, and testing different file types or API endpoints.
- Blind IDORs: The book discusses blind IDORs that cause delayed information leaks and how to detect them.
10. How does Bug Bounty Bootcamp by Vickie Li explain advanced vulnerabilities like XXE, SSTI, and insecure deserialization?
- XXE attacks: The book explains how XML parsers can be exploited to exfiltrate files, cause denial-of-service, or trigger out-of-band interactions, with payload examples and safe testing advice.
- SSTI vulnerabilities: It covers how unsafe template engine usage can lead to code execution, providing payloads and sandbox escape techniques, especially in Python’s Jinja2.
- Insecure deserialization: The book details exploitation in PHP (object injection, POP chains) and Java (gadget chains, Ysoserial), emphasizing the risks of deserializing untrusted data and prevention strategies.
- Escalation and chaining: Readers learn how to combine these vulnerabilities with others for greater impact.
11. What strategies does Bug Bounty Bootcamp by Vickie Li recommend for hunting API and mobile app vulnerabilities?
- API types and recon: The book introduces REST, SOAP, and GraphQL APIs, teaching endpoint enumeration, authentication analysis, and fuzzing for vulnerabilities.
- Common API issues: It highlights broken access control, information disclosure, lack of rate limiting, and injection flaws as prevalent API vulnerabilities.
- Testing tools and techniques: Readers are encouraged to use Postman, GraphQL Playground, and ZAP’s GraphQL add-on, and to fuzz parameters for various vulnerabilities.
- Mobile app hacking: The book covers setting up mobile proxies, bypassing certificate pinning, and using tools like Frida and Apktool for Android app analysis.
12. How does Bug Bounty Bootcamp by Vickie Li address automation, scripting, and sustaining long-term success in bug bounty hunting?
- Bash scripting for recon: Readers learn to automate recon tasks like subdomain enumeration and directory brute-forcing, using variables, loops, and functions.
- Building modular tools: The book teaches creating interactive scripts and integrating APIs to streamline bug hunting workflows.
- Handling challenges and slumps: Vickie Li advises on overcoming failure, avoiding common pitfalls, and taking breaks to gain fresh perspectives.
- Professional growth: Building relationships with security teams, understanding report states, and continuously improving skills are emphasized for long-term success.
Скачать PDF
Скачать EPUB
.epub digital book format is ideal for reading ebooks on phones, tablets, and e-readers.