В эпоху, когда Windows отчаянно борется с теми, кто «просто хочет посмотреть, что внутри», появляется всё больше инструментов, готовых перехитрить встроенные механизмы защиты. Один из них — FullBypass , разработанный энтузиастом под ником Sh3lldon. Этот инструмент — маленький шедевр для тех, кто работает (или балуется) с PowerShell в ограниченном режиме.
Что делает FullBypass и зачем он вообще нужен?
Сразу к сути: Windows в корпоративных и защищённых средах включает AMSI (Antimalware Scan Interface) и переводит PowerShell в Constrained Language Mode (CLM), чтобы никто не вытворял опасные штуки — вроде загрузки dll, рефлексии, или запуска PE-файлов из памяти.
FullBypass создан как раз для того, чтобы обойти эти ограничения. Он позволяет получить обратную сессию PowerShell в Full Language Mode — то есть без цензуры, фильтров и всей этой цифровой «морали» от Microsoft. Главное, чтобы вы не использовали это на чужих машинах без разрешения. Или хотя бы не оставляли следов.
Как именно работает обход?
Инструмент написан на C# и использует .NET для обхода:
- AMSI патчится в памяти: функция AmsiScanBuffer подменяется, и всё, что PowerShell скармливает на проверку, просто игнорируется.
- CLM сбрасывается: при запуске создаётся новая сессия PowerShell, в которой нет ограничения по языку. Это значит, что вы можете делать почти всё, что захотите.
Да, если это звучит подозрительно просто — оно так и есть. Гениальность в простоте.
Как это запускается (и зачем MSBuild)?
Автор предложил интересную точку входа — MSBuild. Инструмент поставляется как файл проекта FullBypass.csproj, который можно скормить компилятору прямо на машине жертвы. Вот пример команды:
C:WindowsMicrosoft.NETFramework64v4.0.30319msbuild.exe .FullBypass.csproj
Можно положить файл в C:WindowsTemp или C:WindowsTasks, где редко кто смотрит. А дальше — указать IP и порт для соединения и... ловить обратную PowerShell-сессию с полным доступом. Простенько и со вкусом.
Сценарии применения (или как НЕ использовать FullBypass)
Вообще, инструмент позиционируется как учебный и для тестов на проникновение. То есть:
- Да — использовать на стендах и в лабораториях.
- Да — демонстрировать заказчику слабые места.
- Нет — пытаться хакнуть Windows начальника ради спортивного интереса.
Если серьёзно, это мощный способ показать, что даже CLM и AMSI не дают полной безопасности. Особенно если в организации нет EDR/AV, отслеживающего вызовы MSBuild или инъекции в память.
Сложно ли это обнаружить?
Да и нет. Если в системе есть продвинутый антивирус , он может засечь подмену функций AMSI — особенно если используется «банальный» патч через XOR (как это делает FullBypass). Но на многих машинах по-прежнему нет хорошей защиты, а некоторые EDR -инструменты закрывают глаза на старые техники или не видят MSBuild как угрозу.
Так что в реальных условиях это может сработать с первого раза — особенно если заранее узнать, что стоит на машине и какие правила мониторинга.
Что внутри?
Проект — полностью open source, находится на GitHub по адресу: https://github.com/Sh3lldon/FullBypass . В репозитории всего несколько файлов, главный — FullBypass.csproj, а код находится в самом проекте. Всё логично, понятно и даже красиво.
Основной метод заменяет указатель функции AmsiScanBuffer в памяти с помощью инструкции XOR. Это старая, но надёжная техника. После чего запускается PowerShell с загрузкой payload через указанную обратную ссылку.
О разработчике
Sh3lldon (он же Магжан Турсункул) — специалист по безопасности с богатым набором сертификатов: OSED, OSEP, CRTO, CRTE и CRTM. На GitHub он публикует не только FullBypass, но и другие полезные вещи: сканеры, эксплойты и патчи для обхода систем безопасности.
Это один из тех случаев, когда видно, что автор знает, что делает — и делает это красиво.
Выводы: для кого это и зачем?
FullBypass — отличный пример того, как можно обойти стандартные защиты Windows, используя инструменты самой Windows. Идеально подходит:
- Для тестов на проникновение.
- Для демонстраций заказчику.
- Для изучения внутренностей AMSI и CLM.
Но не стоит забывать: это не игрушка, и использовать её нужно с головой. Ну или хотя бы в перчатках.