Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/mandatoryprogrammer/sonar.js
РазведкаЭксплуатацияЭксплуатация веб-приложенийСбор информацииТестирование на ПроникновениеRed Teaming
GitHubmandatoryprogrammer/sonar.js

sonar.js

Фреймворк для идентификации и запуска эксплойтов против хостов внутренней сети. Работает через перечисление IP-адресов с помощью WebRTC в сочетании с WebSockets и фингерпринтингом внешних ресурсов.

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
sonar.js — Фреймворк для идентификации и запуска эксплойтов против хостов внутренней сети. Работает через перечисление IP-адресов с помощью WebRTC в сочетании с WebSockets и фингерпринтингом внешних ресурсов. | Kitploit
Репозиторий
5527610 лет назадПроверено Kitploit

sonar.js

Фреймворк для идентификации и запуска эксплойтов против хостов внутренней сети. Работает через перечисление IP-адресов через WebRTC, сканирование хостов через WebSocket и фингерпринтинг внешних ресурсов.

Как это работает?

После загрузки полезной нагрузки sonar.js в современном веб-браузере происходит следующее:

  • sonar.js использует WebRTC для перечисления внутренних IP-адресов пользователя, загрузившего нагрузку.
  • Затем sonar.js пытается найти живые хосты во внутренней сети через WebSocket.
  • Если найден живой хост, sonar.js начинает попытку идентифицировать хост, подключаясь к нему через <img src="https://raw.githubusercontent.com/mandatoryprogrammer/sonar.js/HEAD/x"> и <link rel="stylesheet" type="text/css" href="x"> и перехватывая событие onload. Если ожидаемые ресурсы загружаются успешно, запускается заданный JavaScript-колбэк для выполнения предоставленного пользователем эксплойта.

Фингерпринты

sonar.js работает на основе базы данных фингерпринтов. Фингерпринт — это просто список известных ресурсов на устройстве, к которым можно подключиться и обнаружить через onload. Примеры включают изображения, CSS-стили и даже внешний JavaScript.

Пример базы данных фингерпринтов показан ниже:

root@kitploit:~
var fingerprints = [
    {
        'name': "ASUS RT-N66U",
        'resources': ["/images/New_ui/asustitle.png","/images/loading.gif","/images/alertImg.png","/images/New_ui/networkmap/line_one.png","/images/New_ui/networkmap/lock.png","/images/New_ui/networkmap/line_two.png","/index_style.css","/form_style.css","/NM_style.css","/other.css"],
        'callback': function( ip ) {
            // Вставить эксплойт сюда
        },
    },
    {
        'name': "Linksys WRT54G",
        'resources': ["/UILinksys.gif","/UI_10.gif","/UI_07.gif","/UI_06.gif","/UI_03.gif","/UI_02.gif","/UI_Cisco.gif","/style.css"],
        'callback': function( ip ) {
            // Вставить эксплойт сюда
        },
    },
]

Приведённая выше база данных содержит фингерпринты для двух устройств: WiFi-роутера ASUS RT-N66U и WiFi-роутера Linksys WRT54G.

Каждая запись базы данных имеет следующее:

  • name: Поле для идентификации устройства, для которого предназначен фингерпринт. Это может быть что-то вроде принтер HP Officejet 4500 или роутер Linksys WRT54G.
  • resources: Массив относительных ссылок на ресурсы, такие как CSS-стили, изображения или даже JavaScript-файлы. Если ожидается, что эти ресурсы находятся на нестандартном порту, например 8080, укажите ресурс с портом: :8080/unique.css. Имейте в виду, что использование внешних ресурсов с активным содержимым, например JavaScript, опасно, так как может нарушить обычный ход выполнения.
  • callback: Если все эти ресурсы найдены на перечисленном хосте, вызывается функция callback с одним аргументом — IP-адресом устройства.

Создавая собственные фингерпринты, вы можете построить пользовательские эксплойты, которые будут запускаться против внутренних устройств после их обнаружения sonar.js. Распространённые эксплойты включают такие вещи, как межсайтовая подделка запроса (CSRF), межсайтовый скриптинг (XSS) и т.д. Идея в том, что вы можете использовать эти уязвимости для изменения конфигураций DNS роутера, выгрузки файлов с внутреннего файлового сервера и многого другого.

Для более простого способа создания фингерпринтов см. следующее расширение Chrome, которое автоматически генерирует код шаблона фингерпринта для текущей страницы:

Нажмите здесь, чтобы установить расширение Chrome

sonar.js генератор фингерпринтов

Что можно сделать с помощью sonar.js?

Используя sonar.js, команда пентестеров может создавать веб-эксплойты для таких вещей, как внутренние серверы логирования, роутеры, принтеры, VOIP-телефоны и многое другое. Поскольку внутренние сети часто менее защищены, такие атаки, как CSRF и XSS, могут быть мощными для захвата конфигураций устройств во внутренней сети хоста. Мы уже упоминали, что всё это можно сделать с веб-страницы в Интернете?

Помогите нам пополнить нашу базу данных!

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

Скачать инструмент