Получение паролей подключенных пользователей к mobile AP

в 21:04, , рубрики: android, cgi, hosts, information security, php, wi-fi, информационная безопасность, фишинг, метки: , , , , , , , ,

Начитавшись постов про MiTM атаку с айфона и боевые приложения для андроида, я решил реализовать снифер паролей на android устройтве.

Самым трудным, как оказалось, был поиск вебсервера.
Получение паролей подключенных пользователей к mobile AP

Среди всех вебсерверов с поддержкой cgi скриптов, представленных на маркете, ни один не поддерживал работы на 80 порту, а ведь именно он нужен для правдоподобного домена вида домен.ком а не домен.ком:8080.
Беглый поиск по гуглу не дал результатов, но кое-где вскольз упоминалась возможность запуска lighttpd (подходящий нам вебсервер) в chroote. Иными словами, на андроиде такое возможно.
Углубленный поиск дал результаты: румынские умельцы реализовали lighttpd для arm процессоров. Немного обрезаный, конечно, но подходящий.
Установка совсем простая: копируем архив на карту и вводим в терминале андроида следующие строки:

su
cd /
tar xf /sdcard/%filename%.tar.gz

На сайте рекомендуют использовать утилиту ввода команд с пк, но в данном случае было легче переименовать скачанный файл «php-5.3.8_lighttpd_1.4.29_armv5.tar.gz» в «1.tar.gz» (для удобства ввода) и ввести эти команды в эмуляторе терминала на самом телефоне.

Затем идём в папку /system/xbin и находим там файлы reload-fcgi.sh и reload-lighttpd.sh, которые надо запустить для запуска сервера, вернее для перезагрузки.
Запустить, то есть выполнить, их можно большинством файловых менеджеров. Лично я использовал root explorer.

Проверяем — идём на localhost и, если наблюдаем phpinfo, значит установка выполнена успешно.
Файлы сайта надо копировать в папку /system/var/www, в ней уже находится файл, который мы наблюдали при переходе на localhost.

Далее берём любую страничку, в данном случае google, быстренько пишем скрипт, записывающий логин и пароль в файл обычный, в бд, скорее всего, не получится без костылей. Вот такая получилась страничка, которую надо положить в /system/var/www, а файлу с паролями надо дать права записи. Естественно, это не самая надёжная система сбора пароля, в ней очень много уязвимостей, позволяющих получить доступ к файлам, но ведь всё это делается для демонстрации уязвимостей, а не для атаки.
Получение паролей подключенных пользователей к mobile AP
localhost немного изменил свой внешний вид.

Далее идём в hosts (он находится в папке /system/etc), или же воспользуемся программой hosts editor, я воспользовался простым текстовым редактором. Добавляем ip точки доступа и домен, у меня получилось так:
192.168.43.1 google.com.

Тестируем: запускаем режим точки доступа на телефоне, подключаемся к ней, переходим на google.com — видим нашу страничку. Нажимаем «войти», появляется всем знакомая картинка, даже домен не вызывает подозрений:
Получение паролей подключенных пользователей к mobile AP
Вводим логин и пароль, выполняем вход. Смотрим файл базы и видим свои логин и пароль:
Получение паролей подключенных пользователей к mobile AP
Файл конфигурации находится в папке /system/etc/lighttpd, с его помощью можно добавить виртуальные серверы и принимать данные сразу за несколько доменов, создавать поддомены.

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

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

Автор: KolibriCode

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js