Citrix Analysis Notebook
Jupyter notebook для автоматизации части форензического анализа хостов Citrix Netscaler, скомпрометированных через CVE-2019-19781.
За помощью в получении артефактов для исследования обратитесь к этому скрипту триажа Citrix.
Все замечания и предложения приветствуются. Не стесняйтесь отправлять pull requests или issues.
Дисклеймер: это не претендует на универсальное решение, а просто помогает вам начать работу.
Возможности
- В настоящее время обрабатываются следующие журналы и XML-пейлоады, если они доступны:
- HTTPAccess
- HTTPError
- Cron
- Bash
- Notice
- Sh
- Распаковка журналов
- Разбор журналов в pandas dataframes для дальнейшего анализа при желании
- Поиск в журналах распространённых IOC, связанных с компрометацией
- Разбор и декодирование XML-файлов пейлоадов, если они доступны
- Вывод результатов анализа в лист результатов Excel для просмотра
Полезные ресурсы
Журнал изменений
v 1.0
- Добавлен разбор журнала httperror
- Анализ notice теперь ищет те же термины, что и анализ sh (sh включены в notice, поэтому для одинаковых результатов мы должны искать одни и те же термины в обоих журналах)
- Пустые dataframes больше не экспортируются в лист результатов. Вместо этого в ячейке записи Excel в ноутбуке будет выведено сообщение о том, какие dataframes пусты.
v 0.9
- Добавлено получение дат начала и окончания, охватываемых каждым из перечисленных выше журналов
- Код разбора XML немного рефакторизован для включения ключа 'username', что позволяет разбирать XML, полученные из /xml/bookmarks
v 0.8
- Добавлена кодировка 'latin1' для разбора всех журналов, чтобы учесть случаи, когда журналы были не в utf-8 и вызывали ошибки разбора
- Функция searchFor разделена на searchFor и shSearchFor, так как журналы sh имеют другие критерии поиска, которые не встречаются в других журналах
v 0.7
- Добавлено декодирование пейлоадов (chr() и base64) + агрегирование всех пейлоадов в столбец 'decodedpayloads'
v 0.6
- Добавлен разбор журналов sh
- Добавлена общая переменная 'searchFor' в конфигурацию для хранения поисковых терминов подозрительной активности, которые будут искаться в каждом журнале
v 0.5
- Добавлен разбор большинства журналов notice (см. ошибки для исключений)
- Исключения на данный момент: sslvpn_aaad_login_handler и журналы Session setup data send, хотя они выводятся через ошибки, так что вы всё ещё можете их просмотреть
v 0.4
- Добавлен разбор журнала bash