Форум
ПОИСК ПО ФОРУМУ
Портал
ПОИСК ПО ФОРУМУ
Авторы
Что нового
Медиа
Поиск медиа
Архив
Пользователи
Сейчас на форуме
Поиск сообщений в профиле
ПОИСК
Вход
Регистрация
Что нового
ПОИСК ПО ФОРУМУ
Меню
Вход
Регистрация
Установить приложение форума
Установить
Уменьшение отступа
Обратная связь
(info@ru-sfera.pw)
Форум
Безопасность системы
Защита приватной информации
Сделал публичный WiFi
JavaScript отключён. Для полноценно использования нашего сайта, пожалуйста, включите JavaScript в своём браузере.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нем неправильно.
Необходимо обновить браузер или попробовать использовать
другой
.
Ответить в теме
Сообщение
<blockquote data-quote="X-Shar" data-source="post: 145167" data-attributes="member: 1"><p>Хе у меня достаточно мощный роутер, решил сделать "публичный WiFi", который доступен в пределах моего двора.</p><p></p><p>Да, знаю многие заморачиваются (да, я и сам раньше) защитой своей точки, что-бы никто неподключился.</p><p></p><p>Но мне стало интересно, сколько подключится ко мне. Да все желающие могут бесплатно подцепиться.<img src="/0798.gif" class="smilie" loading="lazy" alt="Dmeh-Smeh-Smeh!!!" title="Dmeh-Smeh-Smeh!!! Dmeh-Smeh-Smeh!!!" data-shortname="Dmeh-Smeh-Smeh!!!" /><img src="/shok.gif" class="smilie" loading="lazy" alt="sholoh it" title="sholoh it sholoh it" data-shortname="sholoh it" /><img src="/crazy.gif" class="smilie" loading="lazy" alt="i'm crazy" title="i'm crazy i'm crazy" data-shortname="i'm crazy" /></p><p></p><p>Но потом мне стало интересно, а на сколько безопасно это в РФ ? Ведь чисто теоретически, если кто-то подключится и начнёт, каким-то криминалом заниматься, по хорошему могут потом ко мне прийти.<img src="/49.gif" class="smilie" loading="lazy" alt="Не въехал!!!" title="Не въехал!!! Не въехал!!!" data-shortname="Не въехал!!!" /><img src="/crazy.gif" class="smilie" loading="lazy" alt="i'm crazy" title="i'm crazy i'm crazy" data-shortname="i'm crazy" /><img src="/shok.gif" class="smilie" loading="lazy" alt="sholoh it" title="sholoh it sholoh it" data-shortname="sholoh it" /></p><p></p><p>По началу, думал весь трафик загнать через прокси, но сегодня даже случайно попалась статейка на Хакере (Пока-что непробовал), загнать весь трафик в ТОР.</p><p></p><p>[CODE]https://xakep.ru/2018/06/28/wi-fi-tor-proxy/[/CODE]</p><p></p><p>В этой статье рассмотрим, как конфигурировать точку доступа Wi-Fi с автоматической анонимизацией всего исходящего трафика через сеть Tor, а также взглянем на некоторые полезные примеры ее применения как для простого пользователя, так и для исследователя безопасности.</p><p></p><p><span style="font-size: 22px"><strong>Зачем нам Tor AP?</strong></span></p><p></p><p>В последнее время на фоне массовых блокировок IP-адресов все меньше людей продолжает сомневаться, нужны ли механизмы проксирования и анонимизации в их повседневной жизни. Бесплатных VPN-клиентов появляется все больше, но, как <a href="https://blog.csiro.au/tinker-torrentor-streamer-spy-vpn-privacy-alert/" target="_blank">показывает практика</a>, далеко не всем из них безопасно полностью доверять: то качество реализации хромает, то <a href="https://torrentfreak.com/which-vpn-services-take-your-anonymity-seriously-2014-edition-140315/" target="_blank">разработчики не слишком добросовестны</a>.</p><p></p><p>Как известно, Tor «из коробки» предоставляет как механизм проксирования (читай: обхода блокировок), так и продвинутый механизм анонимности. Вся связь между узлами в сети Tor шифруется, а соединение с целевым узлом устанавливается посредством как минимум трех случайно выбранных узлов. Взяв за основу Tor и автоматизировав все процессы, происходящие при подключении к точке доступа (далее — AP), в результате мы получим весьма интересный инструмент, польза от которого отнюдь не исчерпывается обходом блокировок.</p><p></p><p><span style="font-size: 22px"><strong>Первичная настройка AP</strong></span></p><p></p><p>Для создания точки нам понадобится какое-нибудь устройство, на котором можно запустить операционку (виртуалка тоже вполне сгодится). В качестве операционной системы, управляющей точкой, подойдет любой Linux-дистрибутив. Конкретно я буду использовать Debian-based. Для превращения всего этого в AP понадобится Wi-Fi-адаптер.</p><p></p><p>Если все это выполнено, можно приступать к первичной настройке. Итак, в первую очередь подключаем Wi-Fi-адаптер. Вывод ip addr show wlan0 (wlan0 — имя интерфейса адаптера, может быть другим) должен быть такой, как на скрине.</p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/Interface_Info.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>Детали сетевого интерфейса адаптера</p><p></p><p>На данный момент сетевой интерфейс не сконфигурирован. Первым делом активируем Wi-Fi, освободив его от влияния вездесущего Network Manager’а:</p><p></p><p>$ sudo nmcli radio wifi off</p><p>$ sudo rfkill unblock wlan</p><p></p><p>Теперь выберем и назначим интерфейсу адаптера IP-адрес, все адреса из</p><p>маски которого будут назначаться в дальнейшем клиентским устройствам:</p><p></p><p># ip addr add 10.0.0.1/24 dev wlan0</p><p></p><p>Третьим пунктом мы переведем адаптер в режим AP: делать это мы будем одним из наиболее распространенных способов — с помощью утилиты <a href="https://en.wikipedia.org/wiki/Hostapd" target="_blank">hostapd</a>, позволяющей сконфигурировать программную точку доступа. Hostapd присутствует в большинстве штатных репозиториев.</p><p></p><p>$ sudo apt-get install hostapd</p><p></p><p>Далее нужно создать конфиг для hostapd (./hostapd.conf):</p><p></p><p>## Имя интерфейса адаптера</p><p>interface=wlan0</p><p>## SSID AP</p><p>ssid=TorNet</p><p>## Автоматический выбор канала</p><p>channel=1</p><p>## Разрешить подключение со всех MAC-адресов, которые не запрещены</p><p>macaddr_acl=0</p><p>## Файл с запрещенными для подключения MAC-адресами</p><p>deny_mac_file=./denied_macs</p><p>## Логировать все модули (IEEE, WPA, IAPP и так далее)</p><p>logger_syslog=-1</p><p>## Логировать с модулей только informational messages</p><p>logger_syslog_level=2</p><p>## Режим: IEEE 802.11g</p><p>hw_mode=g</p><p>## Включить аутентификацию WPA/2</p><p>wpa=2</p><p>## Пароль WPA для доступа к точке</p><p>wpa_passphrase=xxxxxxxx</p><p>## Принимаемые алгоритмы управления ключами</p><p>wpa_key_mgmt=WPA-PSK WPA-EAP WPA-PSK-SHA256 WPA-EAP-SHA256</p><p></p><p>После этого уже можно будет запустить hostapd для перевода Wi-Fi-адаптера в режим AP с описанной конфигурацией:</p><p></p><p># hostapd ./hostapd.conf</p><p></p><p><span style="font-size: 18px"><strong>Hostapd и Network Manager</strong></span></p><p></p><p>В некоторых версиях hostapd присутствует баг, связанный с блокировкой интерфейса Network Manager’ом и не позволяющий запускать AP. В</p><p>результате запуска hostapd возникает следующая ошибка:</p><p></p><p>Interface wlan0 wasn't started</p><p></p><p>Подробно баг и возможный воркэраунд описан <a href="https://bugs.launchpad.net/ubuntu/+source/wpa/+bug/1289047" target="_blank">здесь</a>.</p><p></p><p>Однако по понятным причинам подключиться к точке привычным образом пока будет невозможно.</p><p></p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/WiFi_err.jpg" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>Попытка подключения к AP без DHCP</p><p></p><p>Для устранения этих причин понадобится другая утилита — dnsmasq, которая позволит развернуть службы DHCP и DNS. DHCP сейчас представляет больший интерес.</p><p></p><p>Ставим dnsmasq из стандартного репозитория:</p><p>$ sudo apt-get install dnsmasq</p><p></p><p>Dnsmasq также нуждается в предварительной настройке (./dnsmasq.conf):</p><p></p><p>## Интерфейс для прослушки DHCP-запросов</p><p>interface=wlan0</p><p>## Диапазон выдаваемых клиентам адресов и срок действия</p><p>## (должны подходить под маску сетевого шлюза адаптера!)</p><p>dhcp-range=10.0.0.10,10.0.0.250,8h</p><p>## Шлюз по умолчанию</p><p>dhcp-option=3,10.0.0.1</p><p>## DNS-шлюз</p><p>dhcp-option=6,10.0.0.1</p><p>## Логировать DNS-запросы</p><p>log-queries</p><p>## Логировать DHCP-запросы</p><p>log-dhcp</p><p></p><p>Запускаем DHCP-сервер в составе dnsmasq:</p><p># dnsmasq -C ./dnsmasq.conf</p><p></p><p>Теперь подключение к AP становится возможным с любых устройств. Чтобы наша точка наконец заработала в обычном режиме, осталось ответить на главный вопрос: откуда точка будет брать доступ в интернет. Для получения ответа предлагаю взглянуть на схему ниже. Большинство читателей, так или иначе соприкасавшихся с настройкой сетей, заметят на нем достаточно привычную схему связывания сетей. Именно этот способ мы и будем использовать.</p><p></p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/Interface_Fwd.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>Схема доступа в интернет с AP</p><p></p><p>Как видно из рисунка, для доступа в интернет понадобится еще один сетевой интерфейс. Это может быть как Ethernet-подключение (eth0), так и второй Wi-Fi-модуль (wlan1).</p><p></p><p>Например, при создании AP из виртуальной машины такой интерфейс создается автоматически (eth0). Сейчас у нас готово все, за исключением связи между интерфейсами (обозначенной красной линией).</p><p></p><p>Эта связь представляет собой пересылку пакетов с одного интерфейса на другой. Для тестирования работоспособности нашей AP пока</p><p>сгодится и обычный механизм NAT:</p><p></p><p>$ sudo sysctl -w net.ipv4.ip_forward=1</p><p>$ sudo iptables -P FORWARD ACCEPT</p><p>$ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</p><p></p><p>На данном этапе AP заработала в обычном режиме: принимает клиентов и предоставляет им доступ в интернет с IP-адреса, выданного нам нашим</p><p>провайдером. Это, конечно же, замечательно, но для наших целей недостаточно. Поэтому теперь настало время перенаправления всего</p><p>клиентского трафика в Tor. </p><p> </p><p><span style="font-size: 22px"><strong>Вторичная настройка AP</strong></span></p><p></p><p>Перед перенаправлением всего трафика AP в Tor необходимо установить сам Tor:</p><p></p><p>$ sudo apt-get install tor</p><p></p><p>И настроить его как Transparent Proxy с помощью конфигурационного файла (расположенного здесь: /etc/tor/torrc):</p><p></p><p>## Включаем доступ к onion-ресурсам</p><p>VirtualAddrNetwork 192.168.100.0/10</p><p>AutomapHostsOnResolve 1</p><p>## Порт для прозрачного проксирования в рамках нашей сети</p><p>TransPort 10.0.0.1:9040</p><p>## Порт для анонимного резолвинга имен хостов</p><p>DNSPort 10.0.0.1:53</p><p></p><p>Этих настроек для наших нужд вполне достаточно, поэтому можем запускать Tor как сервис:</p><p></p><p>$ sudo service tor start</p><p></p><p>На текущий момент вывод netstat -tunapl должен быть примерно таким, как на скрине ниже. Мы видим все запущенные нами сервисы на текущий момент.</p><p></p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/Netstat_AP.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>Открытые порты на AP</p><p></p><p>Если сейчас подключиться к AP, то мы по-прежнему будем выходить в интернет с домашнего IP, поэтому осталось всего-навсего включить проксирование через Tor с помощью iptables:</p><p></p><p># Перенаправление всего TCP-трафика</p><p>$ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -j DNAT --to-destination 10.0.0.1:9040</p><p># ...и DNS-трафика в отдельности</p><p>$ sudo iptables -t nat -A PREROUTING -i wlan0 -p udp --dport 53 -j DNAT --to-destination 10.0.0.1:53</p><p></p><p>Также нужно удалить предыдущее правило, включающее маскарад между сетевыми интерфейсами (NAT):</p><p></p><p>$ sudo iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE</p><p></p><p>Двумя новыми правилами мы добились следующего: подмены пункта назначения всего TCP-трафика в момент появления пакетов на сетевом интерфейсе Wi-Fi-адаптера и редиректа DNS-запросов (протокол UDP).</p><p></p><p>Подмененный пункт назначения — запущенный сервис Tor с Transparent Proxy. Стоит обратить внимание, что на этих двух правилах настройка iptables завершается. Теперь можно убедиться в работоспособности настроенной Tor AP, посетив с любого подключенного к ней устройства 2ip.ru.</p><p></p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/AP_Tor_Proof.jpg" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>PoC</p><p></p><p><span style="font-size: 18px"><strong>RPi как AP</strong></span></p><p></p><p>«Малинка» отлично подходит в качестве управляющего устройства AP: всего несколько дополнительных действий с автоматической разверткой конфигурации при старте системы (systemd, initV), и останется всего лишь воткнуть USB-кабель в «розетку» для включения точки в любой нужный момент.</p><p></p><p><span style="font-size: 22px"><strong>Практическое применение AP</strong></span></p><p></p><p>Имея собственную AP, с которой соединяются клиентские устройства, мы по умолчанию получаем возможность наблюдения за всем трафиком своей сети, как пассивного, так и активного. Перенаправление в Tor — это лишь один из вариантов применения AP в прикладных задачах.</p><p></p><p><span style="font-size: 18px"><strong>Анализ трафика клиентских устройств</strong></span></p><p></p><p>Пожалуй, самый очевидный вариант, который сразу же приходит в голову.</p><p></p><p>Никто не запрещает запустить на AP Wireshark или tcpdump и захватывать трафик конкретного клиента либо всех клиентских устройств сразу до момента перенаправления трафика в Tor.</p><p></p><p>Возможности для захвата здесь ограничены лишь уровнем защищенности конечного устройства, пользователя и приложения. Тема достаточно известная, поэтому подробно на ней останавливаться не будем.</p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/Wireshark.jpg" alt="" class="fr-fic fr-dii fr-draggable " style="" />Захват трафика по MAC-адресу на AP</p><p></p><p></p><p><span style="font-size: 18px"><strong>Анализ сетевой активности приложений</strong></span></p><p></p><p>В ИБ часто возникает задача проанализировать сетевую активность определенного приложения. Например, у нас имеется мобильное приложение, которое при работе использует несколько известных нам хостов. Мы хотим методом черного ящика проверить, не ведет ли приложение какие-либо скрытые передачи на дополнительные удаленные хосты.</p><p></p><p>Причем на самом устройстве мы это сделать не можем — нет соответствующих прав на уровне ОС. Зато у нас есть AP, находящаяся полностью под контролем и с максимальными правами! Ее использование будет практически аналогично анализу трафика на целевом устройстве.</p><p></p><p></p><p>Попробуем исследовать работоспособность приложения без скрытого доступа к каким-либо дополнительным ресурсам. Заранее мы отключили все остальные источники побочного трафика, генерируемого из других приложений. Скрытые передачи в данном случае не обязательно должны быть вредоносными — это могут быть механизмы антиспама (контроль того, что API приложения действительно используется с мобильного устройства), рекламы и так далее. Мы можем пропускать трафик методом белого ящика — запрещено все, что не разрешено:</p><p></p><p>$ sudo iptables -t nat -F</p><p>$ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST1> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040</p><p>$ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST2> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040</p><p>$ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST3> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040</p><p></p><p>Таким образом мы разрешили попадание в Tor только трафика с трех хостов определенного устройства, весь остальной трафик не покинет</p><p>интерфейса wlan0, а следовательно, ничего скрытого передано не будет.</p><p></p><p>Останется лишь убедиться, что в работе приложения не появилось дефектов.</p><p></p><p><span style="font-size: 18px"><strong>Блокировка определенных хостов</strong></span></p><p></p><p>В данном случае неплохим решением было бы выдавать сообщение о том, что хост заблокирован в нашей сети. Для этого можно поднять веб-сервер и переадресовывать клиентов с заблокированного ресурса на страницу с сообщением. Для блокировки ресурсов по HTTPS понадобится как минимум сгенерировать самоподписанный сертификат и настроить веб-сервер на работу по протоколу HTTPS. Блокировку можно произвести прямо в таблице NAT:</p><p></p><p>$ sudo iptables -t nat -I PREROUTING 1 -i wlan0 -p tcp -d m.vk.com --dport 80 -j DNAT --to-destination 192.168.1.82:80</p><p>$ sudo iptables -t nat -I PREROUTING 1 -i wlan0 -p tcp -d m.vk.com --dport 443 -j DNAT --to-destination 192.168.1.82:443</p><p></p><p><img src="https://xakep.ru/wp-content/uploads/2018/06/175413/Banned.jpg" alt="" class="fr-fic fr-dii fr-draggable " style="" /></p><p>Заблокированный в рамках сети AP хост</p><p></p><p></p><p><span style="font-size: 18px"><strong>Блокировка рекламных сетей с целью повышения анонимности</strong></span></p><p></p><p>Уже давно известно, что скрипты рекламных сетей стараются скрытно собрать максимум возможной информации о посетителях сайтов, представляя таким образом дополнительную угрозу анонимности. К счастью, на собственной AP мы можем по умолчанию заблокировать для клиентов связь рекламных скриптов с рекламными сетями. Для этого предлагаю вернуться к утилите dnsmasq: в качестве одной из опций своего конфига утилита предлагает дополнительный источник DNS-информации (наравне с /etc/hosts). Изменим файл с конфигом Dnsmasq (./dnsmasq.conf):</p><p></p><p>## Дополнительный источник DNS-информации, содержащий рекламные сети</p><p>addn-hosts=/full/path/to/my_dns_hosts.txt</p><p></p><p>Содержимое файла имеет точно такой же формат, как и /etc/hosts, поэтому с его наполнением проблем быть не должно. Источник блокируемых ресурсов можно выбрать самостоятельно из <a href="https://github.com/StevenBlack/hosts" target="_blank">репозитория на GitHub</a> — там можно найти hosts-файлы под блокировки различных масштабов (в самой большой сборке было около 71 тысячи различных хостов).</p><p></p><p><span style="font-size: 22px"><strong>Заключение</strong></span></p><p></p><p>Вот таким незамысловатым способом мы создали точку доступа, весь трафик которой «прячется» за Tor’ом, а в качестве приятного бонуса мы получили возможность «жонглировать» всем проходящим через нее трафиком в собственных целях — как добрых, так и не очень.</p></blockquote><p></p>
[QUOTE="X-Shar, post: 145167, member: 1"] Хе у меня достаточно мощный роутер, решил сделать "публичный WiFi", который доступен в пределах моего двора. Да, знаю многие заморачиваются (да, я и сам раньше) защитой своей точки, что-бы никто неподключился. Но мне стало интересно, сколько подключится ко мне. Да все желающие могут бесплатно подцепиться.Dmeh-Smeh-Smeh!!!sholoh iti'm crazy Но потом мне стало интересно, а на сколько безопасно это в РФ ? Ведь чисто теоретически, если кто-то подключится и начнёт, каким-то криминалом заниматься, по хорошему могут потом ко мне прийти.Не въехал!!!i'm crazysholoh it По началу, думал весь трафик загнать через прокси, но сегодня даже случайно попалась статейка на Хакере (Пока-что непробовал), загнать весь трафик в ТОР. [CODE]https://xakep.ru/2018/06/28/wi-fi-tor-proxy/[/CODE] В этой статье рассмотрим, как конфигурировать точку доступа Wi-Fi с автоматической анонимизацией всего исходящего трафика через сеть Tor, а также взглянем на некоторые полезные примеры ее применения как для простого пользователя, так и для исследователя безопасности. [SIZE=6][B]Зачем нам Tor AP?[/B][/SIZE] В последнее время на фоне массовых блокировок IP-адресов все меньше людей продолжает сомневаться, нужны ли механизмы проксирования и анонимизации в их повседневной жизни. Бесплатных VPN-клиентов появляется все больше, но, как [URL='https://blog.csiro.au/tinker-torrentor-streamer-spy-vpn-privacy-alert/']показывает практика[/URL], далеко не всем из них безопасно полностью доверять: то качество реализации хромает, то [URL='https://torrentfreak.com/which-vpn-services-take-your-anonymity-seriously-2014-edition-140315/']разработчики не слишком добросовестны[/URL]. Как известно, Tor «из коробки» предоставляет как механизм проксирования (читай: обхода блокировок), так и продвинутый механизм анонимности. Вся связь между узлами в сети Tor шифруется, а соединение с целевым узлом устанавливается посредством как минимум трех случайно выбранных узлов. Взяв за основу Tor и автоматизировав все процессы, происходящие при подключении к точке доступа (далее — AP), в результате мы получим весьма интересный инструмент, польза от которого отнюдь не исчерпывается обходом блокировок. [SIZE=6][B]Первичная настройка AP[/B][/SIZE] Для создания точки нам понадобится какое-нибудь устройство, на котором можно запустить операционку (виртуалка тоже вполне сгодится). В качестве операционной системы, управляющей точкой, подойдет любой Linux-дистрибутив. Конкретно я буду использовать Debian-based. Для превращения всего этого в AP понадобится Wi-Fi-адаптер. Если все это выполнено, можно приступать к первичной настройке. Итак, в первую очередь подключаем Wi-Fi-адаптер. Вывод ip addr show wlan0 (wlan0 — имя интерфейса адаптера, может быть другим) должен быть такой, как на скрине. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/Interface_Info.png[/IMG] Детали сетевого интерфейса адаптера На данный момент сетевой интерфейс не сконфигурирован. Первым делом активируем Wi-Fi, освободив его от влияния вездесущего Network Manager’а: $ sudo nmcli radio wifi off $ sudo rfkill unblock wlan Теперь выберем и назначим интерфейсу адаптера IP-адрес, все адреса из маски которого будут назначаться в дальнейшем клиентским устройствам: # ip addr add 10.0.0.1/24 dev wlan0 Третьим пунктом мы переведем адаптер в режим AP: делать это мы будем одним из наиболее распространенных способов — с помощью утилиты [URL='https://en.wikipedia.org/wiki/Hostapd']hostapd[/URL], позволяющей сконфигурировать программную точку доступа. Hostapd присутствует в большинстве штатных репозиториев. $ sudo apt-get install hostapd Далее нужно создать конфиг для hostapd (./hostapd.conf): ## Имя интерфейса адаптера interface=wlan0 ## SSID AP ssid=TorNet ## Автоматический выбор канала channel=1 ## Разрешить подключение со всех MAC-адресов, которые не запрещены macaddr_acl=0 ## Файл с запрещенными для подключения MAC-адресами deny_mac_file=./denied_macs ## Логировать все модули (IEEE, WPA, IAPP и так далее) logger_syslog=-1 ## Логировать с модулей только informational messages logger_syslog_level=2 ## Режим: IEEE 802.11g hw_mode=g ## Включить аутентификацию WPA/2 wpa=2 ## Пароль WPA для доступа к точке wpa_passphrase=xxxxxxxx ## Принимаемые алгоритмы управления ключами wpa_key_mgmt=WPA-PSK WPA-EAP WPA-PSK-SHA256 WPA-EAP-SHA256 После этого уже можно будет запустить hostapd для перевода Wi-Fi-адаптера в режим AP с описанной конфигурацией: # hostapd ./hostapd.conf [SIZE=5][B]Hostapd и Network Manager[/B][/SIZE] В некоторых версиях hostapd присутствует баг, связанный с блокировкой интерфейса Network Manager’ом и не позволяющий запускать AP. В результате запуска hostapd возникает следующая ошибка: Interface wlan0 wasn't started Подробно баг и возможный воркэраунд описан [URL='https://bugs.launchpad.net/ubuntu/+source/wpa/+bug/1289047']здесь[/URL]. Однако по понятным причинам подключиться к точке привычным образом пока будет невозможно. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/WiFi_err.jpg[/IMG] Попытка подключения к AP без DHCP Для устранения этих причин понадобится другая утилита — dnsmasq, которая позволит развернуть службы DHCP и DNS. DHCP сейчас представляет больший интерес. Ставим dnsmasq из стандартного репозитория: $ sudo apt-get install dnsmasq Dnsmasq также нуждается в предварительной настройке (./dnsmasq.conf): ## Интерфейс для прослушки DHCP-запросов interface=wlan0 ## Диапазон выдаваемых клиентам адресов и срок действия ## (должны подходить под маску сетевого шлюза адаптера!) dhcp-range=10.0.0.10,10.0.0.250,8h ## Шлюз по умолчанию dhcp-option=3,10.0.0.1 ## DNS-шлюз dhcp-option=6,10.0.0.1 ## Логировать DNS-запросы log-queries ## Логировать DHCP-запросы log-dhcp Запускаем DHCP-сервер в составе dnsmasq: # dnsmasq -C ./dnsmasq.conf Теперь подключение к AP становится возможным с любых устройств. Чтобы наша точка наконец заработала в обычном режиме, осталось ответить на главный вопрос: откуда точка будет брать доступ в интернет. Для получения ответа предлагаю взглянуть на схему ниже. Большинство читателей, так или иначе соприкасавшихся с настройкой сетей, заметят на нем достаточно привычную схему связывания сетей. Именно этот способ мы и будем использовать. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/Interface_Fwd.png[/IMG] Схема доступа в интернет с AP Как видно из рисунка, для доступа в интернет понадобится еще один сетевой интерфейс. Это может быть как Ethernet-подключение (eth0), так и второй Wi-Fi-модуль (wlan1). Например, при создании AP из виртуальной машины такой интерфейс создается автоматически (eth0). Сейчас у нас готово все, за исключением связи между интерфейсами (обозначенной красной линией). Эта связь представляет собой пересылку пакетов с одного интерфейса на другой. Для тестирования работоспособности нашей AP пока сгодится и обычный механизм NAT: $ sudo sysctl -w net.ipv4.ip_forward=1 $ sudo iptables -P FORWARD ACCEPT $ sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE На данном этапе AP заработала в обычном режиме: принимает клиентов и предоставляет им доступ в интернет с IP-адреса, выданного нам нашим провайдером. Это, конечно же, замечательно, но для наших целей недостаточно. Поэтому теперь настало время перенаправления всего клиентского трафика в Tor. [SIZE=6][B]Вторичная настройка AP[/B][/SIZE] Перед перенаправлением всего трафика AP в Tor необходимо установить сам Tor: $ sudo apt-get install tor И настроить его как Transparent Proxy с помощью конфигурационного файла (расположенного здесь: /etc/tor/torrc): ## Включаем доступ к onion-ресурсам VirtualAddrNetwork 192.168.100.0/10 AutomapHostsOnResolve 1 ## Порт для прозрачного проксирования в рамках нашей сети TransPort 10.0.0.1:9040 ## Порт для анонимного резолвинга имен хостов DNSPort 10.0.0.1:53 Этих настроек для наших нужд вполне достаточно, поэтому можем запускать Tor как сервис: $ sudo service tor start На текущий момент вывод netstat -tunapl должен быть примерно таким, как на скрине ниже. Мы видим все запущенные нами сервисы на текущий момент. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/Netstat_AP.png[/IMG] Открытые порты на AP Если сейчас подключиться к AP, то мы по-прежнему будем выходить в интернет с домашнего IP, поэтому осталось всего-навсего включить проксирование через Tor с помощью iptables: # Перенаправление всего TCP-трафика $ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -j DNAT --to-destination 10.0.0.1:9040 # ...и DNS-трафика в отдельности $ sudo iptables -t nat -A PREROUTING -i wlan0 -p udp --dport 53 -j DNAT --to-destination 10.0.0.1:53 Также нужно удалить предыдущее правило, включающее маскарад между сетевыми интерфейсами (NAT): $ sudo iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE Двумя новыми правилами мы добились следующего: подмены пункта назначения всего TCP-трафика в момент появления пакетов на сетевом интерфейсе Wi-Fi-адаптера и редиректа DNS-запросов (протокол UDP). Подмененный пункт назначения — запущенный сервис Tor с Transparent Proxy. Стоит обратить внимание, что на этих двух правилах настройка iptables завершается. Теперь можно убедиться в работоспособности настроенной Tor AP, посетив с любого подключенного к ней устройства 2ip.ru. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/AP_Tor_Proof.jpg[/IMG] PoC [SIZE=5][B]RPi как AP[/B][/SIZE] «Малинка» отлично подходит в качестве управляющего устройства AP: всего несколько дополнительных действий с автоматической разверткой конфигурации при старте системы (systemd, initV), и останется всего лишь воткнуть USB-кабель в «розетку» для включения точки в любой нужный момент. [SIZE=6][B]Практическое применение AP[/B][/SIZE] Имея собственную AP, с которой соединяются клиентские устройства, мы по умолчанию получаем возможность наблюдения за всем трафиком своей сети, как пассивного, так и активного. Перенаправление в Tor — это лишь один из вариантов применения AP в прикладных задачах. [SIZE=5][B]Анализ трафика клиентских устройств[/B][/SIZE] Пожалуй, самый очевидный вариант, который сразу же приходит в голову. Никто не запрещает запустить на AP Wireshark или tcpdump и захватывать трафик конкретного клиента либо всех клиентских устройств сразу до момента перенаправления трафика в Tor. Возможности для захвата здесь ограничены лишь уровнем защищенности конечного устройства, пользователя и приложения. Тема достаточно известная, поэтому подробно на ней останавливаться не будем. [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/Wireshark.jpg[/IMG]Захват трафика по MAC-адресу на AP [SIZE=5][B]Анализ сетевой активности приложений[/B][/SIZE] В ИБ часто возникает задача проанализировать сетевую активность определенного приложения. Например, у нас имеется мобильное приложение, которое при работе использует несколько известных нам хостов. Мы хотим методом черного ящика проверить, не ведет ли приложение какие-либо скрытые передачи на дополнительные удаленные хосты. Причем на самом устройстве мы это сделать не можем — нет соответствующих прав на уровне ОС. Зато у нас есть AP, находящаяся полностью под контролем и с максимальными правами! Ее использование будет практически аналогично анализу трафика на целевом устройстве. Попробуем исследовать работоспособность приложения без скрытого доступа к каким-либо дополнительным ресурсам. Заранее мы отключили все остальные источники побочного трафика, генерируемого из других приложений. Скрытые передачи в данном случае не обязательно должны быть вредоносными — это могут быть механизмы антиспама (контроль того, что API приложения действительно используется с мобильного устройства), рекламы и так далее. Мы можем пропускать трафик методом белого ящика — запрещено все, что не разрешено: $ sudo iptables -t nat -F $ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST1> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040 $ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST2> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040 $ sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp -d <APP_HOST3> -m mac --mac-source <DEVICE_MAC> --dport 443 -j DNAT --to-destination 10.0.0.1:9040 Таким образом мы разрешили попадание в Tor только трафика с трех хостов определенного устройства, весь остальной трафик не покинет интерфейса wlan0, а следовательно, ничего скрытого передано не будет. Останется лишь убедиться, что в работе приложения не появилось дефектов. [SIZE=5][B]Блокировка определенных хостов[/B][/SIZE] В данном случае неплохим решением было бы выдавать сообщение о том, что хост заблокирован в нашей сети. Для этого можно поднять веб-сервер и переадресовывать клиентов с заблокированного ресурса на страницу с сообщением. Для блокировки ресурсов по HTTPS понадобится как минимум сгенерировать самоподписанный сертификат и настроить веб-сервер на работу по протоколу HTTPS. Блокировку можно произвести прямо в таблице NAT: $ sudo iptables -t nat -I PREROUTING 1 -i wlan0 -p tcp -d m.vk.com --dport 80 -j DNAT --to-destination 192.168.1.82:80 $ sudo iptables -t nat -I PREROUTING 1 -i wlan0 -p tcp -d m.vk.com --dport 443 -j DNAT --to-destination 192.168.1.82:443 [IMG]https://xakep.ru/wp-content/uploads/2018/06/175413/Banned.jpg[/IMG] Заблокированный в рамках сети AP хост [SIZE=5][B]Блокировка рекламных сетей с целью повышения анонимности[/B][/SIZE] Уже давно известно, что скрипты рекламных сетей стараются скрытно собрать максимум возможной информации о посетителях сайтов, представляя таким образом дополнительную угрозу анонимности. К счастью, на собственной AP мы можем по умолчанию заблокировать для клиентов связь рекламных скриптов с рекламными сетями. Для этого предлагаю вернуться к утилите dnsmasq: в качестве одной из опций своего конфига утилита предлагает дополнительный источник DNS-информации (наравне с /etc/hosts). Изменим файл с конфигом Dnsmasq (./dnsmasq.conf): ## Дополнительный источник DNS-информации, содержащий рекламные сети addn-hosts=/full/path/to/my_dns_hosts.txt Содержимое файла имеет точно такой же формат, как и /etc/hosts, поэтому с его наполнением проблем быть не должно. Источник блокируемых ресурсов можно выбрать самостоятельно из [URL='https://github.com/StevenBlack/hosts']репозитория на GitHub[/URL] — там можно найти hosts-файлы под блокировки различных масштабов (в самой большой сборке было около 71 тысячи различных хостов). [SIZE=6][B]Заключение[/B][/SIZE] Вот таким незамысловатым способом мы создали точку доступа, весь трафик которой «прячется» за Tor’ом, а в качестве приятного бонуса мы получили возможность «жонглировать» всем проходящим через нее трафиком в собственных целях — как добрых, так и не очень. [/QUOTE]
Проверка
Ответ
Форум
Безопасность системы
Защита приватной информации
Сделал публичный WiFi
Верх
Низ