Используйте библиотеку адресов 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
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.