
Анализатор Bro, который обнаруживает протокол QUIC от Google.
Этот анализатор может разбирать и обнаруживать реализацию QUIC от Google (для простоты называемую здесь GQUIC), используя сетевой формат, описанный по адресу:
https://www.chromium.org/quic.
Версией GQUIC, используемой Chrome на момент написания этого анализатора, была Q039, при этом некоторые серверы Google (и, возможно, канареечные сборки Chrome) также могли использовать Q043. В ходе тестирования этот анализатор смог обнаруживать обе эти версии.
Описанный в документах GQUIC сетевой формат на тот момент (4–5 мая 2018 года) также, похоже, расходился с фактическими реализациями, используемыми в реальном мире.
Кроме того, регулярно предпринимаются усилия по переводу GQUIC на черновой стандарт IETF для QUIC, описанный по адресам:
https://github.com/quicwg/base-drafts https://datatracker.ietf.org/wg/quic/documents/
Этот черновик существенно отличается от реализаций GQUIC, с которыми тестировался данный анализатор, а его сетевой формат к тому же недавно изменился.
Таким образом, если этот анализатор GQUIC не будет обновляться в будущем, он вряд ли продолжит работать с последующими эволюциями протокола QUIC.
Через zkg <https://docs.zeek.org/projects/package-manager/en/stable>_::
zkg install corelight/zeek-quic
В противном случае вам придётся собрать и установить его самостоятельно (при условии, что находится в вашем )::
zeek-configPATH./configure
make
make install
По умолчанию анализатор просто определяет, похоже ли UDP-соединение на протокол QUIC, добавляет строку "guic" в поле "service" журнала conn.log и затем прекращает разбор.
Если вы хотите написать собственный скрипт, обрабатывающий другие события, предоставляемые анализатором, вы можете указать анализатору продолжать разбор соединения даже после подтверждения протокола::
redef GQUIC::skip_after_confirm = F;
Предоставляемые события могут давать общую информацию о типе пакета (Regular Packet, Version Negotiation или Public Reset), а также о содержимом Public Header (например, Packet Number, QUIC Version, Connection ID или Diversification Nonce).
Инструменты: https://github.com/quicwg/base-drafts/wiki/Tools
Предыдущая работа над анализатором QUIC от Mike Dopheide: https://github.com/dopheide-esnet/bro-quic