Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitLabGitLab/renich/pyrite
CryptographyCloud SecurityDevSecOpsHardware SecurityBinary AnalysisSupply Chain Security
GitLabrenich/pyrite

pyrite

하드웨어 바인딩 및 클라우드 게이트 바이너리 실행, 암호화 출처 증명, 그리고 Crystal용 변조 방지 봉투 밀봉.

저장소 보기
188시간 38분 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

pyrite.cr banner

Crystal을 위한 하드웨어 바인딩 및 클라우드 게이트 바이너리 실행과 변조 방지 봉투(Envelope) 실링.

Version 0.1.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만 복호화할 수 있는 봉투(Envelope) 내부에 봉인됩니다.
  2. 실시간 자체 무결성(변조 방지): 부팅 시 Pyrite는 /proc/self/exe의 SHA-256 다이제스트를 계산하여 봉투에서 복호화된 승인된 해시와 비교합니다. 1바이트만 변경되어도 프로세스가 즉시 중단됩니다.
  3. 리버스 엔지니어링 방지: 스트립된 네이티브 LLVM 기계 코드(strip -s)에는 심볼 테이블, 리플렉션 메타데이터 또는 평문 구성이 전혀 포함되지 않습니다. 역컴파일하면 죽은 복호화 래퍼만 생성됩니다.
  4. 제로 런타임 오버헤드: 암호화 게이트는 시작 시 한 번만 실행되며(약 15~25ms) 지속적인 요청 처리에 0.00% 오버헤드를 추가합니다. 외부 샤드 의존성이 없습니다.

빠른 시작

1. shard.yml에 추가

root@kitploit:~
dependencies:
  pyrite:
    github: renich/pyrite
    version: ~> 0.1.0

2. 애플리케이션 코드에서 부트스트랩

root@kitploit:~
require "pyrite"
require "kemal"

# 강력한 타입의 애플리케이션 구성 정의
struct AppConfig
  include JSON::Serializable

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

# 1줄 검증 및 부트스트랩:
config = Pyrite.bootstrap!(AppConfig)

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

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

Kemal.run

3. 로컬 개발 모드

개발 중이거나 단위 테스트(crystal spec) 중에는 활성 클라우드 자격 증명이나 물리적 TPM이 필요하지 않습니다. .pyrite.dev.json을 생성하거나 PYRITE_DEV=1을 설정하기만 하면 됩니다:

root@kitploit:~
{
  "database_url": "postgresql://postgres:pass@localhost:5432/dev",
  "session_secret": "insecure-dev-secret-key",
  "api_token": "dev-token"
}

Pyrite는 터미널에 명확한 시각적 경고를 출력하고 로컬 구성을 통과시킵니다.


빌드 및 실링 CLI (bin/pyrite)

설치 시 Pyrite는 LLVM 컴파일, ELF 심볼 스트리핑, SHA-256 다이제스트 해싱 및 봉투 실링을 자동화하는 컴파일된 CLI 도구를 제공합니다.

root@kitploit:~
# 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

# 베어메탈 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

지원되는 신뢰 앵커


문서

포괄적인 기술 문서, 사양 및 아키텍처 결정 기록은 docs/ 아래에 reStructuredText로 유지 관리됩니다:


기여 및 행동 강령

모든 기여는 보편적 행동 강령 및 기여 지침을 준수해야 합니다.


라이선스

  • 소프트웨어: GNU 일반 공중 사용 허가서 v3.0 이상 (LICENSE).
  • 문서: GNU 자유 문서 사용 허가서 v1.3 이상 (LICENSE-DOCS).

카피레프트 © 2026 Rénich Bon Ćirić <[email protected]>.


지원 및 기부

Pyrite가 유용하다고 생각하고 지속적인 개발을 지원하고 싶다면 기부를 고려해 주세요:

Donate using Liberapay

도구 다운로드
환경제공자신뢰 루트보호
Google Cloud RunPyrite::Providers::GCPKMSGoogle Cloud IAM + Cloud KMSBinAuthz + 인스턴스 메타데이터 OIDC
Fedora / 베어메탈Pyrite::Providers::SystemdCreds호스트 TPM 2.0 (PCR 0,7)systemd-creds + Linux 커널 IMA
베어메탈 직접Pyrite::Providers::TPM2Direct/dev/tpmrm0 칩직접 TPM2 PCR 언실링 (tpm2-tools)
AWS (ECS / Lambda)Pyrite::Providers::AWSKMSIMDSv2 + AWS KMSAWS IAM 태스크 역할 복호화
로컬 개발Pyrite::Providers::DevMock로컬 파일 (.pyrite.dev.json)마찰 없는 로컬 개발
가이드범위 및 주요 내용직접 링크
비즈니스 컨텍스트 및 전략문제 정의, 위협 환경, 이해관계자 페르소나(Devon, Rénich, Sam) 및 정량화 가능한 ROI 목표.비즈니스 사양 • 페르소나 • 문제 정의
기능 사양요구사항 [FUNC-001]–[FUNC-005]: 실행 게이팅, 실시간 자체 무결성, 봉투 실링, 개발자 경험 및 CLI 오케스트레이션.기능 사양 • 실행 게이팅 • 자체 무결성
기술 아키텍처사양 [TECH-001]–[TECH-005]: 핵심 역직렬화 엔진, 스트리밍 16KB SHA-256 해셔, 제공자 드라이버 및 공식 STRIDE 위협 모델.기술 사양 • 핵심 엔진 • 위협 모델
아키텍처 결정 기록봉투 암호화 대 클라이언트 측 DRM 및 제로 의존성 표준 라이브러리 설계를 문서화한 불변 ADR.ADR 색인 • ADR 001 (봉투 암호화) • ADR 002 (표준 라이브러리 전용)
프로젝트 로드맵 및 추적핵심 엔진, 제공자 및 CLI 전반에 걸친 순차적 3단계 전달 추적, 검증 기준 및 마일스톤 산출물.로드맵 • 1단계 • 2단계 • 3단계
Crystal API 참조완전한 대화형 타입 계층, 메서드 시그니처 및 컴파일러 생성 참조.API 참조