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

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

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

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

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

Категории

Все категории
Loading categories
pyrite — Аппаратно-привязанное и облачно-управляемое исполнение бинарных файлов, криптографическая проверка происхождения и защита от несанкционированного вмешательства с запечатыванием конверта для Crystal. | Kitploit
Инструменты/GitLabGitLab/renich/pyrite
КриптографияБезопасность облачных средDevSecOpsАппаратная БезопасностьАнализ Бинарных ФайловБезопасность Цепочки Поставок
GitLabrenich/pyrite

pyrite

Аппаратно-привязанное и облачно-управляемое исполнение бинарных файлов, криптографическая проверка происхождения и защита от несанкционированного вмешательства с запечатыванием конверта для Crystal.

Репозиторий
29024 дней назадЕщё не проверено

Популярное

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

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

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

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

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

pyrite.cr banner

Привязка к оборудованию и облаку, управляемое облаком выполнение бинарных файлов и герметизация анти-тамперной оболочки для Crystal.

Version 0.2.0 Crystal >= 1.21.0 GitLab CI Passing Specs Passing Ameba Clean Flaw Clean

Sphinx Documentation Crystal API Documentation License: GPL-3.0-or-later Donate using Liberapay


Что такое Pyrite?

Pyrite гарантирует, что ваш скомпилированный бинарный файл Crystal будет выполняться только на вашей авторизованной инфраструктуре. Если злоумышленник извлечёт, сольёт, украдёт или изменит бинарный файл, выполнение немедленно останавливается до того, как будет раскрыта какая-либо логика приложения или секреты.

Основные гарантии безопасности

  1. Привязка к оборудованию и облаку: Бинарный файл неполон в состоянии покоя. Основная рабочая конфигурация и ключи запечатаны в оболочке, которая может быть расшифрована только физическим чипом TPM 2.0 материнской платы (systemd-creds) или Google Cloud Run IAM / Cloud KMS.
  2. Самопроверка целостности в реальном времени (анти-тампер): При запуске Pyrite вычисляет дайджест SHA-256 файла /proc/self/exe и сравнивает его с авторизованным хешем, расшифрованным из оболочки. Любое изменение хотя бы на 1 байт немедленно останавливает процесс.
  3. Защита от обратной разработки: Очищенный нативный машинный код LLVM (strip -s) не содержит таблиц символов, метаданных рефлексии или конфигурации в открытом виде. Декомпиляция даёт лишь мёртвую обёртку расшифровки.
  4. Нулевые накладные расходы во время выполнения: Криптографический шлюз срабатывает один раз при запуске (~15–25 мс) и добавляет 0.00% накладных расходов к обработке последующих запросов. Ноль внешних зависимостей от шардов.

Быстрый старт

1. Добавьте в shard.yml

dependencies:
  pyrite:
    github: renich/pyrite
    version: ~> 0.2.0

2. Инициализация в коде приложения

require "pyrite"
require "kemal"

# Define strongly-typed application configuration
struct AppConfig
  include JSON::Serializable

  getter database_url : String
  getter session_secret : String
  getter api_token : String
end

# 1-line verification & bootstrap:
config = Pyrite.bootstrap!(AppConfig)

puts "Pyrite verified binary integrity. Starting application..."

get "/" do
  "Secure service running on authorized hardware."
end

Kemal.run

3. Архитектура нулевого доверия с отказом при сбое

Pyrite применяет абсолютную политику нулевого доверия и отказа при сбое:

  • Бинарные файлы строго требуют авторизованного аппаратного TPM 2.0 или облачного KMS-якоря для распечатывания своей конфигурационной оболочки.
  • При выполнении вне авторизованной среды (например, на рабочей станции злоумышленника без TPM или облачной роли IAM) Pyrite немедленно прерывается с ошибкой Pyrite::HardwareAuthError и завершается с кодом 1.
  • Секреты и бизнес-логика никогда не попадают в память за пределами обозначенной границы доверия оборудования/облака.

CLI сборки и герметизации (bin/pyrite)

После установки Pyrite предоставляет скомпилированный CLI-инструмент для автоматизации компиляции LLVM, очистки символов ELF, хеширования дайджеста SHA-256 и герметизации оболочки.

# Build & Seal for Google Cloud Run (KMS):
bin/pyrite build \
    --input=src/main.cr \
    --output=bin/app \
    --target=gcp \
    --kms-key="projects/my-p/locations/global/keyRings/my-r/cryptoKeys/app-key" \
    --config=config/production.json

# Build & Seal for Bare-Metal Fedora (TPM 2.0 / systemd-creds):
bin/pyrite build \
    --input=src/main.cr \
    --output=bin/app \
    --target=baremetal \
    --pcr=0,7 \
    --config=config/production.json

# Build & Seal for AWS (ECS / Lambda / KMS):
bin/pyrite build \
    --input=src/main.cr \
    --output=bin/app \
    --target=aws \
    --kms-key="arn:aws:kms:us-east-1:123456789012:key/..." \
    --config=config/production.json

Поддерживаемые якоря доверия

СредаПровайдерКорень доверияЗащита
Google Cloud RunPyrite::Providers::GCPKMSGoogle Cloud IAM + Cloud KMSBinAuthz + Instance Metadata OIDC
Fedora / Bare-MetalPyrite::Providers::SystemdCredsHost TPM 2.0 (PCR 0,7)systemd-creds + Linux Kernel IMA
Bare-Metal DirectPyrite::Providers::TPM2Direct/dev/tpmrm0 chipDirect TPM2 PCR unseal (tpm2-tools)
AWS (ECS / Lambda)Pyrite::Providers::AWSKMSIMDSv2 + AWS KMSAWS IAM Task Role Decrypt

Документация

Исчерпывающая техническая документация, спецификации и записи об архитектурных решениях ведутся в формате reStructuredText в каталоге docs/:

Скачать инструмент