Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
OffensiveDLR — Инструментарий, содержащий исследовательские заметки и PoC-код для weaponizing .NET DLR | Kitploit
Инструменты/GitHubGitHub/byt3bl33d3r/offensivedlr
Повышение привилегийМеханизмы персистентностиАнализ КодаДинамический анализ кода (DAST)ЭксплуатацияЛатеральное перемещениеШелл-кодПост-эксплуатацияКомандование и УправлениеОбучение и ОбразованиеRed TeamingРазработка Полезной Нагрузки
5261134 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHubbyt3bl33d3r/offensivedlr

OffensiveDLR

Инструментарий, содержащий исследовательские заметки и PoC-код для weaponizing .NET DLR

Репозиторий

OffensiveDLR

Набор инструментов с исследовательскими заметками и PoC-кодом для вооружения DLR в .NET

Contents

ScriptDescription
KukulkanУрезанная версия SILENTTRINITY, C# DLL и EXE со встроенным движком IPY. Канал связи зашифрован и может использоваться с CobaltStrike
Invoke-JumpScare.ps1Выполняет шеллкод с помощью встроенного компилятора Boolang: ничего не касается диска (по крайней мере, насколько я видел), и никаких вызовов csc.exe не делается :)
Invoke-IronPython.ps1Выполняет код IronPython с помощью встроенного движка IPY. Та же концепция, что и Invoke-JumpScare, только с использованием IronPython.
Invoke-ClearScript.ps1Выполняет JScript (или VBScript) с помощью встроенного движка ClearScript
SharpSnek.csC#-код, который встраивает движок IronPython и выполняет встроенный IPY-код. Перехватывает AppDomain.CurrentDomain.AssemblyResolve для разрешения необходимых сборок во время выполнения.
runBoo.csC#-версия Invoke-JumpScare. Выполняет шеллкод с помощью встроенного компилятора Boolang.
runBooAssemblyResolve.csC#-код, который встраивает компилятор Boolang и выполняет встроенный код Boolang. Перехватывает AppDomain.CurrentDomain.AssemblyResolve для разрешения необходимых сборок во время выполнения.
minidump.booНативный скрипт Boolang для дампа памяти с помощью MiniDumpWriteDump
shellcode.booНативный скрипт Boolang, который выполняет шеллкод. На данный момент содержит 3 различные техники (QueueUserAPC, CreateThread/WaitForSingleObject, WriteProcessMemory/CreateRemoteThread)
Invoke-SSharp.ps1Выполняет SSharp с помощью встроенного компилятора в PowerShell. Компиляция не вызывает csc.exe
Invoke-Boolang.ps1Выполняет код Boo с помощью встроенного компилятора. Также содержит обходные решения для некоторых багов, которые я обнаружил при встраивании компилятора Boolang в PowerShell.
Invoke-NeoLua.ps1

Зачем?

.NET DLR — это просто нечто: он позволяет вытворять безумные вещи, например встраивать настоящие компиляторы/движки внутрь других .NET-языков (например, PowerShell и C#), оставаясь при этом в памяти и не нарушая OPSEC. В случае с IronPython можно даже получить то, что я называю «инцепция движков»: хотите встроить движок IPY внутрь движка IPY внутри ещё одного движка IPY? (йо, чувак, я слышал, тебе нравятся IPY-движки...).

С точки зрения атакующего это даёт невероятную гибкость и ряд преимуществ, вот некоторые из них:

  1. Готовый доступ к .NET API без какого-либо участия PowerShell. По сути, использование DLR даёт всю мощь PowerShell, только без PowerShell, и на языке, на котором (обычно) проще писать скрипты (например, Python)

  2. Постоянно происходит безумное количество рефлексии/встраивания, а значит, больше возможностей для обхода средств защиты.

  3. Используя DLR, вы всегда обходите AMSI (если правильно подготовите свои пейлоады), не нужно ничего обфусцировать, патчить и т.д..

  4. Всё ваше «зло» может быть написано на языке встроенного движка/компилятора. Если делать это в PowerShell, журналирование ScriptBlock ничего не увидит, поскольку вся магия происходит в DLR.

  5. Обычно все DLR-языки имеют возможность вызова нативных методов либо через сам язык, либо путём динамической компиляции C# (например, Add-Type в PowerShell). Если использовать первый метод, никаких вызовов csc.exe не делается, и обычно ничего не сбрасывается на диск, поскольку языки генерируют всё необходимое в памяти через IL-код. Мы можем идти «...так низко и так высоко, как хотим..» (@Op_nomad), и это позволяет нам делать всё то хорошее, что мы все любим (внедрять шеллкод, неуправляемые DLL, загружать PE и т.д..)

  6. Позволяет быстро перенастраивать инструменты и превращать пейлоады в оружие. Ручная компиляция не требуется.

Другие проекты по Offensive DLR

Если вас это заинтересовало, вот ещё несколько инструментов, которые тоже пытаются использовать DLR как оружие:

  • https://github.com/dsnezhkov/typhoon
  • https://github.com/byt3bl33d3r/SILENTTRINITY

Благодарности

  • @Op_nomad
  • @subtee
  • @pwndizzle
  • @malcomvetter
  • @harmj0y
  • @elitest

Ссылки

Честное предупреждение: если вы начнёте читать это, вас затянет в адскую кроличью нору (с настоящими демоническими кроликами).

  • https://github.com/boo-lang/boo/wiki/Scripting-with-the-Boo.Lang.Compiler-API
  • https://github.com/boo-lang/boo/wiki/Invoke-Native-Methods-with-DllImport
  • https://github.com/pwndizzle/c-sharp-memory-injection
  • http://www.voidspace.org.uk/ironpython/embedding.shtml
  • http://www.voidspace.org.uk/ironpython/winforms/part10.shtm
  • https://www.codeproject.com/Articles/53611/%2FArticles%2F53611%2FEmbedding-IronPython-in-a-C-Application
  • http://www.voidspace.org.uk/ironpython/ip_in_ip.shtml
  • https://jimshaver.net/2018/02/22/net-over-net-breaking-the-boundaries-of-the-net-framework/

Доклады

  • Быстрая перенастройка в .NET для Red Teams - Circle City Con 2018
  • IronPython...OMFG - Derbycon 2018
  • Создание империи с помощью (Iron)Python - Derbycon 2018
Скачать инструмент
Выполняет код Lua с помощью встроенного компилятора в PowerShell.