Как стать автором
Обновить

Комментарии 26

Спасибо за открытость. Несколько способов взлома не знал. Пишите в следующий раз подробнее. Хотелось бы чуть более технического поста.
НЛО прилетело и опубликовало эту надпись здесь
Забавно, думал что BSI-13 скорее фича, а не баг. Встречал подобную уязвимость на очень больших сервисах, стоит репортить?
Насколько я понял, тут проблема в переполнении int. В итоге, платим мало, а получаем очень много.
Понял, оплачиваем 10 рублей, получаем плюшки за 900.
Почти :) Платим фиксированную сумму ~200р, получаем любую введенную (до максимального инта).
Судя по «комментарию Asd», платим около 8 долларов, а получаем примерно на 800 тысяч долларов (2147483647 кредитов).
Проблема в том, что пользователь может указать одну сумму, а купить товара на намного большую сумму. Это явно не фича :)
да, с кредитами это нужно уметь так промахнуться: ведь проще всего ввести матрицу пересчета денег в кредиты и вообще не защищать эту уязвимость: пусть пользователи любое число вводят, им все равно счет на пересчитанную сумму будет выставлен.
Вы не можете списать случайную сумму при использовании подавляющего большинства способов оплаты, к тому же за такое можно и по голове от регулятора получить :)
Если сумму списать не удастся, то и баланс кредитов не будет пополнен. Все четко.
Зато можно от начальства получить премию, если всякие хакеры начнут по 15к через Яндекс.Деньги оплачивать :) Или по 100к через Visa.
я все вообще не понимаю, как так можно было написать. Приходит в голову только вариант вида

switch ($value) {
    case 100:  $amount = 45; break;
    case 1250: $amount = 450; break;
    case 2750: $amount = 900; break;
    default:   $amount = 200;
}

но это совсем жесть
Прошу прощения, но большая часть уязвимостей совсем детская. Неужели ваш фреймворк сам не подставляет анти-CSRF токен или X-Frame-Options, я бы поверил, что на дворе 2008 год, но в 2013м это как-то странно. А обработка кредитов это вообще азы веб-разработки. Читал и не верил своим глазам!

Но в любом случае спасибо, что осветили свои проблемы, надеюсь, кто-то из читателей тоже найдет похожие проблемы со своими веб-сайтами. Оставлю здесь ссылку на английском, в которой описано много типов типовых уязвимостей, не пугайтесь специфики Rails, на самом деле там очень много вещей, общих для любого веб-фреймворка: guides.rubyonrails.org/security.html
токен есть, но и кода очень много, потому ошибки, увы, неизбежны
Про sandbox в iframe первый раз слышу. Стыдно :(
javascript.info/tutorial/clickjacking вот тут в сумме поподробнее :) правда там написано что только хром, на самом же деле его поддерживают все последние версии браузеров кроме оперы
А напишите нам в комментариях, пожалуйста, про какие уязвимости вам еще хотелось бы прочитать?
corp.badoo.com/security-board/
кликджекинг — так вот как называется эта вещь, когда через телевизор заходишь на яндекс.видео и пытаешься нажать плей в элементах управления на некоторых видео с некоторых сайтов, а тебе показывают новую странцу со всякой неожиданной фигней. При чем если нажать в центр фрейма, проигрывание начнется нормально. Уже телевизор боишься включить в присутсвии детей :(
smart tv? :D знакомая ситуация %)
Очень жалко, что не успел поставить плюс за пост. Вы, наверное, одна из первых компаний, которая так подробно описывает результаты поиска уязвимостей, обычно все остальные компании отмалчиваются. +1 один Вам в пацанскую карму =)
Есть конечно :)
Футболка не приходит =(
Добрый день, сегодня напишем Вам письмо. В любом случае футболку и сертификат отправим повторно.
Пришла посылка, клевые футболки и сертфикат. Ещё раз спасибо Вам! =)
Пожалуйста! Очень рады, что Вам понравилось.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий