💡 Один принцип, который помогает находить больше багов
Огромное семейство багов сводится к одной идее: два компонента получают один и тот же ввод, но понимают его по-разному. Когда это начинаешь видеть, многие баги складываются в одну картину.
➡️ Инъекции: XSS, SQLi, code injection — приложение думает, что это обычные данные, а другой парсер видит там код: браузер, база данных, шаблонизатор или интерпретатор.
➡️ Request smuggling: фронт и бэк по-разному определяют, где заканчивается HTTP-запрос.
➡️ Байпас фильтров SSRF: валидатор URL видит один адрес, а HTTP-клиент после нормализации идёт уже в другое место.
Не все классы багов так работают. Например, broken access control живёт по другим правилам. Но для многих технических уязвимостей это сильная модель мышления. Ищешь не тип бага. Ищешь расхождение, а REcollapse тебе в помощь 🥷
@BugBountyRu 🕷 Буст каналу
Огромное семейство багов сводится к одной идее: два компонента получают один и тот же ввод, но понимают его по-разному. Когда это начинаешь видеть, многие баги складываются в одну картину.
➡️ Инъекции: XSS, SQLi, code injection — приложение думает, что это обычные данные, а другой парсер видит там код: браузер, база данных, шаблонизатор или интерпретатор.
➡️ Request smuggling: фронт и бэк по-разному определяют, где заканчивается HTTP-запрос.
➡️ Байпас фильтров SSRF: валидатор URL видит один адрес, а HTTP-клиент после нормализации идёт уже в другое место.
Это называют parser differentials — расхождения между парсерами. Идея простая: не искать только классические баги, а искать место, где есть эти самые расхождения.
Не все классы багов так работают. Например, broken access control живёт по другим правилам. Но для многих технических уязвимостей это сильная модель мышления. Ищешь не тип бага. Ищешь расхождение, а REcollapse тебе в помощь 🥷
@BugBountyRu 🕷 Буст каналу