Пользователь
0,0
рейтинг
12 февраля 2012 в 16:15

Перехват аккаунтов пользователей в Wi-Fi-сетях с Android

imageВ сети стала появляться информация о сниффере под любой рутованный смартфон или планшет на Андроиде (от 2.1), позволяющий ходить под чужими аккаунтами многих веб-сайтов, в том числе Facebook и Vkontakte в общественных сетях Wi-Fi.
Речь идет о программе DroidSheep.
О механизме ее работы и использовании поговорим подробнее.

Итак, что вообще делает программа?


Она перехватывает пакеты, ходящие в Wi-Fi сети, одним нажатием кнопки на Android-устройстве.

А причём тут пароли?


Допустим, некий Иннокентий вошёл в кафе выпить чашку кофе и полазить по фейсбуку. Вы запускаете DroidSheep и через некоторое время начинаете просматривать страницу Facebook Иннокентия. Смотреть его друзей. Читать его сообщения. Писать сообщения. Писать на стене. Удалить друзей. Удалить аккаунт Иннокентия… Даже не зная его лично.

Как это произошло?


Когда Иннокентий использует Wi-Fi-сеть, его ноутбук или смартфон отправляет все данные, предназначенные для Facebook, по воздуху на беспроводной маршрутизатор кафе. «По воздуху» в нашем случае означает «видимые всеми», Вы можете прочитать все данные, передаваемые Иннокентием. Поскольку некоторые данные шифруются перед отправкой, пароль от Facebook вы прочитать не сможете, но чтобы Иннокентий не вводил свой пароль после каждого клика, Facebook посылает Иннокентию так называемый «идентификатор сессии» после входа в систему, которое Иннокентий посылает сайту при взаимодействии с ним. Как правило, только Иннокентий знает этот идентификатор, так как он получает его в зашифрованном виде. Но когда он использует Wi-Fi в кафе, он распространяет свой идентификатор сессии по wi-fi для всех. Вы принимаете это идентификатор сессии и используете его: facebook не может определить, если и Иннокентий, и Вы используете один идентификатор.

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

Что нужно для запуска DroidSheep?


— Android-устройство версии старше 2.1
— Root-доступ
— DroidSheep (QR-код и ссылка на загрузку в конце статьи)

image

Какие сайты DroidSheep поддерживает по умолчанию?


— Amazon.com
— Facebook.com
— Flickr.com
— Twitter.com
— Linkedin.com
— Yahoo.com
— Live.com
— Google.com (незашифрованные)

Но есть ещё и «общий» режим! Просто включите его, и DroidSheep будет фиксировать все аккаунты в сети! Успешно протестирована с огромным количество уже поддерживаемых аккаунтов и многих других (даже с WordPress и Joomla должны работать!)

Запароленные Wi-Fi сети


Для защищенных WPA/WPA2 Wi-Fi-сетей программа использует DNS-Spoofing атаки.
ARP-Spoofing означает, что она заставляет все устройства в сети думать, что DroidSheep — маршрутизатор, и пропускает все данные через себя. Это может оказать существенное влияние на скорость работы сети, так что пользуйтесь с осторожностью.

Итак, как пользоваться?


Перед началом убедитесь, что ваш телефон поддерживает root, без него программа работать не будет!

Установка:
С сайта автора — http://droidsheep.de/?page_id=23
Или по QR-коду — image

Использование:

Убедитесь, что ваш телефон подключен к WiFi-сети, запустите DroidSheep и нажмите кнопку «Start». Теперь DroidSheep будет прослушивать сеансы. Как только он перехватил маркер сеанса, он покажет его как запись в списке.

По умолчанию, DroidSheep перехватывает аккаунты только тех сервисов, которые знает (Facebook, Yahoo, Google, ...). Если вы хотите, чтобы перехватывались все учетные записи в сети, включите «Общий режим» — просто нажмите кнопку «меню» в телефоне и нажмите «Включить режим Generic».
Примечание: В Generic режиме DroidSheep фиксирует все наборы cookies в сети, но многие из них не относятся к учетной записи, а потому не позволят вам войти в чужой аккаунт, а будут просто отображаться в программе в списке.

