Все вы наверно натыкались на «успешных людей» с просторов интернета. Эти люди транслируют свое видение жизни. Выставляют на показ свои богатства. Выпускают книги о том как выходить из зоны комфорта, при этом пишут эти книги из своего особняка в какой нибудь солнечной калифорнии. Вам это знакомо?

Меня это по правде сказать просто достало. Я вычистил все ленты социальных сетей от подобных личностей. Личностей, которые транслируют про коучинг, мотивацию и easy life. И знаете что? Стало прям очень классно оставаться в курсе событий без этого мусора! Заходишь в социальные сети, а там только котики и попугайчики.


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

Вот я так подумал и сделал. Точнее сначала сделал. Но потом подумал и вовремя остановился, чтоб дров не наломать. Помни и чти 272 УК РФ!

Речь в рассказе пойдет об одной сетевой компании, которых в наше время просто море (prana, herbalife, oriflame, nl international и т.п.)

Название компании умышленно скрыто, а личности заблёрены т.к они не пожелали предавать огласке данный инцидент. В принципе правильно. Кто знает что еще я упустил… Ну, а вы как читатель, на данном примере, можете понять чего не стоит делать и каких ошибок не стоит допускать.

Итак, поехали. У нас цель — компания и информация о людях, которые весело и славно живут.
Начинаем конечно же с соц.сетей. Вы не представляете сколько всего интересного можно найти в соц.сетях.

Выясняем что всю важную инфу мы можем выудить через один важный сайт. Этот сайт постоянно фигурирует в инстаграм-историях тех кто показывает свои доходы. Чтобы нам поймать «жертву», надо стать этой «жертвой».

Для этого мы регистрируем свою учетную запись, на которой будем проводить эксперименты. Успешно и анонимно это получилось сделать, обнаружив реферальную ссылку на регистрацию.
После регистрации мы получаем e-mail с информацией о логине в систему и пароле. Да-да — ПАРОЛЬ был так же в электронном письме.



Получив это письмо я сразу вспомнил о ситуации с паролями RU-Center.

Окей. Это, конечно, плохо, что паролями так легко раскидываются. Но нам-то это никак не поможет. Если только мы не взломаем электронный ящик нашей жертвы.

Едем дальше. Получили пару логин-пароль. Идем логиниться. И тут понимаем, что данный пароль не требует принудительной смены как одноразовый. Более того меню на смену пароля не предполагает установку какого то «уникального» пароля. А я попрошу заметить, пароль из цифр, и четко фиксированного количества. Такая комбинация легко подбирается через брутфорс-атаку.

Окей. Пробуем ручками проверить форму логина на устойчивость к перебору пароля. И вот тут выясняется, что не все так просто. Учетная запись полностью блокируется и войти нельзя даже по правильному паролю после нескольких неудачных попыток. Запись блокируется на несколько минут. И это уже создает ситуацию невозможности проводить брутфорс-атаку.

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



Безусловно, функционал приложения не открывал нам безграничные возможности. Но endpoint логина уже использовался совсем другой. Не тот который четко блокировал аккаунт при переборе.



Тогда я решил проверить что будет, если я провести брутфорс атаку на свой аккаунт через endpoint этого приложения. Как быстро я смогу подобрать пароль? Во сколько потоков я могу это делать без отказа самого сервера? Как быстро меня забанят внимательные админы системы?

Результаты, конечно, получились интересными!

Подбор паролей работал на сумасшедшей скорости в несколько потоков (десятки вариантов в секунду). Причем сервер практически не возвращал мне 500 ошибку от возросшей нагрузки. И я не был забанен. Атака выполнялась в течении нескольких часов. И я успешно подобрал пароль. Собственно это был тот же самый пароль, который упал мне на электронный ящик. В самой системе мне открывался огромный функционал возможностей. И после всего этот я просто начал оценивать риски для компании чтобы потом презентовать им security report. Чем больше я углублялся, тем больше понимал серьезность последствий успешности моей атаки.

И так что же можно было сделать?..

  • Собрать персональные данные пользователей системы (ФИО, телефон, паспортные данные, адрес).
  • Собрать всю финансовую активность данных пользователей.
  • Собрать чувствительную информацию о пользователях из личной переписки внутри системы (личные сообщения).
  • Осуществить перевод имеющихся средств между пользователями. С последующим выводом средств. Причем сделать это можно было в очень веселом формате. Если с одного взломанного аккаунта можно понять объем ущерба, найти и откатить транзакции, то через несколько взломанных аккаунтов это сделать уже было бы практически невозможно. По сути своеобразный миксер денег. Как результат — финансовые потери компании. И уж поверьте, деньги там были...
  • Репутационный урон из-за раскрытия финансовой активности пользователей.

Я уже чувствую ваш вопрос — Что ты ужас наводишь? Как ты узнаешь логин других пользователей?



И тут вам мой ответ — соцсети! Все есть в общем доступе. И формат логина тоже достаточно тривиальный.

Самое сложно было — найти человека, которому можно бы было отправить информацию обо всем этом с целью устранения.

Нашел самого главного в этой конторе. Вроде как он считался руководителем. Но он очень нехотя общался. Скинул электронный адрес, на который я могу отправить технические детали. И так и не прочитал мои последние сообщения. На мое письмо по электронной почте тоже не ответил.



Вот чтоб настолько пофиг было — я не ожидал.

Через социальные сети, друзей-друзей, еще одних друзей я обнаружил человека, который когда-то был разработчиком данной компании. Он мне уже подсказал другого человека, который отвечает за IT-инфраструктуру компании.

К слову, когда я дошел до этого человека — прошло 2-3 дня. Человек отреагировал адекватно. Мы с ним очень классно побеседовали обо всех проблемах. Он не отрицал ни один из пунктов который я описал.



Замечательно было еще то что из-за аномального трафика, который я намеренно создавал — он закрыл имеющуюся лазейку еще несколько дней назад. И это круто. Не круто бы было, если бы он вообще ничего не заметил.



Проблема закрыта. Все счастливы. Я получил интересный опыт. Компания получила ценный security report и жизненный урок.

И тут у вас возник вопрос о вознаграждении? Отвечу цитатой великих — «Денег нет, но вы держитесь». На самом деле администратор системы предложил мне перевести немного деньжат на мой тестовый аккаунт (5 т.р., если мне не изменяет память).



Но вывести эти виртуальные средства по сути я не мог. На его предложение, я просто любезно попросил перевести это «вознаграждение» знакомому, который “работает” в этой компании. Он в свою очередь смог потратить деньги на сладкую продукцию компании. Ну а дальше, по моей просьбе, сладости отправились в детский дом.

Выводы:

  • Не забирайтесь слишком глубоко, когда находите нечто «интересное».
  • Никогда не забывайте о 272, и о риске попасть на контакт с не очень адекватной персоной, которая может быть не рада вашему сообщению о «взломе». В конкретном примере мой собеседник попался веселый.

  • Как разработчик, никогда не реализуйте функционал авторизации/аутентификации через разные API endpoint. В вашей системе должна быть общность. Не должно быть workaround решений для того или иного функционала. Все должно работать через единый endpoint с единой защитой. В противном случае вы устанете искать с какого места к вам пришли взломщики.
  • Не используйте простые пароли для пользователей, которые вы сами генерируете. По хорошему пароль должен устанавливать сам пользователь.
  • Всегда шифруйте пароли, солите их, и не храните в плэйн тексте.
  • Не передавайте пароли от системы в электронном письме при регистрации. Если пользователь потеряет контроль над электронным ящиком, он потеряет контроль и над вашей системой.
  • Не используйте генератор логинов в вашу систему. Логины в систему тоже должны быть уникальными.
  • При реализации функционала авторизации, всегда закладывайте функционал защиты от перебора.

У меня все. Комментарии и пожелания приветствуются. Также я открыт к предложениям по тестированию чего-то интересного.

