Security-Experts-Community / open-xp-rules

Открытый репозиторий с правилами на языке eXtraction and Processing (XP)
Apache License 2.0
20 stars 44 forks source link

OSW#2: Task-15 #380

Open aw350m33d opened 3 months ago

aw350m33d commented 3 months ago

OSW#2: Task-15

Хакер получил доступ к ПК и приступил к вредоносной активности. Необходимо определить ее и написать детектирующее правило.

Файл с событиями можно скачать тут 🔗.

Проставляй галочки по ходу выполнения шагов:

Следи за комментариями в созданном PR. Если нужно будет что-то поправить, изменения можно добавить в уже созданный PR. Для этого просто зафиксируй изменения в локальном репозитории и снова отправь все коммиты в GitHub.

Если возникли трудности в ходе решения этой задачи, то вопрос можно написать прямо в комментариях к этой задаче.

Также по любым вопросам, связанными со спринтом, можно писать в чат или в дискуссии GitHub

sn1permanky commented 3 months ago

Беру эту задачу

aw350m33d commented 3 months ago

Беру эту задачу

Приглашение отправил) После вступления в группу можешь назначить задачу на себя)

aw350m33d commented 3 months ago

Привет! Вижу, что по задаче нет изменений. Может быть есть вопросы или нужна какая-то помощь?

sn1permanky commented 2 months ago

Привет! Вижу, что по задаче нет изменений. Может быть есть вопросы или нужна какая-то помощь?

Главная проблема на данный момент полноценно понять что произвошло и каким образом выстроен механизм атаки)

Когда начал анализировать логи, наткнулся на Dirtynib почитал про него, вник в способ и попытался найди следы реализации в логах, но как-будто бы не оно)

В глаза бросается самый яркий индикатор - проверка статуса csrutil, после чего его запуск и чтение dyld библиотек Cryptexec.

Также явно странно ведет себя служба airportd и rinningboard

В данный момент начал читать лог заново и пытаюсь, выстроить полную цепочку событий и понять закономерность.

Пока самый яркий триггер для правила - это проверка статуса csrutil

Еще не до конца понимаю почему самба шарит по рабочему столу и папке /users/user

Keks1993 commented 2 months ago

Привет. Дам подсказку, в этой задаче нужно сделать детект на сбор информации о системе.

sn1permanky commented 2 months ago

Привет. Дам подсказку, в этой задаче нужно сделать детект на сбор информации о системе.

Я максимально внимательно прочитал логи и нашел следующие закономерности:

Сначала проводится запуск Dirtynib.app. После чего запуск нетипичного терминала - iTerm2

Далее файл reconnaissance читает:

/System/Volumes/Preboot/Cryptexes/OS/System/Library/dyld По данному пути лежит кэш всех встроенных библиотек (dyld - это точка входа для всех бинарников mac os)

/dev/dtracehelper Получает информацию о системе

/private/tmp/guid Не нашел однозначного понимания что может лежать в этой папке кроме того, что это tmp файлы гостевого пользователя

После чего он запускает команду на проверку статуса csrutil sh -c csrutil status

И через /bin/bash осуществляется чтение /System/Volumes/Preboot/Cryptexes/OS/dyld /dev/dtracehelper /usr/share/locale/UTF-8/LC_CTYPE (тоже самое, что и выше, плюс тип локали, наверное для определение языков установленных на Мак ос(?))

После этого csrutil читает: 1./System/Volumes/Preboot/Cryptexes/OS/System/Library/dyld,

  1. /dev/dtracehelper
  2. /Library/Preferences/Logging/com.apple.diagnosticd.filter.plist
  3. /dev/autofs_nowait 5./Users/user/.CFUserTextEncoding

Далее происходит ряд действий, который я не уверен, что стоит разбирать детально (обращение к dirtynib, launchd, airportd и пр.)

Если я правильно понимаю, мне нужно задетектить сбор информации о системе через обращение к файлам: /System/Volumes/Preboot/Cryptexes/OS/System/Library/dyld /dev/dtracehelper /usr/share/locale/UTF-8/LC_CTYPE

проверку статуса csrutil

запуск csrutil с дальнейшим обращением к: /System/Volumes/Preboot/Cryptexes/OS/System/Library/dyld /dev/dtracehelper /usr/share/locale/UTF-8/LC_CTYPE

Но я все же не до конца понимаю саму суть атаки.

Полагаю, что было перехвачено управление csrutil, но как? Может быть его переписали через dirtynib? Или здесь используется уязвимость dtracehelper?

Keks1993 commented 2 months ago

Привет. Посмотрел внимательно на события и понял, что отправил не тот файл. Прошу прощения. events.json