четверг, 5 сентября 2013 г.

Этика хакерства "по-нашему"

Наткнулся сегодня на статью (http://goo.gl/pmKEuP) . На первый взгляд типичная статья об обнаруженной уязвимости. Специалист по безопасности обнаружил уязвимость приложения и решил поделиться интересным опытом с коллегами. Вот такая и такая уязвимость найдена в таком то android приложении... Обратите внимания, господа разработчики... так не пишите... В общем, потратил время, нашел, поделился, внес свой вклад в общество.
А какую же пользу наш герой принес обществу?
  • Он обнаружил уязвимость. По словам Алексея, уязвимость удалось обнаружить, когда во время работы над технологией оплаты в приватовском терминале самообслуживания для сервиса такси разработчик начал изучать API-документацию банка и затем полностью декомпилировал код его Android-приложения. Привет банковским юристам.
  • Донес до сотрудников банка выявленную проблему. Алексей говорит, что вчера уже отправил уведомление об уязвимости в службу безопасности банка, но ответ еще не был получен. Это, безусловно, непростительная оплошность со стороны банка. Безопасники не остались не ночь тестировать его находку и не оставила программистов переписывать код, чтобы на утро все было готово вместе с хвалебным письмом. Эта неосмотрительность не должна остаться без внимания. Нужно привлечь внимание общественности!
  • Герой в приступе праведного гнева публикует информацию о своей находке в интернете. Для большей наглядности приводит примеры реальной сессии и объясняет как уязвимость удобнее эксплуатировать. 
В сухом остатке мы имеем:
  • Банк предан всеобщему презрению за неумение писать защищенный код и игнорирование безвозмездной помощи со стороны кул кацкеров.
  • Страна знает своего героя.
  • Пользователи указанного приложения предупреждены, а значит вооружены.
К сожалению, последнее утверждение очень далеко от реальности. Даже если банк уже бросился изучать уязвимость, ему нужно время на протестировать, понять природу, исправить, протестировать исправленное, распространить пользователям. Злоумышленникам же ничего этого не нужно. Нужно писать зловред. С учетом того, что злоумышленник не ограничен согласованиями, ресурсами, бюджетами, протоколами и утверждениями, какова вероятность того, что банк успеет закрыть уязвимость до того, как пострадают пользователи приложения? Вопрос риторический.