Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр У самурая нет цели — есть лишь путь. Долгий и бесконечный. С каждым шагом, оттачивая мастерство, он движется всё дальше вперёд.

Долгий путь: idle

Кликер, Ролевые, Фэнтези

Играть

Топ прошлой недели

  • solenakrivetka solenakrivetka 7 постов
  • Animalrescueed Animalrescueed 53 поста
  • ia.panorama ia.panorama 12 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
0 просмотренных постов скрыто
13
vovka3003
vovka3003

Как я искал уязвимости в мессенджере MAX, и что из этого вышло⁠⁠

1 месяц назад

Решил я давеча погонять MAX (что это за зверь вообще такой..).

Как я искал уязвимости в мессенджере MAX, и что из этого вышло

Но, засирать смарт не очень хотелось - поставил на виртуальный андроид, зарегался, вышел на парковку переехал с аккаунтом в веб-версию.

Посмотрел, покрутил - конечно еще сыровато всё, достаточно всяких мелких багов и недоделок (например: почему-то нельзя удалить в личной переписке сообщения собеседника, а только свои, но при этом функция "очистить историю чата" - присутствует и чистит всё. Странно и нелогично), где-то не отрабатывает автоматическая прорисовка в интерфейсе, в целом пока еще скудный функционал (в сравнении с той же телегой). В общем - есть над чем работать до состояния "безглючно, полноценно и удобно".

Но не суть..

Я обнаружил странное поведение системы (нет, не "слежка", как многие сейчас подумали 😁).
Не совсем корректная работа. Подумал "может ошибаюсь", сходил, проверил в телегу, ватсапп - не обнаружил подобных "фич"..

Задал вопрос в поддержу MAX, оттуда меня перенаправили в программу Bug bounty, порекомендовав принести отчеты о моих находках туда (заодно, как приятное с полезным - получить вознаграждение за труды - все легально и законно).

Так я стал багхантером: официально зарегистрировался в Standoff365 (площадке, где хакеры вылезают из подвала и одев смокинг с бабочкой меняют свой цвет с "черного" на "белый"), начал работать напрямую с вендором (разработчиком).

Прошел месяц с лишним. Итог:

У меня на руках уже несколько отчетов, которые успешно.. забрили.. В буквальном смысле.

- Один отчет оказался закрытым как "Информативный", несмотря на всяческие мои аргументы, приведенные сценарии и демонстрации. В результате спор приостановлен до разъяснения отправленного мной запроса в РКН на тему: является или нет обнаруженное мной поведение MAX-a - каким-либо нарушением ФЗ в принципе.

- Другой отчет - записали в "дубль" (при наличии в нем 3-х отдельных описываемых проблем), при этом технических и бесспорных доказательств дубликата - так и не предоставили (на последние мои аргументы и прямые вопросы - ответа нет до сих пор).

- Третий отчет - "отклонен" по формальному признаку предоставления мной доказательств, "не соответствующих правилам программы", и что любопытно - "пофиксили" свои правила аккурат после подачи мной отчета (а по предыдущей версии правил мой отчет был целиком валиден - забавно).

По всем вопросам в апелляции - арбитраж площадки Bug Bounty оказался "целиком согласен с вендором" (странный арбитраж, хоть бы одно несоответствие нашли)).

В общем - "битва" перешла на принципиально новый уровень - "юридический спектакль с техническим оттенком". Об обнаруженных возможных нарушениях ФЗ, которые несут в себе мои находки в MAX, отправил дополнительные письма регуляторам (саму ситуацию и взаимодействие с вендором и арбитражем - в более подробном виде описал (без раскрытия технических деталей, ибо не имею права) в своей статье на Хабре (ссылку дать не могу, т.к. не проходит модерацию, ник тот же) - кому не страшны длинные "простыни", где "многа-букафф/мало-картинок" - думаю будет интересно и познавательно).

Всем добра!

Показать полностью 1
[моё] Мессенджер MAX Багрепорты Роскомнадзор Bugbounty Ссылка Habr
7
2
Agmioli
Agmioli
Программы и Браузеры
Серия Telegram

Баг в "Telegram X" позволил написать без Premium пользователю, которая разрешила писать только с Премиумом⁠⁠

3 месяца назад
Баг в "Telegram X" позволил написать без Premium пользователю, которая разрешила писать только с Премиумом.

Баг в "Telegram X" позволил написать без Premium пользователю, которая разрешила писать только с Премиумом.

На смартфоне установлены два официальных приложения -"Telegram " и "Telegram X" .
В обоих приложения пришло уведомление, о том что знакомая создала аккаунт в Телеграм.

Но сразу была замечена деталь.
В простом приложении "Telegram X" нельзя было написать пользователю. А когда открываешь другое приложение - "Telegram X" ,то там было открыто поле для ввода текста и отправки сообщения.

Для эксперимента был отправлен стикер. Он отправился, и пользователь его прочитала(две галочки на стикере-сообщении).

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

Далее, я попробовал написать пользователю, у которой всегда стоит написание личных сообщений только теми, у кого есть Premium.
Но там уже не было бага, и изначально отсутствовало поле для написание сообщений.

А ведь было столько надежд, чтобы писать хоть кому, даже без премиума)

Причина бага - мне неизвестна.
Предполагаю, это связано как то с тем, что пользователь только создала аккаунт, и до "Telegram X" вовремя не дошло то, что у него тоже должно стоять ограничение по написанию сообщений пользователю.

Попробовал написать пользователю, у которой стоит написание только с Premium. Но там уже не было бага, и изначально отсутствовало поле для написание сообщений.

Попробовал написать пользователю, у которой стоит написание только с Premium. Но там уже не было бага, и изначально отсутствовало поле для написание сообщений.

Показать полностью 1
[моё] Информационная безопасность Смартфон Android Приложение Telegram Telegram premium Мессенджер Баг Глюки Обход ограничений Bugbounty Социальные сети Длиннопост
2
5772
Puwi
Puwi

Яндекс Баунти или ключ за миллион бесплатно⁠⁠

5 лет назад

Приключилась со мной история, которая отражает лояльность компании Яндекс.

Небольшой спойлер - история на миллионы.


