PacketSifter
Что такое PacketSifter?
PacketSifter — это инструмент для пакетной обработки данных PCAP с целью выявления потенциальных IOCs.
Просто инициализируйте PacketSifter с нужными интеграциями (VirusTotal, AbuseIPDB), передайте ему pcap-файл и необходимые параметры, и PacketSifter проанализирует данные и создаст несколько выходных файлов.
Примечание: Перед использованием соответствующих флагов запустите AbuseIPDBInitial.sh и VTInitial.sh, иначе интеграции не будут работать.
27.05.2021
PacketSifter был обновлён для более удобного взаимодействия с пользователем. Просто скачайте новую версию packetsifter.sh, выполните ./packetsifter -h и узнайте, как правильно пользоваться новым PacketSifter!
Автор
Ross Burke (Twitter @packetsifter)
Как это работает
Просто передайте PacketSifter ваш pcap-файл для анализа вместе с нужными флагами, и он сделает всё за вас!
Пример:
root@ubuntu:~# ./packetsifter -i /tmp/testing.pcap -a -r -v
Параметры командной строки
ОПЦИИ:
- -a включить проверку IP-адресов из DNS A-записей через AbuseIPDB
- -h вывод справки
- -i входной файл [обязательно]
- -r разрешать имена хостов в pcap (может привести к DNS-запросам к инфраструктуре атакующего)
- -v включить проверку экспортированных SMB/HTTP объектов через VirusTotal
Требования
tshark - https://tshark.dev/setup/install/
Выходные данные
В настоящее время PacketSifter создаёт следующие pcap-файлы:
- http.pcap — все сеансы, содержащие порты 80, 8080 или 8000
- smb.pcap — все сеансы, классифицированные диссекторами tshark как NBSS, SMB или SMB2
- dns.pcap — все сеансы, классифицированные диссекторами tshark как DNS
- ftp.pcap — все сеансы, классифицированные диссекторами tshark как FTP
В настоящее время PacketSifter создаёт следующие текстовые файлы:
- IOstatistics.txt — иерархия протоколов и вход/выход с разбивкой по 30-секундным интервалам (полезно для поиска потенциального биконинга)
- IPstatistics.txt — общая статистика по конечным точкам по IP и отдельным сеансам по IP
- TCPstatistics — общая статистика по конечным точкам по TCP и отдельным TCP-сеансам с детализацией. <<Предупреждение>> Этот файл может содержать большой объём информации. Рекомендуется использовать less или grep для поиска нужного сеанса.
- http_info.txt — статистические данные по HTTP-сеансам
- hostnamesResolved.txt (опционально) — разрешённые имена хостов, обнаруженные в pcap. <<Предупреждение>> Это может привести к DNS-запросам к инфраструктуре атакующего. Действуйте с осторожностью!
- SMBstatistics.txt — статистика выполненных команд с использованием SMB или SMB2
- dnsARecords.txt — DNS-запросы/ответы типа A
- dnsTXTRecords.txt — DNS-запросы/ответы типа TXT
- errors.txt — мусорный файл
Выходные текстовые файлы интеграции с VirusTotal (все опциональны):
- httpHashToObject.txt — текстовый файл с сопоставлением md5-хэша и объекта для справки
- httpVTResults.txt — текстовый файл с результатами проверки md5-хэша HTTP-объектов через API VirusTotal
- smbHashToObject.txt — текстовый файл с сопоставлением md5-хэша и объекта для справки
- smbVTResults.txt — текстовый файл с результатами проверки md5-хэша SMB-объектов через API VirusTotal
Выходные текстовые файлы интеграции с AbuseIPDB (опциональны):
- IPLookupResults.txt — текстовый файл с результатами IP-геолокации и репутации IP
В настоящее время PacketSifter создаёт следующие tar.gz-файлы:
- httpObjects.tar.gz — HTTP-объекты, обнаруженные в pcap. <<Предупреждение>> Их может быть много, и в зависимости от pcap вы можете извлечь вредоносные HTTP-объекты. Используйте с осторожностью!
- smbObjects.tar.gz — SMB-объекты, обнаруженные в pcap. Их может быть много, и в зависимости от pcap вы можете извлечь вредоносные SMB-объекты. Используйте с осторожностью!
Интеграция с VirusTotal
PacketSifter теперь может выполнять проверку хэшей через API VirusTotal для экспортированных объектов, найденных через SMB/HTTP.
Шаги для настройки PacketSifter с интеграцией VirusTotal:
-
Убедитесь, что у вас установлен jq (https://stedolan.github.io/jq/download/).
root@ubuntu:~# apt-get install jq
-
Убедитесь, что у вас установлен curl.
root@ubuntu:~# apt-get install curl
3. Скачайте новую версию packetsifter.sh и новый скрипт VTInitial.sh
4. Запустите VTInitial.sh в той же папке, где находится packetsifter.sh, и введите ваш 64-символьный буквенно-цифровой API-ключ VirusTotal при запросе
Инструкции по получению бесплатного API-ключа VirusTotal: https://developers.virustotal.com/reference
Успешный вывод VTInitial.sh показан ниже:
5. Запустите PacketSifter с флагом -v, чтобы включить проверку экспортированных HTTP- и SMB-объектов через VirusTotal.
Успешный вывод интеграции с VirusTotal и последующий файл httpVTResults.txt / smbVTResults.txt показаны ниже:
Интеграция с AbuseIPDB
PacketSifter может выполнять IP-геолокацию и проверку репутации IP-адресов, возвращённых в DNS A-записях.
Шаги для настройки PacketSifter с интеграцией AbuseIPDB:
-
Убедитесь, что у вас установлен jq (https://stedolan.github.io/jq/download/).
root@ubuntu:~# apt-get install jq
-
Убедитесь, что у вас установлен curl.
root@ubuntu:~# apt-get install curl
3. Скачайте новую версию packetsifter.sh и новый скрипт AbuseIPDBInitial.sh
4. Запустите AbuseIPDBInitial.sh в той же папке, где находится packetsifter.sh, и введите ваш 80-символьный буквенно-цифровой API-ключ AbuseIPDB при запросе.
Инструкции по получению бесплатного API-ключа AbuseIPDB: https://www.abuseipdb.com/register
**Бесплатные API-ключи AbuseIPDB имеют лимит 1000 запросов в день**
Успешный вывод AbuseIPDBInitial.sh показан ниже:
5. Запустите PacketSifter с флагом -a, чтобы включить проверку DNS A-записей через AbuseIPDB.
Успешный вывод интеграции с AbuseIPDB и последующий файл IPLookupResults.txt показаны ниже:
**Уровень доверия (Confidence Score) — шкала от 0 до 100 процентов**
Есть предложения?
Свяжитесь со мной, если у вас есть предложения о том, что ещё можно анализировать или что ещё может быть полезно для этого инструмента.