Непонятное: CSP, SOP, CORS
#техническое #матчасть
У меня тут спрашивают, что из них лучше и полезнее в нашем багбаунти деле. В честь юбилейного 949-го подписчика делаю пост-ответ для новичков.
Самое главное: нужно понимать, что хотя эти аббревиатуры звучат похоже, они вообще про разное, хотя 2 из них все-таки связаны.
Обычно, когда такие вопросы возникают – нужно просто идти в гугл и читать. Но окей, let me google this for you, как говорится.
CSP – Content Security Policy или Политика Безопасности Содержимого
Вкратце: это заголовок ответа сервера, в котором он определяет правила безопасности содержимого на данной странице, которым должен следовать браузер. Туда входят правила из разряда:
- скриптам с каких доменов разрешено исполняться на этой странице (
noscript-src);- каким доменам разрешено встраивать эту страницу в iframe (
frame-ancestors);- разрешено ли использование base-тегов (
base-uri).Подробнее: https://developer.mozilla.org/ru/docs/Web/HTTP/CSP
Когда оно нам нужно: если какая-то атака (обычно XSS или Clickjacking) не работает там, где должна – надо смотреть CSP-заголовок и изучать эти самые правила, чтобы понять, не в них ли причина.
Еще иногда я заранее смотрю CSP, если собираюсь ковырять какой-нибудь сложный XSS-санитайзер. Потому что бывали случаи, когда сутки его обходишь, а потом оказывается, что на странице CSP, и XSS все равно не добиться.
Есть классный сервис проверки безопасности CSP от гугла – https://csp-evaluator.withgoogle.com. Тут можно проверить, есть ли шанс обойти CSP или ловить нечего.
SOP – Same Origin Policy или Политика Одного Источника
Вкратце: это базовый защитный принцип, который обеспечивает безопасность нашего привычного веба, и в соответствии с которым работают все браузеры. Основная мысль очень простая: один сайт не должен иметь доступ к другому сайту. Под "сайтом" браузер понимает
origin, который состоит из схемы, хоста и порта.То есть скрипт, находящийся на сайте
https://google.com никак не получит данные пользователя с сайта https://yandex.ru. И даже не пройдут запросы с https://yandex.ru на http://yandex.ru, так как все три составных части origin должны быть одинаковыми, чтобы браузер разрешил такой доступ. То же самое работает и для фреймов, поэтому если вы зафреймите к себе на сайт чужую страницу, вы никак не сможете прочитать ее содержимое.
Мы, конечно, можем отправить запрос от одного
origin к другому, но браузер не пошлет вместе с ним cookie пользователя, а значит максимум мы сможем посмотреть версию страницы для неаутентифицированного пользователя, что бесполезно.Подробнее: https://developer.mozilla.org/ru/docs/Web/Security/Same-origin_policy
Когда оно нам нужно: только когда мы еще не понимаем этот базовый принцип и пытаемся делать вещи, которые в 2022 году просто невозможны. А так один раз запомнили – и навсегда.
CORS – Cross-Origin Resource Sharing или Межсайтовое Разделение Ресурсов
Вкратце: это механизм, который позволяет легально обойти SOP. Иногда (часто) все-таки нужна возможность отправлять запросы с одного
origin на другой. Для этого придумали CORS. Владелец сайта, данные с которого должны быть доступны для других сайтов, должен отправлять вместе с ответом разрешающие заголовки типаAccess-Control-Allow-Origin: https://google.comВ случае выше, запрос с сайта
https://google.com сможет получить данные с такого сайта. Ну и там не все так примитивно, конечно.Подробнее: https://developer.mozilla.org/ru/docs/Web/HTTP/CORS
Когда оно нам нужно: для поиска уязвимостей типа CORS misconfiguration. Иногда (опять же часто) список
origin, которым разрешено получать данные с целевого сайта на фиксирован, а, допустим определен с помощью маски.Например, владелец хочет, чтобы любой домен гугла мог бы прочитать данные с его сайта. И он пишет код, который смотрит на
origin, который делает запрос, и если этот origin соответствует *.google.* – разрешает доступ. Периодически бывает, что этот код написан криво и мы можем также запросить эти данные, допустим, с вредоносного домена google.hacker.ru.👍19🔥4
Если кто-то изнемогает от желания поддержать канал, но не знает, как – выбирайте 🙂
💳 https://boosty.to/skavans
🪙 ETH, BNB, MATIC
🪙 BTC
🪙 TRX
🪙 LTC
🪙 BCH
💳 https://boosty.to/skavans
🪙 ETH, BNB, MATIC
0x1a90F6ABDD2D29bD7A9b8FE099ff8c7dd0961519🪙 BTC
bc1q9uq96lfekq7ec6slhw72k6kvxntzfk9a4un3vs🪙 TRX
THeRubKK1cNzVRD9JTTQYR7ApK8wCao8Fm🪙 LTC
ltc1q9k2lhuzfg7k482qkcswgqmn0vwsp32suf7yvr3🪙 BCH
bitcoincash:qqypg65vd2cmy54kevdu0ae4jp0229xddycx3xgsg5👍10👎3🔥1
Рамазан @r0hack поделился на своем канале.
Интервью само-по-себе достаточно интересное, советую послушать 🙂
НО, что реально ценного я оттуда вынес – это узнал про платформу code4rena.com.
Если вам интересно попробовать себя в поиске уязвимостей в смарт-контрактах – имхо, это лучший вариант для старта. Объясняю, почему:
1) Эта платформа коллективного аудита смарт-контрактов, туда часто попадают еще слабо (или вообще не) аудированные смарт-контракты. Соответственно, высок шанс найти даже примитивные баги.
2) Платят за дубликаты, что опять же огромный плюс. Суть такая, что есть некий фиксированный баунти-пул, который сначала делится на все баги (согласно их критичности), а в рамках одного бага – на всех, кто его нашел.
3) Никакого KYC в большинстве случаев, а значит, welcome Russian researchers.
4) Доступны более или менее подробные протоколы прошлых аудитов: https://code4rena.com/reports. Это как открытые отчеты на H1 – также очень круто, можно учиться на чужих находках.
Интервью само-по-себе достаточно интересное, советую послушать 🙂
НО, что реально ценного я оттуда вынес – это узнал про платформу code4rena.com.
Если вам интересно попробовать себя в поиске уязвимостей в смарт-контрактах – имхо, это лучший вариант для старта. Объясняю, почему:
1) Эта платформа коллективного аудита смарт-контрактов, туда часто попадают еще слабо (или вообще не) аудированные смарт-контракты. Соответственно, высок шанс найти даже примитивные баги.
2) Платят за дубликаты, что опять же огромный плюс. Суть такая, что есть некий фиксированный баунти-пул, который сначала делится на все баги (согласно их критичности), а в рамках одного бага – на всех, кто его нашел.
3) Никакого KYC в большинстве случаев, а значит, welcome Russian researchers.
4) Доступны более или менее подробные протоколы прошлых аудитов: https://code4rena.com/reports. Это как открытые отчеты на H1 – также очень круто, можно учиться на чужих находках.
👍8👏2
Forwarded from Bounty On Coffee (Ramazan)
Крутое интервью от Егора и Никиты - BugBounty глазами исследователя.
https://music.yandex.ru/album/22592369/track/105695635
https://music.yandex.ru/album/22592369/track/105695635
Яндекс Музыка
Серия #3 - BugBounty глазами исследователя
👍6🤯1
Bounty On Coffee
Крутое интервью от Егора и Никиты - BugBounty глазами исследователя. https://music.yandex.ru/album/22592369/track/105695635
Да, и еще там рассказали про проект disclose.io, где собрано множество self-hosted бб.
До 31 августа бб Яндекс.Еды предлагает удвоенные суммы вознаграждения. Выглядит весьма неплохо, как по мне.
https://yandex.ru/bugbounty/i/food-tech
https://yandex.ru/bugbounty/i/food-tech
Forwarded from BI.ZONE
🎉 Представим платформу bug bounty на OFFZONE 2022
Мы долго к этому готовились и наконец-то сообщаем: презентация платформы пройдет 25 августа в 13:00 на конференции OFFZONE!
Приходите, чтобы:
— посмотреть интерфейс платформы;
— узнать, как устроен процесс выплаты для багхантеров;
— разобраться, для каких компаний подойдет продукт.
Подробнее
Мы долго к этому готовились и наконец-то сообщаем: презентация платформы пройдет 25 августа в 13:00 на конференции OFFZONE!
Приходите, чтобы:
— посмотреть интерфейс платформы;
— узнать, как устроен процесс выплаты для багхантеров;
— разобраться, для каких компаний подойдет продукт.
Подробнее
👍10
Наткнулся случайно на крутую штуку: https://github.com/sw33tLie/bbscope
Тула позволяет автоматизированно выгружать скоупы с HackerOne, Bugcrowd, Intigriti, Immunefi и YesWeHack 👍
P.S.: не тестил, но звездочек много)
Тула позволяет автоматизированно выгружать скоупы с HackerOne, Bugcrowd, Intigriti, Immunefi и YesWeHack 👍
P.S.: не тестил, но звездочек много)
GitHub
GitHub - sw33tLie/bbscope: Scope aggregation tool for HackerOne, Bugcrowd, Intigriti, YesWeHack, and Immunefi!
Scope aggregation tool for HackerOne, Bugcrowd, Intigriti, YesWeHack, and Immunefi! - sw33tLie/bbscope
🔥4👍1
Сразу дам один маленький инсайд: весьма скоро на платформе появится ещё один вендор, немного не успели утрясти юридические моменты к релизу
Forwarded from edit name
Прикольная тема. Тут можно импортнуть репутацию с х1 и багкрауд
🔥5🤔1
Обещают качественную поддержку в плане разрешения диспутов между ресерчером и программой
🥰2
Такой вот список программ. Как видим, собственная программа у них тоже есть.