Комментарии (19)


  1. Ugrum
    09.02.2018 17:21
    +2

    Самое сложно было — найти человека, которому можно бы было отправить информацию обо всем этом с целью устранения.

    Напомнило:
    «Шарик: Фу! До чего же дичь пошла бестолковая — я полдня за ней бегал, чтобы сфотографировать!
    Матроскин: Это ещё мало, теперь ты ещё за ним полдня бегать будешь.
    Шарик: Это почему же?
    Матроскин: А чтоб фотографию отдать.»
    Спасибо за статью — живо написана и поучительна.


    1. Valya-roller Автор
      09.02.2018 17:28

      сравнение что надо получилось :D


  1. pda0
    09.02.2018 18:18

    И тут у вас возник вопрос о вознаграждении?
    И снова — классика. Как я понял из статьи, программы вознаграждения у них нет. Разговор о вознаграждении опять же зашёл после передачи информации.
    Впрочем, сейчас ещё ничего. Автор лишь иронизирует. В прошлый, насколько помню, была желчь и брызги слюны на тему, ах они гады, я без их просьбы и согласия у них аудит безопасности произвёл, а они отказываются мою работу оплачивать.


  1. HansHelmut
    09.02.2018 19:12

    Не передавайте пароли от системы в электронном письме при регистрации. Если пользователь потеряет контроль над электронным ящиком, он потеряет контроль и над вашей системой.
    Тут не совсем понял. Если пользователь потерял контроль над почтой, то какая разница есть в письме пароль от учетной записи или нет? Восстановить его дело двух минут.


    1. Valya-roller Автор
      09.02.2018 19:24

      В голове держал на самом деле на этот пункт ситуацию, когда лучше пользователю присылать ссылку по которой он может пройти и установить пароль. У ссылки срок жизни короткий, ну и повторный заход по ссылке не даст снова пароль установить…
      Такую реализацию принято считать более безопасной. Но вообще вы правы — если мыло увели то тут уже никто не поможет…


      1. Chamie
        10.02.2018 18:47

        Это если увели. А могли ведь и просто доступ получить, ничего не меняя. Тогда пользователь и не узнает ничего.


  1. Zibx
    09.02.2018 20:57
    +1

    Прочитал всю статью и так и не смог найти результат исследования изначального вопроса: каковы реальные доходы людей занимающихся разглаживанием чакр?


    1. TimsTims
      10.02.2018 02:57

      Судя по всему совсем мало, раз выплатили всего 5000р, да и то фантиками…


      1. openkazan
        10.02.2018 08:05

        5000 рублей — это хорошо!
        Мне совсем недавно инжиниринговая компания из Голландии, связанная с судостроением (доход судя по данным из БД >2 млн евро в месяц) за SQL инъекцию + time-based stacked -> shell на Windows сервере в награду предложила свою фирменную футболку выслать… :)
        Вежливо отказался от столь щедрого подарка :))


        1. Valya-roller Автор
          10.02.2018 12:07

          История с футболкой у меня тоже совсем недавно случилась. Зашитый db owner в мобильном приложении в header, уязвимая cms и базу в 13 тысяч пользователей оценили в фирменную футболочку. Для меня подобные находки это ценный опыт. Но иногда грустно на сколько такой опыт оценивают…


    1. Evgeniy112
      10.02.2018 12:01

      по конфете за чакру

      я просто любезно попросил перевести это «вознаграждение» знакомому, который “работает” в этой компании. Он в свою очередь смог потратить деньги на сладкую продукцию компании


  1. Louie
    09.02.2018 21:16

    Интересно, спасибо. Только вот сильно верить в то, что пользователи могут придумывать классные логины и пароли — не рекомендую. Помню, в самом начале нулевых мне срочно нужна была полнотекстовая статья из MedLine. Полчаса вручную повводив в форму комбинации типа doctor-doctor, dentist-dentist, Smith-Smith я наловил штук 5 рабочих аккаунтов.


  1. flancer
    10.02.2018 11:38

    Такая комбинация легко подбирается через брутфорс-атаку.

    А по времени не пробовали оценить, во сколько это выльется?


    Дочитал до.


    1. flancer
      10.02.2018 11:51

      Ну да, если обрабатывать по 100 паролей в секунду, то при длине цифрового пароля в 8 символов на подбор уйдет не более 278 часов, а при длине пароля в 6 символов — не более 3. А если бы 6-символьный пароль содержал еще и символы в нижнем или верхнем регистре, то на брутфорс такого пароля ушло бы не более 252 дней. Это при учете, что все 252 дня сервер отвечал бы со скоростью 100 паролей в секунду.


      Я даже не ожидал, что где-то еще используются чисто цифровые пароли. Повезло, однако :)


      1. Valya-roller Автор
        10.02.2018 11:59

        подбиралось в несколько потоков и часто просто везло что верный пароль был где то в начале диапазона. пароли устанавливаются числовые 6-тизначные. и никто их не меняет. там функционал для смены даже запрятан очень глубоко в интерфейсе.


  1. dunaich75
    10.02.2018 12:00

    1. Открываете ящик на абузоустойчивом сервисе в литовской-немецком секторе инета.
    2. Ищите того, кто близок к данной проблеме.
    3. Описываете, что, где и как можно поиметь с этой компании. Без технических деталей и намеков, где это может произойти.
    4. Просите разумное вознаграждение.
    5. Если не получаете, то при помощи .onion и прямых рук либо выводите средства со счетов, либо устраиваете локальный хаос с 2-3 аккаунтами.
    6. Повторяете п.4
    7. Если не прокатило — продаете инфу в темном интернете.

    P.S. 272ч.1 Касается только злого умысла. В условиях незаинтересованности второй стороны в устранении проблемы злой умысел спорен. Единственное, закон в России трактуется в пользу более состоятельной стороны. Так что адрес из литовско-немецкого сектора — это нормально.


    1. pyrk2142
      10.02.2018 16:57

      То, что вы описали — это обычное преступление (не специалист в терминах, это довольно близко к вымогательству и получению незаконного доступа к компьютерной информации). Вопрос, к сожалению, в том, что белое хакерство балансирует на краю законности, а половина действий, которые делают люди — уже за ней.


  1. hippoage
    11.02.2018 13:03

    В итоге как поменялось отношение к «успешным» людям в интернете?

    PS. А вот «вознаграждения» в таких случаях (если нет заранее заявленной программы) — это друга статья УК про вымогательство. Нужно понимать, что наличие публичной программы поиска уязвимостей — это часть пиара компании с соотв. заранее выделенным бюджетом. Если такой пиар не считается важным, то и никаких денег не будет.


  1. Reason89
    11.02.2018 19:50

    В большинстве систем, работающих по реферальной схеме. После регистрации по реферальной ссылке, в личном кабинете можно увидеть логин человека, пригласившего вас. Зачастую, люди раскидывающие такие ссылки, активные пользователи подобных сервисов и есть смысл подбирать пароль к их кабинету, зная уже логин. Бывает так, что сама реферальная ссылка содержит в себе логин ее хозяина, который передается get запросом. Это я к тому, что найти логины активных пользователей в подобных сервисах, не такая уж и большая проблема)