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

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

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

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

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

Категории

Все категории
Loading categories
stenographer — Stenographer — это решение для захвата пакетов, которое быстро сохраняет все пакеты на диск, а затем предоставляет простой и быстрый доступ к подмножествам этих пакетов. Обсуждения и анонсы: stenographer@googlegroups.com | Kitploit
Инструменты/GitHubGitHub/google/stenographer
Сниффинг и анализ пакетовСетевая криминалистикаФорензикаСетевая безопасностьОбнаружение ВторженийРеагирование на ИнцидентыArchived
GitHubgoogle/stenographer

stenographer

Stenographer — это решение для захвата пакетов, которое быстро сохраняет все пакеты на диск, а затем предоставляет простой и быстрый доступ к подмножествам этих пакетов. Обсуждения и анонсы: [email protected]

Репозиторий
1.8k23385 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

Stenographer

Обзор

Stenographer — это утилита для захвата полного трафика, предназначенная для буферизации пакетов на диск в целях обнаружения вторжений и реагирования на инциденты. Она обеспечивает высокопроизводительную реализацию записи пакетов из сетевого интерфейса на диск, управляет удалением этих файлов по мере заполнения диска и предоставляет методы быстрого и простого чтения определённых наборов пакетов.

Она предназначена для:

  • Записи пакетов на диск с очень высокой скоростью (~10 Гбит/с на многоядерных машинах с несколькими дисками)
  • Хранения максимально возможной истории (управление использованием диска, увеличение длительности хранения при снижении трафика и удаление самых старых пакетов при достижении лимитов диска)
  • Чтения очень небольшой доли (<1%) пакетов с диска в соответствии с потребностями аналитика

Она НЕ предназначена для:

  • Сложной обработки пакетов (сборка TCP-потоков и т.д.)

  • Она быстра именно потому, что этого не делает. Даже при минимальной однопроходной обработке пакетов, которую мы выполняем, обработка ~1 Гбит/с только для индексации может занимать >75% одного ядра.

  • Обработка данных путём чтения их с диска также не работает: см. следующий пункт.

  • Чтения больших объёмов пакетов (> 1% записанных пакетов)

  • Ключевая концепция здесь в том, что чтение с диска конкурирует с записью... Вы можете писать с использованием 90% скорости диска, но это оставляет только 10% времени диска для чтения. Кроме того, мы записываем сильно последовательные данные, с которыми диски справляются очень быстро, а читаем, как правило, разреженные данные с множеством операций поиска, которые диски выполняют медленно.

Для дальнейшего изучения ознакомьтесь с DESIGN.md — обсуждением архитектуры stenographer, или прочитайте INSTALL.md — инструкцию по установке stenographer на машину.

Запросы

Язык запросов

Пользователь запрашивает пакеты у stenographer с помощью очень простого языка запросов. Этот язык является простым подмножеством BPF и включает следующие примитивы:

root@kitploit:~
host 8.8.8.8          # Single IP address (hostnames not allowed)
net 1.0.0.0/8         # Network with CIDR
net 1.0.0.0 mask 255.255.255.0  # Network with mask
port 80               # Port number (UDP or TCP)
ip proto 6            # IP protocol number 6
icmp                  # equivalent to 'ip proto 1'
tcp                   # equivalent to 'ip proto 6'
udp                   # equivalent to 'ip proto 17'

# Stenographer-specific time additions:
before 2012-11-03T11:05:00Z      # Packets before a specific time (UTC)
after 2012-11-03T11:05:00-07:00  # Packets after a specific time (with TZ)
before 45m ago        # Packets before a relative time
after 3h ago         # Packets after a relative time

ПРИМЕЧАНИЕ: Относительное время должно задаваться целыми значениями часов или минут, как показано выше.

Примитивы можно комбинировать с помощью and/&& и or/||, которые имеют одинаковый приоритет и вычисляются слева направо. Также можно использовать круглые скобки для группировки.

root@kitploit:~
(udp and port 514) or (tcp and port 8080)

CLI stenoread

Скрипт командной строки stenoread автоматизирует извлечение пакетов из Stenographer и предоставляет их аналитику в удобном формате. Он запрашивает у stenographer сырые пакеты, а затем пропускает их через tcpdump для обеспечения более полнофункционального форматирования и фильтрации. Первый аргумент stenoread — это запрос stenographer (см. раздел «Язык запросов» выше). Все остальные аргументы передаются в tcpdump. Например:

root@kitploit:~
# Request all packets from IP 1.2.3.4 port 6543, then do extra filtering by
# TCP flag, which typical stenographer does not support.
$ stenoread 'host 1.2.3.4 and port 6543' 'tcp[tcpflags] & tcp-push != 0'

# Request packets on port 8765, disabling IP resolution (-n) and showing
# link-level headers (-e) when printing them out.
$ stenoread 'port 8765' -n -e

# Request packets for any IPs in the range 1.1.1.0-1.1.1.255, writing them
# out to a local PCAP file so they can be opened in Wireshark.
$ stenoread 'net 1.1.1.0/24' -w /tmp/output_for_wireshark.pcap

Загрузка

Чтобы скачать исходный код, установите Go локально, затем выполните:

root@kitploit:~
$ go get github.com/google/stenographer

Go позаботится о загрузке и установке всех библиотек Go, от которых зависит stenographer. Для сборки stenotype перейдите в каталог stenotype и выполните make. Возможно, вам потребуется установить следующие пакеты Ubuntu (или их аналоги в других дистрибутивах Linux):

  • libaio-dev
  • libleveldb-dev
  • libsnappy-dev
  • g++
  • libcap2-bin
  • libseccomp-dev

Обязательное уведомление

Это не официальный продукт Google (ни экспериментальный, ни какой-либо другой), это просто код, который, как оказалось, принадлежит Google.

Этот код не предназначен (и не используется) для слежки за пользователями Google. Его цель — повысить безопасность наших сетей, расширив возможности внутреннего мониторинга.

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