생태계 보안
(섹션: 생태계 및 네트워크)
1) 목표와 원칙
목표는 생태계를 확장하고 프로토콜을 발전시키면서 서비스 및 데이터의 기밀 유지, 무결성 및 가용성 (CIA) 을 보장하는 것입니다.
원칙:- 의도적으로 제로 트러스트: 불신 네트워크/호스트, 컨텍스트별로 각 작업을 확인하십시오.
- 최소 특권 (PoLP) 및 알아야 할 사항: 액세스는 최소화되고 측정 가능합니다.
- 암호화 보증: "기본 신뢰" 대신 서명/증명/앵커.
- 기본적으로 관찰: 보안 신호는 프로토콜에 내장되어 있습니다.
- 심층 방어: 계층화 된 보호 (identichnost → set → dannyye → vypusk).
- 기본값으로 보안: 기본적으로 "닫기", 명시 적 허용 목록.
2) 위협 모델 (높은 수준)
네트워크 및 주변: DoS/L7 홍수, BGP/Anycast 남용, MITM, DNA 스푸핑.
식별 및 키: 주요 타협, 취약한 토큰, 서명 재 시도.
데이터: PII 유출, 원격 측정 누출, 메타 데이터 조작.
공급망: 악의적 인 종속성/빌드, 아티팩트 대체, 취약한 SDK.
프로토콜/브리지: 조직, 가짜 증거, DA 지연, 크로스 체인 메시지 재생.
내부 위험: 구성 요소의 오류, 과도한 권리, 약한 소멸 과정.
3) 정체성과 신뢰
식별: 'org _ id', 'peer _ id', 서비스 계정, 사용자.
인증: mSL (함수 509), OAuth2/OIDC (단기 JWT, DPoP/PoP), 사람들을위한 WebAuthn.
승인: 다단계 RBAC/ABAC + 코드 정책 (OPA/Rego).
악수 할 때의 기능 협상: 버전, QoS, 제한 및 허용 도메인 선언.
정책 (YAML)
yaml authz:
roles:
operator. p0: [payouts:write, events:subscribe, bridge:finalize]
reader. api: [rpc:read, catalog:read]
abac:
- when: {org_tier: "gold", region: "eu"}
allow: [qos:P0, data_class:P1]
tokens:
ttl_s: 900 rotation: "7d"
4) 네트워크 보안 및 운송
가장자리: WAF, L7 속도 제한, 회로 차단기, 특이 치 배출.
트래픽 암호화: TLS1. 3/mSL, PFS, 엄격한 암호, QUIC/해/3.
격리: 환경 분할 (prod/stage/dev), 개인 그리드, 탈출 제어, eBPF 방화벽.
P2P: 메시지 서명, 재생 방지 창, 피어 컨트롤 (허용/거부), 가십 제한.
네트워크 규칙의 예
yaml network:
ingress:
allow: ["443/tcp","443/udp"] # HTTPS/HTTP3 deny: [""]
egress:
allow_domains: [".trusted. psp",".oracle","crl. ocsp."]
waf:
block: ["sql-injection","xss","proto-smuggling"]
dos:
rps_per_ip: 200 burst: 400
5) 데이터 보호
데이터 클래스: P0 (결제/키), P1 (운영), P2 (로그/진단).
암호화: 휴식 시간 (AES-GCM/ChaCha20-Poly1305), 지역 별/테넌트 키, HSM/KMS, 엔벨로프 암호화.
PII 토큰 화 및 가명; 원격 측정/라벨의 PII 금지.
거주지: 지역 볼트 및 물체 창고, 수출 화이트리스트.
무결성: 아티팩트의 해시 주소 지정, 저널 머클리징.
저장 정책 카탈로그 (SQL)
sql
CREATE TABLE data_policies(
data_class TEXT, region TEXT, residency TEXT, kms_key TEXT, retention_days INT,
pii BOOLEAN, export_whitelist TEXT[]
);
6) 비밀과 키 관리
HSM/KMS 생성, 일정 및 이벤트 교체 (타협/해고).
중요한 작업을위한 전력 분리 (SoD) 및 M-of-N.
비밀 관리자에서만 비밀 (환경 변수/리포지토리가 아님).
서비스 간 mSL, OCSP-stapling/CRL을위한 키 피닝.
주요 정책
yaml keys:
rotation_days: 30 pinning: true revoke_on:
- "suspicious_use"
- "employee_exit"
audit_required: ["signing_keys","bridge_keys"]
7) 보안 공급망 (SLSA 접근 방식)
증명: 아티팩트 (sigstore/cosign), SBOM, 어셈블리 증명의 서명.
조립 격리: 밀폐 빌드, 재현성, 스캔 종속성 (SCA).
릴리스 정책: 카나리아/청록색, SLO 게이트, 킬 스위치, 해시 롤백.
SDK/클라이언트: CSP/Referrer-Policy, 무결성 속성, 변조 방지.
yaml supply_chain:
require_sbom: true attestations: ["build","test","scan"]
deploy:
strategy: "canary"
gates: { error_rate_pct: 0. 4, tti_p95_ms: 2500 }
8) 액세스 및 권한
RBAC/ABAC-역할/속성 권리, 임시 에스컬레이션 (JIT)
서비스: 읽기/쓰기/관리 구분, 와일드 카드 권리 금지.
운영자: 세션 기록과 함께 다중 인자에 의한 브레이크 글래스 액세스.
감사: 변경되지 않은 로그 (추가 전용), 상관 관계 '요청 _ id/추적 _ id'.
역할/권리 등록 (SQL)
sql
CREATE TABLE roles(name TEXT PRIMARY KEY, description TEXT);
CREATE TABLE permissions(role TEXT, resource TEXT, action TEXT, PRIMARY KEY(role,resource,action));
9) 관찰 가능성, SLI/SLO 및 안전 신호
SLI (핵심):- AuthN/AuthZ 성공%, 변칙적 거부%;
- 키/인증 드리프트 (만료/부적합);
- 무결성 위반 (서명, CSP);
- 남용 신호: 속도 제한 적중, DoS/스캔 이벤트;
- 데이터 레지던시 위반;
- 오류 예산 번호는 P0입니다.
- Auth p95 소 200 95%;
- 서명 된 이벤트는 99 이상입니다 9%;
- 위반 CSP 05% 적중;
- 거주 위반 = 0.
보안 자세, 키 및 서트, 공급망, 학대/DoS, 레지던시 및 DLP.
10) 사고 대응 (IR) 및 SOAR
준비 상태: 런북 '및 P0/P1에서 24 × 7, 통신 채널을 담당합니다.
탐지: 서명/행동 규칙, SIEM의 상관 관계, SOAR 자동화.
격리: 토큰/키 블록, 경로 목록 거부, 검역 주제.
박탈/복구: 회전, 패치, 재 조립, 스냅 샷으로부터의 복구.
사후: 72 시간 이내에 조치 사이트, 정책/테스트 업데이트.
SOAR 규칙 (예)
yaml soar:
playbooks:
key_compromise:
trigger: ["anomalous_sign","suspicious_kid"]
actions: ["revoke_key","rotate","notify_owners","enable_strict_mode"]
11) 준수 및 거주
규제 요구 사항: 데이터 저장/삭제 (DSR), 보고, RNG/암호화 인증.
거주지: 지역 별 열쇠 및 볼트, 흰색 목록으로 수출.
프로세스: 정기적 인 감사, 로그 변경, 중요한 정책에 대한 타임 락.
yaml residency:
eu: { pii: "tokenized", export: ["anonymized_metrics"] }
uk: { pii: "tokenized", export: [] }
compliance:
dsr:
erase_sla_days: 30 export_sla_days: 30
12) DR/BCP 및 견고성
RPO/RTO 대상: P0 서비스-RPO
지리 복제: 자산 책임/자산 자산, 주기적 복구 테스트.
격리 된 모드: 최종 전용, 캐시 전용, "비싼" 작업의 제한.
백업 채널: 독립적 인 IX/제공 업체, 암호화 된 지역 간 터널.
DR 정책
yaml dr:
rpo_min: 5 rto_min: 15 exercises: ["quarterly-failover","annual-blackhole"]
13) 안전 지표 및 테스트
카오스-보안: тест달러 MITM/DNS- 독/패킷 손실/대기 시간.
레드/블루 팀: 피싱 시나리오, 토큰 하이재킹, 공급망 주입.
탁상 훈련: 의사 결정 및 통신 모델링.
자동 테스트: SAST/DAST/IAST, 퍼지 프로토콜, 정책 라인터.
14) 사건 플레이 북
A. 회원 키 타협
1. 'revoke _ key' → '회전' → 신뢰할 수있는 레지스트리 업데이트;
2. 엄격한 모드 서명 활성화; 3) 중요한 배치를 재생합니다. 4) 파트너에게보고하십시오.
거주의 B. 위반
1. 즉각적인 수출 차단; 2) 수정/삭제; 3) DPO/규정 준수에 알리십시오. 4) 업데이트 테스트.
C. 공급망 주입
1. 해시 롤백, 킬 스위치; 2) SBOM/attestation의 유효성 검사; 3) CI 토큰의 회전; 4) 사후.
D. 매스 도스/L7 홍수
1. 향상된 속도 제한/WAF의 활성화; 2) 애니 캐스트 드레 블; 3) P0 우선 순위; 4) 공급자와의 커뮤니케이션.
E. 드리프트 정책/계약
1. 호환되지 않는 스키마에 대한 거부 사항 사용하기 2) 어댑터 방출; 3) 라인터/레지스터 업데이트.
15) 구현 점검표 (단계별)
1. 아이덴티티 모델 (org/peer/service/user) 을 입력하십시오.
2. 코드 정책 (RBAC/ABAC), PoLP 및 JIT 에스컬레이션을 설명하십시오.
3. "이동 중" 및 "휴식 중" 인 암호화 데이터는 PII를 토큰 화하고 거주지를 구성합니다.
4. 공급망 보호 사용: 아티팩트 서명, SBOM, 증명, 카나리아 + 킬 스위치.
5. WAF/속도 제한/DoS 가드 및 탈출 제어 설정.
6. SIEM/SOAR를 올리고 SLI/SLO, 경고 및 보안 대시 보드를 설명하십시오.
7. 키/인증 회전 및 브레이크 글래스 액세스를 조절하십시오.
8. DR/BCP 및 격리 된 모드를 수행하고 연습을 수행하십시오.
9. 감사/로깅 및 정기적 인 사후 관리를 조직하십시오.
10. 분기별로 정책을 검토하고 감사를 자동화하십시오.
16) 용어집
Zero-Trust는 위치에 관계없이 각 작업을 확인하는 모델입니다.
PoLP는 필요한 최소 권리의 원칙입니다.
코드 정책-선언적 정책을 통한 액세스 제어/규칙.
SLSA-소프트웨어 공급망 보안 수준.
RPO/RTO-데이터 손실/복구 시간 목표.
DPoP/PoP-토큰을 특정 TLS 채널/클라이언트에 바인딩합니다.
엄격한 모드-부적절한 체계/서명을 금지하는 모드.
결론: 생태계 보안은 "방화벽 및 TLS" 가 아니라 암호화 신뢰, 엄격한 액세스 정책, 관찰 가능성 및 운영 규율의 융합입니다. Zero-Trust, PoLP, 공급망 제어 및 측정 가능한 SLO에 이어 보안은 중단, 공격 및 규제 변경에 저항하는 관리 엔지니어링 관행으로 전환됩니다.