Сама по себе техника инжекта в процесс, которая рассматривается довольно трвиальна - через переменную окружения DYLD_INSERT_LIBRARIES. Агент запуска же позволяет закрепиться с помощью переменной окружения, задавая ее каждый раз при входе пользователя в систему.
Какие же приложения уязвимы? Существуют флаги подписи кода (cs_flags или codesigning_flags в es_logger). По данным статьи, чтобы защититься от рассмотренной в рамках задачи инъекции необходимо как минимум подписать свое приложение следующими флагами:
Получается неподписанный код - приложения, имеющие атрибут codesigning_flags = 0 могут быть использованы атакующим для внедрения полезной нагрузки.
В рамках правила подразумевается, что при создании агента запуска создается переменная окружения и с ней запускается какой-то процесс. При отсутствии подписи (datafield18 = 0) в правиле локализации для аналитика указывается, что запускаемое приложение не имеет подписи.
Сама по себе техника инжекта в процесс, которая рассматривается довольно трвиальна - через переменную окружения
DYLD_INSERT_LIBRARIES
. Агент запуска же позволяет закрепиться с помощью переменной окружения, задавая ее каждый раз при входе пользователя в систему.Какие же приложения уязвимы? Существуют флаги подписи кода (cs_flags или codesigning_flags в es_logger). По данным статьи, чтобы защититься от рассмотренной в рамках задачи инъекции необходимо как минимум подписать свое приложение следующими флагами:
Получается неподписанный код - приложения, имеющие атрибут
codesigning_flags = 0
могут быть использованы атакующим для внедрения полезной нагрузки.В рамках правила подразумевается, что при создании агента запуска создается переменная окружения и с ней запускается какой-то процесс. При отсутствии подписи (datafield18 = 0) в правиле локализации для аналитика указывается, что запускаемое приложение не имеет подписи.
Resolve #377