Используйте библиотеку адресов Wireshark и Geolite для IP-позиционирования, визуализации распределения карт и углубленного анализа сообщений объектов.
Используйте библиотеку адресов Wireshark и Geolite для IP-позиционирования, визуализации распределения карт и углубленного анализа сообщений объектов.

1. Предисловие

Такие действия, как сканирование сети и DDoS-атаки, происходят часто, создавая серьезную угрозу сетевой безопасности. Чтобы лучше справляться с этими проблемами безопасности, нам необходимо провести углубленный анализ распределения и поведения источников сетевого трафика для выявления потенциальных угроз. В этой статье будет рассказано, как использовать библиотеку адресов MaxMind (включая GeoLite2 ASN, GeoLite2 City и GeoLite2 Country) в сочетании с Wireshark для анализа и анализа информации о географическом местоположении IP, а также как точно фильтровать нужные нам отчеты о функциях с помощью встроенной функции Wireshark 26. Географические поля и их отображение на карте.

2. Получите базу данных адресов MaxMind.

существоватьОфициальный сайт MaxMindПосле регистрации и входа в свой аккаунт,существоватьGeoIPАдресная база данныхСтраница загрузкискачать Адресная база сжатый пакет данных:

Для скачивания необходимо три основных файла:

Адресная база данных

описывать

GeoLite2 ASN

База данных адресов номеров AS

GeoLite2 City

База данных адресов городов

GeoLite2 Country

Национальная база данных адресов

Чтобы поддерживать относительно более точные данные базы данных адресов, рекомендуется регулярно обновлять базу данных адресов.

3. Настройте базу данных адресов и интерпретацию полей.

1. Настройте библиотеку адресов

Открыть Wireshark,существоватьредактировать -> Предпочтения -> Name Resolutionв опциях,давать возможностьIP geolocation,под редакцией Адресная база данных Оглавление,настраивать Адресная база Каталог, в котором хранятся данные:

Поместите три файла библиотеки адресов MaxMind в каталог:

2.Полевая интерпретация

Затем откройте сообщение по своему желанию. Если сообщение уже было открыто, нажмите «Обновить», чтобы перезагрузить сообщение:

В это время, если вы щелкнете по заголовку IP, содержащему IP-адрес внешней сети, вы увидите, что будет прикреплен ряд данных базы данных адресов GeoIP:

Значение полей следующее:

Поле

значение

GeoIP City

Город

GeoIP Contry

нация

GeoIP ISO Two Letter Country Code

Стандарт ИСО 3166-1две буквы, определяющиенациякод

GeoIP AS Number

ASЧисло

GeoIP AS Organization

Управлять организационной структурой, соответствующей номеру AS

GeoIP Latitude

широта

GeoIP Longitude

долгота

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

3. Применить как столбец

Чтобы более интуитивно видеть информацию о географическом местоположении IP, любое из вышеуказанных полей можно установить в виде столбцов. Например, мы фильтруем пакеты SYN, отправленные из источника:

Язык кода:bash
копировать
tcp.flags.syn==1 &&tcp.flags.ack==0

Тогда поставь Исходный IP-адреснациянастраиватьдля колонн(щелкните правой кнопкой мышинация Поле-->Применить как столбец):

Применив его в виде столбца, вы увидите, что страна, в которой находится исходный IP, отображается в крайнем правом углу, а остальные поля задаются аналогично.

4. Посмотреть наглядную карту распределения

1. Посмотреть распространение карты

существоватьСтатистика --> Конечные точки Вы можете видеть, что конечная точка IP по умолчанию отображает 6 полей, упомянутых выше, а именно страну, город, широту и долготу, номер AS и организацию номера AS:

В то же время вы также можете создать данные распределения карты, нажав на верхний левый угол. Карта --> Открыть в браузере (Открыть in browser)

И нажмите на каждый IP-адрес отдельно, чтобы просмотреть подробную информацию об атрибутах, номере AS, организации, в которой расположена AS, стране, объеме пакета и количестве переданных байтов:

2. Скопируйте в формат CSV/YAML/JSON.

такой жесуществоватьСтатистика --> Конечные точкиздесь,Поддерживает копирование этих данных в CSV, YAML и три формата:

CSV:

Язык кода:bash
копировать
Address,Packets,Bytes,Tx Packets,Tx Bytes,Rx Packets,Rx Bytes,Country,City,Latitude,Longitude,AS Number,AS Organization
35.195.38.218,1,68,0,0,1,68,"Belgium","Brussels",50.8534,4.347,396982,"GOOGLE-CLOUD-PLATFORM"
35.195.39.34,1,68,0,0,1,68,"Belgium","Brussels",50.8534,4.347,396982,"GOOGLE-CLOUD-PLATFORM"
35.195.39.63,1,68,0,0,1,68,"Belgium","Brussels",50.8534,4.347,396982,"GOOGLE-CLOUD-PLATFORM"

YAML:

Язык кода:yaml
копировать
---
-
 - Address: 44.204.2.151
 - Packets: 1
 - Bytes: 64
 - Tx Packets: 1
 - Tx Bytes: 64
 - Rx Packets: 0
 - Rx Bytes: 0
 - Country: United States
 - City: Ashburn
 - Latitude: 39.0469
 - Longitude: -77.4903
 - AS Number: 14618
 - AS Organization: AMAZON-AES

JSON:

Язык кода:json
копировать
[
    {
        "AS Number": "1680",
        "AS Organization": "Cellcom Fixed Line Communication L.P",
        "Address": "93.173.35.146",
        "Bytes": "68",
        "City": "Tel Aviv",
        "Country": "Israel",
        "Latitude": "32.0803",
        "Longitude": "34.7805",
        "Packets": "1",
        "Rx Bytes": "68",
        "Rx Packets": "1",
        "Tx Bytes": "0",
        "Tx Packets": "0"
    }
]

