Вопрос или проблема
Я получаю эту ошибку, пытаясь использовать инструмент ID2T для внедрения атаки в файл pcap. Мой файл pcap состоит из следующих полей – №, Timestamp, Source, Destination, Protocol, Length, Info. Я выполнил следующую команду в терминале linux:
./id2t -i /home/abc/safwan/All/ITS-G5/log_LP_tcpd.pcap -a PortscanAttack mac.src=6c:3b:6b:eb:4d:bf inject.at-timestamp=437808
Ниже приведен вывод в терминале:
Входной файл: /home/abc/safwan/All/ITS-G5/log_LP_tcpd.pcap Статистическая база данных устарела. Восстановление базы данных в: /home/abc/.cache/id2t/db/152/87/67c4cd03046c.sqlite3 Старые интервальные статистические данные не будут пересчитываться. Загрузка pcap…
Проверенные пакеты: 100.0% (572531/572531) Неопознанные PDU обнаружены: Проверьте таблицу ‘unrecognized_pdus’! ОШИБКА: Статистику не удалось собрать из входного PCAP!
Traceback (most recent call last):
File "/home/abc/safwan/All/ID2T/code/CLI.py", line 228, in <module>
main(sys.argv[1:])
File "/home/abc/safwan/All/ID2T/code/CLI.py", line 223, in main
cli.parse_arguments(args)
File "/home/abc/safwan/All/ID2T/code/CLI.py", line 107, in parse_arguments
self.process_arguments()
File "/home/abc/safwan/All/ID2T/code/CLI.py", line 118, in process_arguments
self.process_pcap()
File "/home/abc/safwan/All/ID2T/code/CLI.py", line 184, in process_pcap
controller.load_pcap_statistics(self.args.export, self.args.recalculate, self.args.statistics,
File "/home/abc/safwan/All/ID2T/code/Core/Controller.py", line 74, in load_pcap_statistics
self.statistics.load_pcap_statistics(flag_write_file, flag_recalculate_stats, flag_print_statistics,
File "/home/abc/safwan/All/ID2T/code/Core/Statistics.py", line 198, in load_pcap_statistics
self.stats_summary_new_db()
File "/home/abc/safwan/All/ID2T/code/Core/Statistics.py", line 1988, in stats_summary_new_db
self.file_info = self.stats_db.get_file_info()
File "/home/abc/safwan/All/ID2T/code/Core/StatsDatabase.py", line 70, in get_file_info
self.cursor.execute('SELECT * FROM file_statistics'))][0]
sqlite3.OperationalError: no such table: file_statistics
Я также пытался выполнить следующую команду в терминале linux:
./id2t -i /home/abc/safwan/All/ITS-G5/log_LP_tcpd.pcap -a PortscanAttack geonw.src_pos.addr == 0.0.0.6c:3b:6b:eb:4d:bf inject.at-timestamp=437808
Потому что, когда я выбрал источник в качестве фильтра в Wireshark, он генерировал ‘geonw.src_pos.addr == 0.0.0.6c:3b:6b:eb:4d:bf’ в качестве фильтра. Поэтому вместо “mac.src” я использовал “geonw.src_pos.addr”. Но все равно получаю ту же ошибку.
Предполагалось, что он выполнит PortScanAttack в моем файле pcap с именем “log_LP_tcpd.pcap” и сгенерирует новый файл pcap с внедренной атакой. Но я получаю указанную ошибку. Как мне это исправить?
Ответ или решение
Решение проблемы с ошибкой "Unrecognized PDUs detected" в инструменте ID2T
Вы столкнулись с ошибкой при использовании инструмента ID2T для инъекции атаки в файл PCAP. Основная проблема заключается в том, что в процессе анализа вашего файла PCAP ID2T не может распознать некоторые протоколы данных (PDUs), что приводит к ошибке "Statistics could not be collected from the input PCAP". Давайте рассмотрим возможные причины этой ошибки и шаги для ее устранения.
1. Причины возникновения ошибки
1.1. Неверный формат или неподдерживаемые PDUs
Инструмент ID2T может не поддерживать некоторые форматы или протоколы, использованные в вашем PCAP-файле. Если определенные PDUs не распознаются, это может привести к ошибке.
1.2. Проблемы с базой данных статистики
Сообщение о том, что "Statistics database outdated", указывает на то, что старая база данных надо обновить. Из-за отсутствующих таблиц (в частности, таблицы file_statistics
) возникает sqlite3.OperationalError
, что подтверждается трассировкой стека.
2. Шаги для устранения проблемы
2.1. Очистка кэша и базы данных ID2T
Попробуйте удалить старую базу данных ID2T и кэш. Это можно сделать, удалив папку кэша:
rm -rf /home/abc/.cache/id2t/db/
После этого снова запустите команду с ID2T. Инструмент должен создать новую базу данных.
2.2. Проверка и обновление ID2T до последней версии
Убедитесь, что вы используете последнюю версию ID2T, так как в новых релизах могут быть исправлены ошибки или добавлены поддерживаемые протоколы. Вы можете обновить его с помощью:
git pull origin master
или, если используете, pip:
pip install --upgrade id2t
2.3. Анализ PCAP с помощью Wireshark
Используйте Wireshark для проверки вашего PCAP-файла. Откройте файл в Wireshark и проверьте, есть ли недопустимые или неизвестные протоколы в старых пакетах. Это может помочь вам понять, какие PDUs не распознаются инструментом ID2T.
2.4. Проверка параметров команды ID2T
Убедитесь, что вы используете правильные параметры командной строки. Например, вместо mac.src
и geonw.src_pos.addr
убедитесь, что используемые вами фильтры соответствуют схеме, которая ожидается самим инструментом.
Пример правильной команды может выглядеть следующим образом:
./id2t -i /home/abc/safwan/All/ITS-G5/log_LP_tcpd.pcap -a PortscanAttack mac.src=6c:3b:6b:eb:4d:bf inject.at-timestamp=437808
3. Завершение
Если, следуя описанным выше шагам, проблема не будет решена, рассмотрите возможность обращения к сообществу пользователей ID2T или официальной документации. Возможно, проблема носит специфический характер, требующий более глубокого анализа. Убедитесь, что ваши вопросы содержат достаточно информации о вашей среде и настройках, чтобы эксперты могли вам помочь.
Надеюсь, данное руководство поможет вам успешно решить возникшую проблему и продолжить работу с вашим PCAP-файлом.