imageЕсли вы перехватили хождение по нескольким сайтам, вы увидите список как на картинке. Аккаунты, определяемые DroidSheep по умолчаню окрашены в зеленый, перехваченные в общем режиме — в желтый.

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

Вот и всё!
Как использовать программу (видео): droidsheep.de/?page_id=14

И последнее.
Быстро все подняли руку и сказали: «Я клянусь, что буду пользовать программу только для исследования работы протоколов сети»


P.S. С Маркета можно скачать и «защитник» от DroidSheep DroidSheepGuard — market.android.com/details?id=de.trier.infsec.koch.droidsheep.guard.free
@akimovpro
карма
56,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

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

  • +3
    Вау, теперь школьникам будет легче взламывать вконтакты их одноклассников.
    • +1
      Да по моему школьники уже давным давно используют этот софт, для меня было очень странно увидеть с таким запозданием новость об этой и подобных программах на хабре, только сейчас! На том же 4пда эта и подобная программы валяются уже давно, по крайней мере ещё осенью всё это успешно протестировал, попугал друзей и удалил!
  • +5
    В армии скрипткидди прибыло, спасибо нам их так не хватало ;-)
  • +3
    Проверил на домашней точке доступа.
    Телефон Desire HD + Ноутбук любимой жены. Сессия Facebook со страничкой жены успешно перехватилась.
    • 0
      Хм. Со vkontakte тоже работает. Главное правильную сессию выбрать.
      Вот теперь действительно «галактико опасносте!»
      • +1
        И да, с https не работает, к счастью.
    • +1
      Dezire Z + ноутбук жены + Facebook. Тоже работает. :)
      • +1
        Второй камент по теме. Надо так и назвать раздел.

        Устройства для слежки за женами.
        • 0
          Зачем следить за жёнами такими способами (тем более в рамках одной wifi-сети)?

          Жёнам надо доверять.
  • +16
    Настройка «Только https» спасет человечество.
    • +2
      В блоге автора программы описан интересный факт: ни мобильный сайт Facebook (m.facebook.com), ни официальное приложение под Android не используют HTTPS, независимо оt настроек. Пост был написан осенью прошлого года, нe знаю поменялось ли что-либо с тех пор — но если не поменялось, то при логине с телефона настройка не спасет.
      • 0
        Настройка только пароль через https передает. А данные передаются опять же через http
        • +1
          У меня весь сайт facebook полностью через https. Пароль шифруется и без настройки, насколько я понимаю.
  • 0
    Думал, что почитаю о технических подробностях реализации. В итоге — очередная статья для кулхацкеров.
    • +4
      На первой же странице подробно описан процесс.
      • 0
        Первой странице чего?
        • –1
          Статьи.
          Если есть передатчик, работающий на некоторой частоте и «шпионский» приемник, на той же частоте, то ничего не мешает нам тоже получать данные. Другое дело, что они зашифрованы. Умея дешифровать сигнал, можно ловить все, что угодно душе.
          • +1
            Какой именно статьи? Я не увидел технических деталей ни в статье на хабре, ни в блоге автора программы, лишь инструкции по установке программы, список поддерживаемых моделей, реклама DroidSheep Guard.

            Или, судя по термину «страница» (в html-статьях нет страниц), есть какая-то PDF-ка с технической статьёй? В таком случае я её не нашёл, поделитесь ссылкой?

            Я не совсем точно выразился, то что можно прослушивать незащищённые сети — понятно. Меня интересуют детали того, что программа делает в защищённой сети. В местной статье на эту тему есть лишь один абзац:
            «Для защищенных WPA/WPA2 Wi-Fi-сетей программа использует DNS-Spoofing атаки.
            ARP-Spoofing означает, что она заставляет все устройства в сети думать, что DroidSheep — маршрутизатор, и пропускает все данные через себя. Это может оказать существенное влияние на скорость работы сети, так что пользуйтесь с осторожностью.»

            Остаётся неясным, зачем тут DNS-Spoofing, а также почему это будет оказывать влияние на скорость работы сети. Да, вики по ключевым словам посмотрел.
  • +5
    Первой была мысль: ставить такого рода приложение на рутованный телефон уже русская рулетка. Однако, оказалось что этот проект open source (GPL 3) и паранойя практически сошла на нет. Вывод: юзабельно!
    • +1
      Какая-то это неправильная паранойя, что она сходит лишь от этого факта.
      • +1
        Логично, что она сходит от того, что можно посмотреть лично, как работает вся эта радость и убедиться в том, что ничего опасного там нет. Я уже даже не знаю, как можно более эффективно выгнать паранойю.
        • +1
          Эффективнее выгнать паранойю не «можно посмотреть лично, как работает вся эта радость и убедиться в том, что ничего опасного там нет», а взять и действительно посмотреть.
          • 0
            Я это и подразумевал)
          • +1
            Для параноиков просто посмотреть мало, надо собрать самому и использовать свою сборку, по возможности сравнив с авторской.
      • +2
        Я уверен, что maxvodo успел проверить все исходники и убедиться в отсутствии «закладок» и «backdoor»-ов.
        Теперь и я со спокойной душой могу ставить себе эту софтину.
  • 0
    Я так понимаю, это наделавший в свое время шуму FireSheep, портированный под Android?
    • 0
      ну в принципе да. если это так, то в принципе можно самому для нужного сервиса добавлять распознавание кукисов
  • +6
    VPN спасет от таких случайных связей.
    • +1
      впн надо во первых купить, во вторых настроить, и я очень сомневаюсь что большинство пользователей мобильных устройств этим займутся, так что угроза очень даже серьезна.
      • 0
        У нас в универе заблокированы все порты кроме 80. Даже пинги не проходят и 443 порт. Так что vpn даже тяжеловато.
        • +4
          а кто мешает поднять VPN на 80ом?
          • +1
            OpenVPN не входит в стандартную поставку android, a pptp и l2tp не поддерживают настройку портов. Понятноедело что те кто ставят кастомные прошивки еще смогут себя защитить, но большинство пользователей окажутся под угрозой.
            • 0
              Обычный VPN в андроиде 2.3 (или даже ниже) по умолчанию. Его поднять на 80 порту нельзя? (я реально не знаю)
              А OpenVPN в Циане и прочих сборках имеется, правда у меня не удалось его завести: требуется импортировать в телефон сертификат определённого формата, но даже после этого служба выдавала ошибку, соответствующую некорректному формату сертификата.
      • 0
        Зачем покупать vpn?
  • +2
    Для защищенных WPA/WPA2 Wi-Fi-сетей программа использует DNS-Spoofing атаки.
    Ну т.е. https все равно спасает.
  • +1
    DroidSheep Guard кто нибудь уже опробовал?
    • 0
      Пробовал. Реагирует только на WiFiKill.
      На DroidSheep не реагирует.
      WiFiProtector так же мышей не ловит.

      С другой стороны DroidSheep ловит не всё — от фазы луны зависит.
  • 0
    А прога-защитик как работает?
    • 0
      «It monitors your ARP-Table and alerts on any unusual change to this table.»
      • +1
        То есть только при WPA. Т.к. если нет шифрования можно снифить трафик и тот у кого снифишь даже не заметит.
  • +5
    +5 к паранойе
    • +2
      Забавное совпадение — рейтинг вашего коммента как раз +5 :-)

      Напоминает недавнюю шутку про восьмерых троллей
  • 0
    Я еще air-crack поднимал.
    • 0
      На Android?
      • 0
        Запускал backtrack через chroot
        • 0
          Статью напишете? Было бы очень интересно почитать.
          • 0
            Ничем не отличается от запуска debian'a, о котором на хабре уже писали. Единственное, что дополнительно нужно — скомпилировать дрова на wlan, но и это не проблема, ибо android является opensource.
    • 0
      А это будто бы не он :)
  • 0
    Неужели с любым телефоном работает? То есть с любым железом.
    На сколько я понимаю, нужно переводить интерфейс в неразборчивый режим, что на компе даже не со всем WI-FI чипами работает. Или просто телефон становится шлюзом?
    • 0
      Из FAQ:

      DroidSheep will not run on all phones. Some phones/drivers/networkcards/firmwares do not foward all traffic to the Linux-Kernel and DroidSheep will not see the Traffic. These phones will not be able to run it. [...]
  • 0
    Месяца 3 юзаю в своих целях, безвредных: Р
    • +1
      Пишу в статусы людям, чтоб поаккуратнее были с вай-фаем.
  • 0
    HTTPS наше всё!
  • –2
    как же хорошо не иметь ничего из вышеперечисленного…
    • +7
      Хабр думаю тоже поддвержен, так что…
  • 0
    > Для защищенных WPA/WPA2 Wi-Fi-сетей программа использует DNS-Spoofing атаки.
    ARP-Spoofing означает, что она заставляет все устройства в сети думать, что DroidSheep — маршрутизатор, и пропускает все данные через себя.

    Таки DNS-Spoofing в сабже или ARP?
    • 0
      DNS-Spoofing через ARP-Spoofing. ARP-cпуфится ip DNS-сервера и при резолве подсовывается ip MitM хоста.
      • 0
        Обычный ARP спуфинг там, подменяется IP адрес шлюза по умолчанию, так ведь проще :)
        А если подменять DNS, ну увидите вы DNS траффик, что с ним делать то? нам же HTTP нужен.
        • 0
          Что-что, понятно что. Резолвите Вы свой фейсбук.ком, а я Вам свой ип даю — все, далее Вы ходите через меня.
          • 0
            Согласен, можно конечно и так.
      • 0
        Вот насчёт DNS-спуфинга у меня и недоумение. Ведь:
        1) Зачем он нужен, если достаточно заспуфить адрес шлюза?
        2) У DNS есть кэш. То есть при начале спуфинга, если пользователь уже сидит вконтактике, нужно ждать долго, прежде чем кэш протухнет и клиент сделает новый DNS-запрос. И после того как мы отсоединимся, фэйковые записи останутся в кэше клиента, он не сможет подключаться к сайтам и заподозрит что-то
        3) DNS-сервер может быть вообще не в этом сегменте сети, то есть заспуфить его с помощью ARP может не получиться
        • 0
          А если днс гугловый (кстати, по умолчанию в четвёртом андроиде), а имено 8.8.8.8? Спуфинг не прокатывает?
  • 0
    А ещё. Некоторые сайты используют SSL, например mail.google.com. А теперь вопрос, если человек заходит на главную страницу Google (без SSL), его куки компрометируются и под его логином становится возможным зайти на главную. Сможет ли злоумышленник теперь с этими куками зайти в защищённые SSL разделы сайта?

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

    Иными словами делают ли нынешние веб разработчики разные наборы кук для защищённых и не защищённых SSL разделов сайта?

    Гуру веб, просветите?
    • 0
      Насколько я помню, когда заходишь например в gmail то SSL проходит обязательно. Думаю есть защищенные куки.
    • +1
      Для gmail вроде не получается с теми куками в почту зайти (по крайней мере с телефона). Но вот после сниффинга кук с главной страницы яндекса (на которую человек заходит по http) удается зайти в почту яндекса (то что в самой почте в настройках включён SSL помехи не создает).

      В какой-то мере решением данной проблемы является гостевая зона (в ней клиенты не могут взаимодействовать друг с другом), работает даже в распространённых недорогих длинках, типа DIR-300.

      И да, хотелось бы всё-таки почитать технические детали. А также стандартные способы защиты.
    • 0
      Нужно выставлять secure флаг (Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client. When set to TRUE, the cookie will only be set if a secure connection exists. On the server-side, it's on the programmer to send this kind of cookie only on secure connection). Ну и само собой httponly флаг нужно не забывать ставить, дабы минимизировать возможный выхлоп злодеев при XSS-атаках.
      • 0
        Угу. Но чтобы после аутентификации через SSL пользователь оставался аутентифицированным и на незащищённых разделах сайта (например главная страница), нужен ещё один набор кук, который он сможет передавать по plain-http-соединениям, не так ли?

        То есть после аутентификации нужно устанавливать два набора кук. Один secure, а другой нет. И в защищённых разделах сайта требовать наличия именно secure кук. Такими сложностями кто-то заморачивается?
  • НЛО прилетело и опубликовало эту надпись здесь
    • –1
      В iOS 5.5 обещали сделать.
  • 0
    А AVG антивирус сказал якобы это вирус
    • 0
      тоже самое вякнул и на анти-дроид-овцу
  • +2
    Капитан Очевидность просит дополнить, что она спуфит любой* шлюз. Если это какой-нибудь DIR-300, то я буду получать данные и с компов, подключённых проводом к нему, а если Wi-Fi-роутер — всего лишь точка доступа, то я получаю доступ и к проводным клиентам, которые ходят через общий со мной шлюз.
    *если админ не настроил изоляцию клиентов
    Да, и когда я включаю перехват у себя дома, то начинаются некислые провалы в хождении пакетов (даже при том, что у меня сейчас в сети только один компьютер).
    • 0
      Если это какой-нибудь DIR-300, то я буду получать данные и с компов, подключённых проводом к нему

      По умолчанию встроенный свич не ведет себя как хаб, а маршрутизирует фреймы только между задействованными участниками. Не так уж легко заставить DIR-300 включить широковещательный режим, чтобы с wi-fi можно было прослушать проводной трафик. А некислые провалы начинаются из-за того самого arp-spoofing, который перекладывает функцию маршрутизатора на ваш андроидофон ради перехвата трафика. Это два разных механизма, которые не следует путать.
  • 0
    Проверил. Точка доступа ZyXEL Keenetic Lite, телефон — GalaxyS II, 2.3.4 официал. Не работает ((
    • 0
      Хотя, какое-то странное поведение… Отключил свой ноутбук от wi-fi — тут же поймал несколько сессий с другой машины. Подключил обратно — ловить перестало. Неужто у него аллергия на мой ноут? :)
      • 0
        Ноутбук не даёт андроиду спуфить, так как спуфит сам? )
  • 0
    После запуска программы на телефоне с ноутбука вообще не смог зайти на FB. Как только нажал «STOP»- FB сразу откликнулся. Проверил 4 раза подряд. (wifi wpa2)

    Не было такого?
  • 0
    $ ssh -D 5555 username@vps.example.com
    socks: localhost:5555
    • 0
      SSL? не, не слышал
      • 0
        У ВКонтакте, Хабра и тысяч других важных сайтов нет SSL, умница ты моя.
  • –1
    «Торжественно клянусь, что замышляю только шалость!»
    Никогда не пользуюсь публичными Wi-Fi сетями.
  • +1
    Бедный Иннокентий, не повезло бедолаге.
  • +1
    Для защищенных WPA/WPA2 Wi-Fi-сетей программа использует DNS-Spoofing атаки.
    ARP-Spoofing означает, что она заставляет все устройства в сети думать, что DroidSheep — маршрутизатор, и пропускает все данные через себя


    При чём тут WPA/WPA2? Я так полагаю, DNS-Spoofing или ARP-Spoofing потребуется независимо от наличия\отсутствия шифрования в сети на канальном уровне.

    Если необходимо мониторить незашифрованные (без SSL, мобильные версии сайтов) соединения уж лучше использовать aircrack. Хотя, с ним приходится ещё повозиться, чтоб под андроид поставить. Но у некоторых это получается
    • 0
      Нет, в случае открытого соединения вовсе необязательно применять какие либо ухищрения чтобы получить трафик предназначающийся другим пользователям, он передается «по воздуху» — а значит во все стороны, достаточно просто послушать эфир.

      А вот в случае использования WPA/WPA2 на физическом уровне используется механизм изоляции клиентов, и даже поймав чужой пакет (будучи подключенным к сети) вы не сможете расшифровать его, так как он зашифрован другим ключем, именно из за этого необходимо получить пропустить его через себя на канальном уровне.
  • 0
    Что-то я делаю не так — у меня чего-то не перехватывает. Кстати от таких перехватов есть и контрсредство — wifi protector (тоже требует рута, сидит в фоне и если кто пытается перехватить показывает).
  • 0
    Такие новости надо ставить в ровень с рекламой детсткой порнографии. А «афтаров» сиих творений — к химической кастрации.
  • 0
    tcpdump в красивом обрамлении. :)

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.