На красной команде, когда ваш фишинг сработал, а Beacon уже в памяти, важно защитить его от обнаружения. Cobalt Strike недавно представил функцию Sleep Mask, которая помогает скрыть Beacon, когда он "спит". Однако во время выполнения BOF Beacon остается в памяти, что может привести к его обнаружению EDR.
Чтобы решить эту проблему, необходимо знать базовый адрес и размер Beacon. Используя API VirtualQuery и немного ассемблера, можно получить эти данные и изменить защиту страниц памяти, применив XOR-маску. Это позволяет скрыть Beacon от сканеров, таких как Moneta и PESieve.
Важно помнить, что нельзя вызывать API Beacon, пока он зашифрован, иначе это приведет к сбою. Мы разработали проект в виде заголовочного файла на C, который легко интегрируется в существующие BOF.
Эта техника может значительно повысить безопасность и снизить вероятность обнаружения.