
Кроссплатформенная интерактивная оболочка для Microsoft Defender for Endpoint Live Response
Кроссплатформенная интерактивная оболочка для Microsoft Defender for Endpoint Live Response.
| Функция | Описание |
|---|---|
| Платформа | PowerShell Core 7.0+ (Windows, Linux, macOS) |
| Режимы API | Внутренний (портал, почти реальное время) и Официальный (публичный, без состояния) |
| Выполнение | Произвольные команды + 25 встроенных команд LR |
| Аутентификация | 7 методов аутентификации, единое меню, автообновление |
| Лицензия | MIT |
LaraC2 Shell подключается к MDE Live Response через два независимых API-пути — внутренний API портала (постоянные сессии, задержка ~2-5 с) и официальный публичный API (на команду, задержка ~20-60 с). Он автоматически загружает заглушки исполнителей, прозрачно обрабатывает ограничение скорости и предоставляет полноценную REPL с управлением машинами, управлением библиотеками и встроенной справочной системой.
| Документ | Назначение |
|---|---|
| Руководство пользователя | Пошаговая настройка, аутентификация и работа |
| Справочник команд | Все команды, маршрутизация, пакетная обработка, автодополнение |
| Справочник ошибок | Коды HTTP, ошибки оболочки, ошибки аутентификации, исправления |
| Производительность | Задержка внутреннего и официального режимов, пропускная способность, лимиты |
| Архитектура | Внутреннее устройство, цепочки аутентификации, конечные точки, структура файлов |
| Участие | Как участвовать, тестировать, отправлять PR |
| Политика безопасности | Как сообщить об уязвимости конфиденциально |
| Ссылки | Предшествующие работы, связанные исследования, благодарности |
| Отказ от ответственности | Авторизация, благодарности |
connect повторно аутентифицирует при истечении сессииmulti с фильтрацией по шаблону имени и ограничением top-NMachine.LiveResponse + Library.Manage (официальный режим)git clone https://github.com/akefallonitis/larac2shell.git cd larac2shell pwsh -File shell/Invoke-MDEShell.ps1
Вот и всё. Оболочка при первом запуске показывает единое меню аутентификации из 7 методов — выберите один, пройдите аутентификацию, выберите машину, и вы в REPL. Никакого конфигурационного файла, никаких флагов, ничего настраивать не нужно.```
Select API mode:
Internal API (security.microsoft.com — near real-time, ~2-5s/cmd)
1 Credentials + MFA username + password, TOTP/push/SMS [auto-refresh]
2 Software passkey FIDO2/WebAuthn JSON key file [auto-refresh]
3 ESTS cookie ESTSAUTHPERSISTENT from browser (~24hr)
4 Temporary Access Pass one-time admin-issued code
5 Direct sccauth + XSRF cookies from browser DevTools (~1hr)
Official API (api.securitycenter.microsoft.com — CI/CD ready, ~20-60s/cmd)
6 Device code browser login (interactive)
7 Client credentials app registration with client secret
Auth method (1-7):
Варианты 1-5 устанавливают внутренний режим, 6-7 — официальный. Вы можете переключать режимы позже без перезапуска — см. Переключение режимов в строке ниже.
[INT myhost C:]> mode Current mode: Internal API Switch with: 'mode internal' or 'mode official'.
[INT myhost C:]> mode official [Mode] Switching from Internal API to official... (auth menu for official mode opens) [Mode] Now in official mode. Run 'machines' to list targets or 'connect <name|id>' to select one.
`mode <target>` отсоединяет любой текущий сеанс LR, очищает старое состояние аутентификации и повторно запускает поток аутентификации для целевого режима. Когда он возвращается, вы аутентифицированы в новом режиме без выбранной машины — выполните `machines`, чтобы вывести список, или `connect <name|id>`, чтобы сразу перейти к цели. Перезагрузка не требуется.
### Ярлыки CLI (опционально)```powershell
# Pre-select the mode (narrows the auth menu to 1-5 or 6-7)
pwsh -File shell/Invoke-MDEShell.ps1 -Mode internal
pwsh -File shell/Invoke-MDEShell.ps1 -Mode official
# Pre-select a machine (skips the picker)
pwsh -File shell/Invoke-MDEShell.ps1 -Machine myhost
# Software passkey path (internal mode)
pwsh -File shell/Invoke-MDEShell.ps1 -PasskeyPath ./keys/passkey.json
# Non-interactive single command (exits with remote command's exit code)
pwsh -File shell/Invoke-MDEShell.ps1 -Machine myhost -Command 'whoami'