
Bash-сканер, обнаруживающий индикаторы компрометации при эксплуатации CVE-2023-3519 на устройствах Citrix ADC, поддерживающий анализ в реальном времени и криминалистический анализ образов.
Этот репозиторий содержит утилиту для обнаружения компрометаций устройств Citrix ADC, связанных с CVE-2023-3519. Утилита и её ресурсы кодируют индикаторы компрометации, собранные в ходе расследований Mandiant. Чтобы узнать больше, пожалуйста, прочитайте блог, анонсирующий выпуск этого инструмента.
Вкратце, утилита будет:
Она не будет:
С помощью отзывов сообщества инструмент может стать более тщательным в обнаружении. Пожалуйста, откройте issue, или отправьте PR, если у вас есть проблемы, идеи или отзывы.
Этот сканер может выявлять:
Сканер индикаторов компрометации (IoC) для CVE-2023-3519 был разработан Mandiant в сотрудничестве с Citrix на основе знаний, полученных в результате реагирования на инциденты, связанные с эксплуатацией CVE-2023-3519. Цель сканера — проанализировать доступные источники журналов и судебно-медицинские артефакты системы, чтобы выявить признаки успешной эксплуатации CVE-2023-3519. Существуют ограничения в том, что инструмент сможет сделать, и поэтому выполнение инструмента не должно считаться гарантией того, что система свободна от компрометации. Например, файлы журналов в системе с доказательствами компрометации могли быть усечены/перезаписаны, система могла быть перезагружена, злоумышленник мог вмешаться в систему, чтобы удалить следы компрометации, и/или установить руткит, маскирующий признаки компрометации и т.д.
Этот инструмент не гарантирует обнаружение всех доказательств компрометации или всех доказательств, связанных с CVE-2023-3519. Если на системах обнаружены признаки компрометации, организациям следует провести судебно-медицинскую экспертизу скомпрометированной системы, чтобы определить масштаб и степень инцидента. Данное программное обеспечение предоставляется как есть, без каких-либо гарантий или представительств для любого использования или цели.
Вы должны загрузить автономный Bash-скрипт со вкладки Releases этого репозитория. Копирование исходного каталога на устройство Citrix ADC не рекомендуется. Это вызовет ложные срабатывания.
Сканер IoC может быть запущен непосредственно на устройстве Citrix ADC.
В этом режиме инструмент будет сканировать файлы, процессы и порты на наличие известных индикаторов.
Инструмент записывает диагностические сообщения в поток STDERR, а результаты — в поток STDOUT.
При типичном использовании следует перенаправить STDOUT в файл для просмотра.
Инструмент должен запускаться как root в живом режиме на устройстве Citrix ADC.
Чтобы получить доступ к root, войдите в CLI как nsroot, а затем выполните shell из CLI.
Пример:
$ bash ./scanner-CVE-2023-3519-v1.2.sh > "/tmp/results-$(date).txt"
Инструмент предназначен для использования со следующими продуктами:
Сканер IoC также может проверять подключенный форензический образ.
В этом сценарии передайте аргумент командной строки, указывающий путь к корневому каталогу образа.
Примечание: Путь, который вы передаёте для сканирования форензического образа, должен быть логическим корнем / образа.
В некоторых случаях инструмент использует относительные пути, и вы можете получить ложные срабатывания или ложноотрицательные результаты, если образ не смонтирован должным образом.
Для работы в автономном режиме не обязательно быть root.
Пример:
$ bash ./scanner-CVE-2023-3519-v1.1.sh /mnt/path/to/evidence/root/
В обоих режимах инструмент извлечёт вспомогательный код во временный каталог; этот каталог будет удалён после завершения скрипта. Инструмент не вносит дальнейших изменений в систему, хотя может вызвать создание записей в журнале.
Как и при любом форензическом анализе, предпочтительнее автономный анализ образа dd по сравнению с живым реагированием.
Это исключит вероятность того, что инструмент приведёт к перезаписи соответствующих доказательств.
Результаты работы скрипта разбиты на три основных раздела.
Сводка системы выводит основную информацию об устройстве (если запущено в живом режиме) и ответ «да/нет» относительно обнаружения признаков компрометации.
**********************************************************************
SUMMARY:
Date : Sat Aug 12 22:46:26 UTC 2023
Hostname :
IP : 192.168.122.2
NS version : 13.1-48.47
Scanner version :
Scanner run mode : Default
Evidence of compromise found : Yes
Evidence of scanning found : N/A - Script Executed in Default Mode
Evidence of failed exploitation found : N/A - Script Executed in Default Mode
**********************************************************************
Следующий раздел выводит подробности о проверенных файлах журналов, включая первую и последнюю запись каждого файла журнала. Это полезно для следователя, чтобы определить временной промежуток, в течение которого сканер мог просматривать журналы, и объяснить отсутствие результатов.
Последний раздел детализирует, какие признаки компрометации были выявлены, если таковые имеются. Например, ниже показано совпадение с содержимым из списка запрещённого в файлах.
**********************************************************************
MATCH: denylisted content 'blv_encode'
Found evidence of potential compromise.
You should consider performing a forensic investigation of the system.
**********************************************************************
matches for 'blv_encode':
/root/six.mal_
Если вы придумаете дополнительные способы выявления компрометации, пожалуйста, рассмотрите возможность внести вклад в этот сканер IoC. Мы хотели бы предоставить максимально тщательный и правильный сканер.
Основная цель — сообщать об индикаторах компрометации с высокой степенью достоверности. Поскольку пользователи могут полагаться на вывод этого инструмента для начала дальнейшего расследования, важно, чтобы мы не отправляли их в ложное преследование. Поэтому такие действия, как простое сканирование, не должны сообщаться в режиме по умолчанию. Любые доказательства того, что злоумышленник получил доступ к системе, извлёк информацию или создал контент, всегда должны сообщаться.
Мы предоставляем этот инструмент в виде Bash-скрипта, потому что это общий знаменатель для устройств Citrix ADC. Вот матрица функций для версий Citrix ADC:
После того как вы проверили исходный репозиторий, вы можете собрать автономный скрипт с помощью инструмента ./build.sh.
Он упаковывает основной скрипт и вспомогательные ресурсы в единый пакет.
При выполнении он будет извлекать файлы во временный каталог, выполнять оттуда, а затем очищать.
Не собирайте скрипт на netscaler. Это приведёт к ложным срабатываниям.
Сборка:
$ bash ./build.sh > ioc-scanner-CVE-2023-3519-rev$(git rev-parse HEAD | cut -c 1-8).sh
Для дополнительной информации от Mandiant относительно CVE-2023-3519 и эксплуатации в дикой природе, пожалуйста, смотрите:
| Версия NetScaler | ОС | Доступные языки |
|---|
| 13.1 | FreeBSD 8.4 | Bash, Perl, Python |
| 13.0 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.1 | FreeBSD 8.4 | Bash, Perl, Python |
| 12.0 | FreeBSD 8.4 | Bash, Perl, Python |