Яндекс проводит конкурс "Охота за ошибками", в рамках которого, участник нашедший уязвимость, удовлетворяющую условиям конкурса, может рассчитывать на денежное вознаграждение (более подробно с условиями и самим конкурсом можно ознакомиться здесь https://yandex.ru/bugbounty/).


Решил я один из вечером посвятить анализу сервисов Яндекса на наличие уязвимостей. Претендентом на анализ стал https://eda.yandex.ru/.

Буквально через пол часа анализа кода сервиса, наткнулся на интересный момент.

На сервисе в исходном коде сразу же красуется такой код:


<link rel="preconnect" href="https://enterprise.geocode-maps.yandex.ru" />
<link rel="preconnect" href="https://enterprise.api-maps.yandex.ru" />

Проще говоря, данный код заранее устанавливает соединение с указанным сайтом, а это значит, что скорее всего эти сервисы используются далее на сайте, так оно и есть. Продолжив анализ кода, я нашел где задавался API ключ для вышеуказанного сервиса, а именно js объект в котором задавался ключ объекта geocodeKey и его значение "c0d403ab-e5be-4049-908c-8122a58acf23", именно он и станет виновником данного "торжества".


Раз "пациент" подключается к geocode-maps.yandex.ru, можно предположить, что тут происходит геокодирование. Если углубиться, то можно узнать, что у Яндекса есть два вида версии API (бесплатная и платная). Платная подключается с префиксом "enterprise" в адресе, как в нашем случае enterprise.geocode-maps.yandex.ru.


Уже становится интересно, так как на сайте подключена платная версия API.


Здесь можно ознакомиться с расценками на API ключ https://yandex.ru/dev/maps/commercial/doc/concepts/jsapi-geocoder-docpage/
Небольшой спойлер, цены за год пользования API ключом доходят до 1.5 млн рублей.

Провожу прямое геокодирование и ожидаю ошибку 403 (это ошибка, когда на API ключ наложено ограничение, например по IP или домену, откуда идет запрос), но на моё удивление, я получаю успешный результат геокодирования и всё бы ничего, если бы это был бесплатный запрос, но геокодирование один из пунктов платных запросов на API ключе Яндекса.
Пример прямого геокодирования с ключом Яндекса:

https://geocode-maps.yandex.ru/1.x/?apikey=c0d403ab-e5be-4049-908c-8122a58acf23&geocode=%D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F,+%D0%91%D0%B5%D0%BB%D0%B3%D0%BE%D1%80%D0%BE%D0%B4%D1%81%D0%BA%D0%B0%D1%8F+%D0%BE%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D1%8C

А здесь мы видим https://yandex.ru/dev/maps/commercial/doc/concepts/jsapi-geocoder-docpage/

что прямое геокодирование или обращение к HTTP API Геокодера является тарифицируемым запросом, т.е. платным, но ведь мы сделали запрос, получили успешный результат и ничего не заплатили!


Далее проведя еще несколько тестов, я окончательно убедился, что Яндекс не защитил свой корпоративный API ключ от стороннего использования и тут же создал обращение, через программу "Охота за ошибками" от Яндекса.

Ниже представлена переписка с сотрудником Яндекса.


Яндекс:

Проблема использования чужих geocodeKey в JS API нам была уже известна. В связи с этим, к сожалению, мы не можем присудить за нее вознаграждение.


Я:

А при чем здесь использование чужих geocodeKey в JS API, я говорю про конкретный случай в вашем сервисе, про ваш geocodeKey, который вы же и не защитили, что позволяет его использовать всем желающим.

Яндекс:

Так geocodeKey используется в JS API на стороне браузера, защитить его от попадания в браузер технически невозможно. Проблема использования этого geocodeKey сторонним сервисами нам уже была известна. В связи с этим, к сожалению, мы не можем присудить за нее вознаграждение.

Я:

А для чего тогда вот это?
Это как раз и защищает ключ от стороннего использования его в платных функциях, например геокодирование.
Как я ранее приводил пример, если у ключа нет ограничений, его может применять кто угодно, но если поставить ограничение в функционале (см скриншот выше), тогда на запрос
https://geocode-maps.yandex.ru/1.x/?apikey=c0d403ab-e5be-4049-908c-8122a58acf23&geocode=Россия, Белгородская область
будет отдаваться не результат геокодирования, а
<error>
<statusCode>403</statusCode>
<error>Forbidden</error>
<message>Invalid key</message>
</error>

Яндекс:

Действительно ключ не защищен стороннего использования. К сожалению эта проблема не входит в рамки программы "Охота за ошибками". В связи с этим мы можем добавить вас в Зал Славы Охоты за Ошибками (https://yandex.ru/bugbounty/hall-of-fame/) без назначения денежного вознаграждения.

Я:

Почему данная проблема не входит в рамки программы "Охота за ошибками"?
Здесь сказано
https://yandex.ru/bugbounty/
1. "Где искать
Веб-сервисы: на доменах yandex.ru, yandex.com, yandex.com.tr, yandex.kz, yandex.ua, yandex.by, yandex.net (кроме people.yandex.net), yandex.st, eda.yandex, ya.ru."
eda.yandex - входит в данный перечень
2. "A01. Инъекции", согласно классификации "OWASP Top-10 версии 2010 года" .
Это недостаток внедрения. Злоумышленник может воспользоваться вашим же ключом в своих корыстных целях путем подстановки его в get запросы, своего рода проведя инъекцию на выполнение платных запросов для получения данных (бесплатно) без надлежащей авторизации.

Яндекс:

Описанная вами проблема с нашей точки зрения не относится к классу "A01. Инъекции", а относится к классу отсутствия лимитов на использование API. К сожалению, правилами нашей программы пока не предусмотрены выплаты за такой тип уязвимостей, если они не затрагивают безопасность данных наших пользователей.

Я:

Уточните, пожалуйста, согласно какой классификации вы отнесли данный баг к классу "отсутствия лимитов на использование API"?
Даже если не расценивать данный баг как инъекцию, то он подпадает, как минимум, под один из классов классификации "OWASP Top-10 версии 2010 года":
2. Broken Authentication.
5. Broken Access Control.
6. Security Misconfiguration.

Яндекс:

Согласно классификации OWASP API Security Top 10 2019 (https://owasp.org/www-project-api-security/). С нашей точки зрения описанная вами проблема не может отнесена к категориям "Broken Authentication", "Broken Access Control", "Security Misconfiguration".

Итоги:

1. Пришлось потратить не мало времени, чтобы доказывать и "разжевывать" Яндексу, что найденный баг является багом, а также немного научить пользоваться их же функционалом (я про выставление ограничений на ключ).

2. В их же условиях указано, что "В качестве классификации уязвимостей для веб-сервисов используется OWASP Top-10 версии 2010 года, для мобильных приложений — OWASP Mobile Top-10.", но в диалоге их сотрудник уточнил, что мою уязвимость они классифицировали по "OWASP API Security Top 10 2019".

3. Найденный баг был передан Яндексу 9 июня 2020 года, прошло более 3 месяцев, но Яндекс так и не исправил баг и любой желающий может совершенно бесплатно воспользоваться их корпоративным API ключом "c0d403ab-e5be-4049-908c-8122a58acf23", стоимость которого достигает до 1.5 млн рублей в год и более. В зал славы меня добавили https://yandex.ru/bugbounty/hall-of-fame/2020/6/ , а вот в денежном вознаграждении отказали ("Конкурсы занятные и призы интересные").


P.S. я лишь донес историю, случившуюся со мной и то как повел себя Яндекс в такой ситуации. Участвовать в данном конкурсе или нет, решать только вам!

UPD: К посту есть вопросы #comment_180781762

Показать полностью 1
[моё] Яндекс Bugbounty Баг Длиннопост Яндекс Еда
745
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Пятерочка Промокоды Aroma Butik Промокоды Яндекс Путешествия Промокоды Яндекс Еда Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии