Конкурс Fake Captive Portal на Android для хищения конфиденциальных данных пользователей.

Статья для участия в конкурсе на codeby.

Всем привет,

Хочу раскрыть ещё не особо заежженую тему для получения конфиденциальной информации в виде данных для авторизации в социальных сетях, почтовых ящиках и т.д. (Зависит от реализации и конечной цели).

Плюсы данной схемы:
  • Не нужно таскать с собой громоздкой ноут.
  • После настройки от вас никаких действий не требуется, просто ожидать пока жертвы будут вам сами сливать свои данные.
Какой будет результат: Беспроводная точка доступа с фейковой домашней страницей псевдо Captive Portal для входа в интернет с помощью авторизации через социальную сеть.
Википедия:
Captive portal — сетевой сервис, требующий от подключившегося к Сети пользователя выполнить некоторые действия для получения доступа в Интернет.

Нам потребуется:

  • Телефон на Android OS с root доступом.
  • Окружение Nethunter, так как в нём по умолчанию установлен сервер Apache2.
  • Приложение для редактирования iptables
  • Проводник с root доступом для редактирования системных директорий
И так приступим:

Шаг 1. Открываем приложение Nethunter, заходим в Kali Services, и запускаем Apache.
Screenshot_20171102-212951.png
Убедимся что наш сервер запущен - заходим в браузер и переходим по локальному адресу 127.0.0.1, у наш должна отобразится страница приветствия Apache.
JUGu5aW.png

Шаг 2. Создание формы авторизации.
Либо сами создаёте если разбираетесь в html и php, либо используем исходники созданные мной которые я прикрепил. Берём исходники и перемещаем их в директорию нашего веб сервера, а именно:
/data/local/nhsystem/kali-armhf/var/www/html/
и соглашаемся на замену. Теперь убедимся что все удачно скопировалось, ещё раз переходим по локальному адресу 127.0.0.1, у нас теперь должна отобразится домашняя страница авторизации Captive Portal:
Screenshot_20171102-232249.png

Шаг 3. Редактирование правил iptables.
Заходим в настройки телефона, открываем раздел "Беспроводные сети" -> "Режим модема" -> Настраиваем под себя точку доступа и запускаем.
Screenshot_20171102-232424.png
Теперь нам нужно узнать ip адрес нашей точки доступа и соответственно это будет адрес на который мы будем перенаправлять пользователей. Открываем приложение "Терминал" и в консоль пишем "ifconfig", находим имя наше сетевой карты "wlan0" и запоминаем наш ip адрес.
Screenshot_20171102-232545.png
Далее скачиваем и устанавливаем приложение iptables2 с Play Market Запускаем, и в поле ввода вставляем код предварительно заменив ip адрес на свой:
Код:
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -p udp --sport 53 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.43.1
iptables -P FORWARD DROP
нажимаем "Execute".
Screenshot_20171102-232648.png
Теперь у нас все настроено, проверяем работоспособность с другого устройства. Подключаемся к поднятой wi-fi сети, запускаем браузер, и в строку ввода пишем адрес любого сайта. Запрос должен перенаправлятся на наш сервер. Когда жертва заполнит данные логин пароль и нажмёт "продолжить", введенные им данные сохранятся в users.txt расположенном в директории нашего сервера:
/data/local/nhsystem/kali-armhf/var/www/html/
а жертва получит ответ:
Screenshot_20171102-233157.png

Хочу ещё добавить: проект находится в стадии разработки, перенаправление пока что работает только для http, если пробовать перейти по https то страница будет недоступна (если кто знает как реализовать перенаправление https с помощью iptables напишите в коментах или в личку), так же планирую реализовать проверку введенных данных на почтовом сервере (если это возможно), ещё нужно привести в порядок форму авторизации, что б была более привлекательной на вид.
P.S. Особо не пинайте, разработкой на php и html никогда не занимался, и вникать начал только второй день.

Всем спасибо за внимание.
 

Вложения

  • html.zip
    27,3 КБ · Просмотры: 308

OBLIVIONNN

Green Team
22.08.2017
144
92
BIT
1
Да с HTTPS было бы спокойней, что бы вообще ничего не заподозрили.
Когда жертва заходит на любой сайт у него отображается 127.0.0.1 ? если да то можно ли как нибудь это изменить ?
 

flesh91

Green Team
25.02.2017
35
51
BIT
0
Нет, ip адрес который задаст ваша точка доступа, в моем случае: 192.168.143.1
 

Dr.Lafa

Green Team
30.12.2016
507
1 049
BIT
0
Весьма занятно. Вектор атаки можно улучшить "Приветственным окном" на андроид устройствах, которое обычно появляется сразу после подключения какой-либо точке доступа, подразумевающей регистрацию.
 

<~DarkNode~>

~^M1st3r_Bert0ni^~
Platinum
19.10.2016
722
3 099
BIT
0
А мне статья понравилась. Человек по простому продемонстрировал банальное заворачивания трафика на рутированом телефоне с целью хищения пользовательских данных , тем самым показал опасность использования халявного вай фай...
В целом это можно реализовать и без нетхантера , хватит порой установленного PHP и апач сервера на вашем телефоне.
Про Captive Сервис узнал из этой статьи, спасибо автору за простоту описания одного из опасных векторов атаки - фишинга , с использованием всего лишь телефона , который незаметно может лежать в кармане.)
Лайк ТС-у )
 

SooLFaa

Platinum
15.07.2016
898
1 560
BIT
36
А мне статья понравилась. Человек по простому продемонстрировал банальное заворачивания трафика на рутированом телефоне с целью хищения пользовательских данных , тем самым показал опасность использования халявного вай фай...
В целом это можно реализовать и без нетхантера , хватит порой установленного PHP и апач сервера на вашем телефоне.
Про Captive Сервис узнал из этой статьи, спасибо автору за простоту описания одного из опасных векторов атаки - фишинга , с использованием всего лишь телефона , который незаметно может лежать в кармане.)
Лайк ТС-у )
ХЗ. еще бы в век всяких Плохих кроликов, Опасных клубничек и т.п. атак рассказывать про фишинг.
 
M

makcim

это можно сделать еще с помощью приложения zANTI
 

flesh91

Green Team
25.02.2017
35
51
BIT
0
ХЗ. еще бы в век всяких Плохих кроликов, Опасных клубничек и т.п. атак рассказывать про фишинг.
Я не спорю фишинг проежженая тема.
Но зависит как подать его. Пример:
В каком то ресторане поднять точку, заточить полностью под данную локацию:
1. Имя точки - название кафе
2. Страницу приветствия переделать -соответственно оформить, плюс дописать -
"Авторизируйся с помощью социальной сети и получи 30% скидку на все меню"

То глупых людей воспользоватся шарой будет не мало.
 
  • Нравится
Реакции: ghost
B

boyroid

А можно как-нибудь без NetHunter? Я попытался поднять Apache на телефоне, локально всё работает, но подключившиеся устройства не могут открыть страницу логина. Iptables поменял как описано в статье.
 
K

kernel

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

flesh91

Green Team
25.02.2017
35
51
BIT
0
Не завелась даже на нетхантере. Возможно потому что иптаблес конечно не той версии. Но без https очень сыро, а жаль, задел хороший.
Привет, не совсем ясно на каком шаге возникли трудности, можно более подробно.
 
I

IioS

"Авторизируйся с помощью социальной сети и получи 30% скидку на все меню"
Вот такого лучше не делать, так как когда кто-то попросит у официанта "скидку", за заход через соц. сеть, поднимется шум. И в результате на такую уловку там больше не клюнут, хотя б те что там сидели во время криков: "Я зашел через ВК, и где теперь моя скидка?!"
 
  • Нравится
Реакции: flesh91
A

assa911

Что-то вы все на Кали застряли со статьями. Я из под винды такое делаю, Openserver + Intercepter-NG он перенаправляет https.
 

flesh91

Green Team
25.02.2017
35
51
BIT
0
Что-то вы все на Кали застряли со статьями. Я из под винды такое делаю, Openserver + Intercepter-NG он перенаправляет https.
Хотелось бы более детально узнать как вы, с помощью Интерцептера перенаправляете весь https трафик.
[doublepost=1513087987,1513087792][/doublepost]
Вот такого лучше не делать, так как когда кто-то попросит у официанта "скидку", за заход через соц. сеть, поднимется шум. И в результате на такую уловку там больше не клюнут, хотя б те что там сидели во время криков: "Я зашел через ВК, и где теперь моя скидка?!"
Согласен, что такой исход события очень вероятен)), зато настроение можно поднять себе, наблюдая со стороны за этим кипишем)))
 
K

kernel

Привет, не совсем ясно на каком шаге возникли трудности, можно более подробно.
Ошибок никаких нет, запускаю, апач, копирую http, проверяю, все работает, в таблете все прописываю, завелось, пробую зайти с пк- ошибка, мыл соединения нет. Хотя... По сути инет на телефоне должен быть обязательно включен?
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!