5. Фильтруйте сообщения по полям библиотеки адресов.

Wireshark предоставляет 26 полей для функции geoip, которые можно использовать в качестве условий фильтра или применять в качестве столбцов:

Поля фильтра

значение

ip.geoip.asnum

Номер IP AS источника/назначения

ip.geoip.city

Город, в котором расположен IP-адрес источника/назначения.

ip.geoip.country

IP-страна источника/назначения

ip.geoip.country_iso

Двухбуквенный код ISO страны, в которой расположен IP-адрес источника/назначения.

ip.geoip.dst_asnum

IP-номер AS назначения

ip.geoip.dst_city

Город, в котором находится IP назначения

ip.geoip.dst_country

Страна, в которой находится IP-адрес назначения.

ip.geoip.dst_country_iso

Двухбуквенный ISO-код страны, где находится IP-адрес назначения.

ip.geoip.dst_lat

IP-широта назначения

ip.geoip.dst_lon

Долгота IP-адреса назначения

ip.geoip.dst_org

Организация, в которой находится целевой IP AS.

ip.geoip.dst_summary

Сводная географическая информация об IP-адресе назначения

ip.geoip.lat

IP-широта источника/назначения

ip.geoip.lon

Долгота IP-адреса источника/назначения

ip.geoip.org

Организация, в которой расположена AS исходного/назначающего IP.

ip.geoip.src_asnum

Исходный IP-номер AS

ip.geoip.src_city

Город, в котором находится исходный IP

ip.geoip.src_country

Исходная IP-страна

ip.geoip.src_country_iso

Двухбуквенный ISO-код страны, где находится исходный IP-адрес.

ip.geoip.src_lat

Исходный IP-адрес Широта

ip.geoip.src_lon

Исходный IP-адрес долготы

ip.geoip.src_org

Организация, в которой находится исходная IP AS

ip.geoip.src_summary

Сводная географическая информация об исходном IP-адресе

Не сложно найти,ip.geoip.в фиксированном формате,Подключен сзади Поле Если сsrcНачало означает Исходный IP-адрес,кdstНачало означаетIP-адрес назначения,Ни то, ни другое не означает источник или место назначения.,Сразу после этогоIPИнформация об атрибутах географического местоположения:черезширота、ASЧисло、нация、Город、Организационная структура、Двухбуквенный код ISO и т. д.

Например, используйте страну, город и номер AS IP-адреса источника/назначения в качестве столбцов:

Для значений этих трех столбцов используются поля фильтра на самом деле три из 26 выше:

Поскольку мы можем использовать 26 полей по своему желанию, мы можем точно фильтровать сообщения, соответствующие нужным нам условным характеристикам, например, в следующих сценариях.

1. Фильтровать сообщения из определенных стран.

Например, фильтрация пакетов, страной-источником IP которых является США, может быть:

Язык кода:bash
копировать
ip.geoip.src_country == "United States"

IP-страной источника фильтра является США, Германия или Россия:

Язык кода:bash
копировать
ip.geoip.src_country in {"United States","Germany","Russia"}

Конечно, вы также можете использовать оператор or, эффект тот же:

Язык кода:bash
копировать
ip.geoip.src_country ==  "United States" || ip.geoip.src_country == "Germany" || ip.geoip.src_country == "Russia"

2. Фильтровать сообщения из определенных городов.

Фильтрация пакетов Ashburn может быть:

Язык кода:bash
копировать
ip.geoip.city == "Ashburn"

Фильтруйте сообщения в Вашингтоне или Франкфурте:

Язык кода:bash
копировать
ip.geoip.city matches "Washington|^Frankfurt"

Отфильтруйте пакеты, которые не могут разрешить город:

Язык кода:bash
копировать
!ip.geoip.city

Вы можете видеть, что поле города пусто, поскольку эти IP-адреса не имеют соответствующих данных о городе в базе данных адресов. Метод обратной фильтрации для других полей тот же.

3. Фильтровать пакеты с определенными номерами AS.

Таким же образом отфильтруйте пакеты с определенным номером AS и фильтруйте только пакеты с флагом SYN, установленным в 1:

Язык кода:bash
копировать
ip.geoip.asnum == 12312 && tcp.flags.syn==1

Мы можем найти, какие сегменты сети принадлежат этой AS, по номеру AS. Мы видим, что 212.172.0.0/16 находится внутри и может быть сопоставлен, что еще раз доказывает, что данные базы данных адресов точны:

Выше показаны 3 общих поля, и метод фильтрации для всех 26 полей одинаков.

6. Резюме

В этой статье подробно описано, как использовать библиотеку адресов MaxMind (включая GeoLite2 ASN, GeoLite2 City и GeoLite2 Country) в сочетании с Wireshark для проведения углубленного анализа информации о географическом местоположении IP в файлах перехвата пакетов.

В то же время дополнительно уточняется, как применять поля интереса в виде столбцов для более интуитивного просмотра информации о географическом местоположении IP. Кроме того, в нем также показано, как использовать 26 встроенных в Wireshark полей, связанных с географическим положением, для точной фильтрации пакетов и идентификации пакетов, соответствующих конкретным характеристикам географического местоположения.

Наконец, в примере показано, как просмотреть карту распределения IP-адресов и экспортировать данные в форматы CSV, YAML и JSON для дальнейшего анализа и обработки данных, что значительно улучшает возможности борьбы с угрозами безопасности, такими как сетевое сканирование и DDoS-атаки. эффективность и точность анализа.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose