
Точно определяйте местоположение смартфонов с помощью социальной инженерии

Доступно на
Концепция Seeker проста: так же, как мы хостим фишинговые страницы для получения учётных данных, почему бы не разместить фальшивую страницу, которая запрашивает ваше местоположение, как это делают многие популярные сайты на основе геолокации. Читайте подробнее в блоге thewhiteh4t . Seeker размещает фальшивый сайт, который запрашивает разрешение на геолокацию, и если цель разрешает, мы можем получить:
Вместе с информацией о местоположении мы также получаем информацию об устройстве без каких-либо разрешений:
После получения вышеуказанной информации выполняется автоматическая разведка IP-адресов.
Этот инструмент является Proof of Concept и предназначен только для образовательных целей. Seeker показывает, какие данные может собрать о вас и ваших устройствах вредоносный сайт, и почему не следует переходить по случайным ссылкам и предоставлять критические разрешения, такие как геолокация и т.д.
Другие инструменты и сервисы предоставляют IP-геолокацию, которая абсолютно неточна и даёт не местоположение цели, а приблизительное местоположение провайдера.
Seeker использует HTML API, запрашивает разрешение на геолокацию и затем получает долготу и широту с помощью GPS-оборудования, присутствующего в устройстве, поэтому Seeker лучше всего работает со смартфонами. Если GPS-оборудование отсутствует (например, на ноутбуке), Seeker использует IP-геолокацию или ищет кэшированные координаты.
Обычно, если пользователь принимает разрешение на геолокацию, точность полученной информации составляет примерно 30 метров.
Точность зависит от множества факторов, которые вы можете или не можете контролировать, таких как:
Доступные шаблоны:
Создайте свой собственный шаблон! Инструкции по созданию шаблона описаны в этом how-to
Когда ваш шаблон будет готов, не забудьте предложить его сообществу через PR (pull request)
git clone https://github.com/thewhiteh4t/seeker.git
cd seeker/
chmod +x install.sh
./install.sh
sudo pacman -S seeker
docker pull thewhiteh4t/seeker
git clone https://github.com/thewhiteh4t/seeker.git
cd seeker/
python3 seeker.py
Для работы в туннельном режиме установите ngrok, выполнив эту команду в терминале:
brew install ngrok/ngrok/ngrok
ngrok http 8080
python3 seeker.py -h
usage: seeker.py [-h] [-k KML] [-p PORT] [-u] [-v] [-t TEMPLATE] [-d] [--telegram token:chatId] [--webhook WEBHOOK]
options:
-h, --help показать это справочное сообщение и выйти
-k KML, --kml KML имя KML-файла
-p PORT, --port PORT порт веб-сервера [По умолчанию: 8080]
-u, --update проверить обновления
-v, --version показать версию
-t TEMPLATE, --template TEMPLATE автоматически выбрать шаблон по заданному индексу
-d, --debugHTTP отключить автоматическое перенаправление http --> https для тестирования
(работает только для шаблонов, имеющих файл index_temp.html)
--telegram отправить информацию в Telegram-бота, укажите токен и chat-id
формат = token:chatId, разделённые двоеточием
--webhook отправлять события на вебхук для обработки
Примечание: конечная точка должна быть неаутентифицированной и принимать POST-запросы
#########################
# Переменные окружения #
#########################
Некоторые из указанных выше опций также могут быть включены через переменные окружения для упрощения развёртывания.
Другие параметры могут быть заданы через переменные окружения, чтобы избежать интерактивного режима.
Переменные:
DEBUG_HTTP То же, что -d, --debugHTTP
PORT То же, что -p, --port
TEMPLATE То же, что -t, --template
TITLE Указать заголовок группы или страницы
REDIRECT Указать URL для перенаправления пользователя после завершения
IMAGE Указать изображение; может быть удалённым (http или https) или локальным
Примечание: удалённое изображение будет загружено локально при запуске
DESC Указать описание элемента (группы или веб-страницы, в зависимости от шаблона)
SITENAME Указать название сайта
DISPLAY_URL Указать URL для отображения на странице
MEM_NUM Указать количество участников группы (пока только для Telegram)
ONLINE_NUM Указать количество онлайн-участников группы (пока только для Telegram)
TELEGRAM Указать токен и chat-id для отправки информации в Telegram-бота
формат = token:chatId, разделённые двоеточием
WEBHOOK Указать URL вебхука для пересылки событий
Примечание: конечная точка должна быть неаутентифицированной и принимать POST-запросы
##################
# Примеры использования #
##################
# Шаг 1: В первом терминале
$ python3 seeker.py
# Шаг 2: Во втором терминале запустите туннельный сервис, например ngrok
$ ./ngrok http 8080
###########
# Опции #
###########
# Вывод KML-файла для Google Earth
$ python3 seeker.py -k <filename>
# Использование пользовательского порта
$ python3 seeker.py -p 1337
$ ./ngrok http 1337
# Предварительный выбор конкретного шаблона
$ python3 seeker.py -t 1
################
# Использование Docker #
################
# Шаг 1
$ docker network create ngroknet
# Шаг 2
$ docker run --rm -it --net ngroknet --name seeker thewhiteh4t/seeker
# Шаг 3
$ docker run --rm -it --net ngroknet --name ngrok wernight/ngrok ngrok http seeker:8080
Используйте
ssh -R 80:localhost:8080 [email protected]
в качестве альтернативы ngrok
YouTube