PacketWhisper Exfiltration Toolset
Life-HackPacketWhisper–тайная передача данных и обход идентификации при использовании запросов сервера доменных имён (DNS) и текстовой стеганографии без необходимости контроля серверов DNS или доменов;
Традиционная DNS-фильтрация зависит от:
туннелирование DNS;
скрытие данных в полях DNS-запросов;
или закодированная / зашифрованная полезная информация (пакета)/или информационное наполнение, которая разбита и используется в качестве поддоменов в DNS-запросе.
Все эти методы требуют, чтобы злоумышленник контролировал домен и/или ассоциированный DNS-сервер имен для получения данных, что приводит к его идентификации (представлений в базах данных). Эти подходы также уязвимы для черных списков DNS-имен (общий) и списка разрешённых приложений (чаще всего). Другая проблема заключается в том, что аналитики кибербезопасности знакомы с этими методами, и системы управления информационной безопасностью часто обнаруживают и предупреждают их. PacketWhisper преодолевает эти ограничения.
Что делать, если данные могут быть переданы с использованием собственных белых серверов DNS, без связующих их систем, когда-либо напрямую связанных друг с другом или с общей конечной точкой? Даже если в сети использовались данные «разрешённых приложений» при блокировки фильтрации данных?
Как это работает
Чтобы все это сработало, PacketWhisper объединяет DNS-запросы с текстовой стеганографией. Используя инструмент Cloakify, он преобразует полезную информацию в список строк FQDN. Затем PacketWhisper использует список полноценных доменных имен для создания последовательных DNS-запросов, передавая полезную информацию через сеть, с данными, скрытыми на виду, и без двух систем, когда-либо непосредственно подключающихся друг к другу или к общей конечной точке. Шифры, используемые PacketWhisper, обеспечивают множественные уровни обмана, чтобы избежать генерации предупреждений, а также вводить в заблуждение пытавшихся анализировать трафик.
Чтобы получать данные, вы захватываете сетевой трафик, содержащий DNS-запросы, используя любой метод, наиболее удобный для вас. Затем вы загружаете захваченный файл PCAP в PacketWhisper, который извлекает полезную информацию из файла и запихивает его в исходную форму.
DNS - привлекательный протокол для использования, хотя это относительно медленный способ передачи данных, DNS почти всегда разрешен в сети, даже в наиболее «чувствительных» сетях.
Важное примечание. Мы используем DNS-запросы для передачи данных. Фактически PacketWhisper даже не рассматривает ответы DNS. Это расширяет наши варианты использования и подчеркивает тот факт, что нам не нужно контролировать домен, для которого мы запрашиваем, и не нужно контролировать DNS-сервер имен, обрабатывающий DNS-запросы.
Ограничения / полезные примечания
Убедитесь, что сетевого захвата– сохраняет dump в нужный формат. Если вы использовали tcpdump или WinDump для захвата трафика, все будет в порядке. Однако Wireshark предлагает широкий выбор опций «Сохранить как» для сохранения захваченного трафика, вам надо tcpdump / PCAP.
Небезопасная схема шифрования. PacketWhisper не является безопасной схемой шифрования. Он уязвим для разных анализов. Используйте категорию уникальных случайных субдоменов полноценных доменных имен, чтобы добавить хаотичность и помочь снизить уровень обнаружения. Если требуется секретность полезной информации(пакета), обязательно зашифруйте полезную информацию перед использованием PacketWhisper для ее обработки.
Не метод передачи с высокой пропускной способностью. PacketWhisper полагается на DNS-запросы, которые основаны на протоколе пользовательских дейтаграмм, то есть порядок доставки (или даже успешной доставки) запроса не гарантируется. PacketWhisper по умолчанию добавляет небольшую (1/2-секундную) задержку между каждым запросом DNS. Вы можете безопасно передавать полезную информацию (пакета) со скоростью около 7,2 Кбит / ч (120 байт в минуту). Это основано на размере исходной полезной информации (пакета), а не на выходном файле Cloakify. Вы можете отказаться от задержки между запросами, что значительно ускорит передачу, но рискует увеличить сетевой шум и повредить полезную информацию.
И давайте посмотрим правде в глаза, если у вас доступны режимы передачи данных, отличные от DNS, вы можете просто использовать основной проект CloakifyToolset, чтобы скрыть файл на виду (возможно, превратить в полезную нагрузку информацию в список монстров PokemonGo с координатами LatLon) и использовать всю эту высокую пропускную способность, доступную через FTP / HTTP / и т. д. DNS чрезвычайно полезен, когда другие протоколы блокируются, но всегда помните о своих параметрах.
DNS это DNS. Различные операционные системы имеют разные политики кэширования DNS и т. д. Сети могут быть отключены, изолированы и т. д. PacketWhisper включает в себя быструю ручную проверку, чтобы определить, может ли сеть разрешать общие полноценные доменные имена, но DNS часто является беспорядочным. Помните старую мантру об устранении неполадок ИТ: «Это всегда DNS».
Требования
- Python 2.7.x (порт 3.6.x)
2. Для расшифровки полезных нагрузок/информации(пакета): tcpdump (входит в состав Linux и MacOS) или WinDump (Windows)
Перевод и адаптация текста осуществлен командой Life-Hack источник.