Bezpieczeństwo ekosystemu
(Sekcja: Ekosystem i sieć)
1) Cele i zasady
Celem jest zapewnienie poufności, integralności i dostępności (CIA) usług i danych przy jednoczesnym skalowaniu ekosystemu i zmieniających się protokołów.
Zasady:- Zero-Trust według projektu: nieufne sieci/hosty, sprawdź każde działanie według kontekstu.
- Najmniejszy przywilej (PoLP) i potrzeba poznania: dostęp jest minimalny i wymierny.
- Zapewnienie kryptograficzne: podpisy/zaświadczenia/kotwice zamiast „domyślnego zaufania”.
- Domyślnie: sygnały bezpieczeństwa są wbudowane w protokoły.
- Defense-in-Depth: zabezpieczenie warstwowe (identichnost → zestaw → dannyye → vypusk).
- Bezpieczne domyślnie: domyślnie „zamknięte”, wprost zezwala na listy.
2) Model zagrożenia (wysoki poziom)
Sieć i obwód: powodzie DoS/L7, nadużycia BGP/Anycast, MITM, spoofing DNS.
Tożsamości i klucze: kluczowy kompromis, wrażliwe żetony, ponowna próba podpisu.
Dane: eksfiltracja PII, wyciek telemetrii, manipulacja metadanymi.
Łańcuch dostaw: złośliwe zależności/budowle, artefakt substytucja, wrażliwe SDK.
Protokoły/mosty: reorgs, fałszywe dowody, opóźnienia DA, powtórzyć komunikaty cross-chain.
Ryzyko wewnętrzne: błędy konfiguracyjne, nadmierne prawa, słabe procesy deprecjacji.
3) Tożsamość i zaufanie
Tożsamości: 'org _ id',' peer _ id', konta serwisowe, użytkownicy.
Uwierzytelnianie: mTLS (X.509), OAuth2/OIDC (krótkotrwały JWT, DPoP/PoP), WebAuthn dla ludzi.
Autoryzacja: wielopoziomowe RBAC/ABAC + policy-as-code (OPA/Rego).
Możliwość negocjowania podczas potrząsania rękami: deklarowanie wersji, QoS, limity i dozwolone domeny.
Polityka (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) Bezpieczeństwo sieci i transport
Млика/edge: WAF, L7-rate-limit, circuit-breaker, outlier-ejection.
Szyfrowanie ruchu: TLS1. 3/mTLS, PFS, surowe szyfry, QUIC/HTTP/3.
Izolacja: segmentacja środowisk (prod/stage/dev), prywatne siatki, kontrola wyjścia, zapora eBPF.
P2P: podpisy wiadomości, okna anty-replay, kontrola peer (zezwalaj/odmawiaj), limity plotek.
Przykład reguł sieci
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) Ochrona danych
Klasy danych: P0 (płatność/klucze), P1 (operacyjne), P2 (dziennik/diagnostyka).
Szyfrowanie: odpoczynek (AES-GCM/ChaCha20-Poly1305), klucze per-region/najemca, HSM/KMS, szyfrowanie koperty.
tokenizacja i pseudonimizacja PII; Zakaz PII w telemetrii/etykietach.
Rezydencja: regionalne wolty i magazyny przedmiotowe, whitelist eksportowych.
Integralność: hash adresowanie artefaktów, czasopismo merklizacja.
Katalog zasad przechowywania (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) Zarządzanie tajemnicami i kluczem
Generacja w HSM/KMS, rotacja w harmonogramie i zdarzeniu (kompromis/zwolnienie).
Rozdzielenie mocy (SoD) i M-of-N dla operacji krytycznych.
Sekrety tylko w tajnym menedżerze (nie w zmiennych środowiskowych/repozytoriach).
Klucz do szpilek dla mTLS międzyresortowych, OCSP-stapling/CRL.
Polityka kluczowa
yaml keys:
rotation_days: 30 pinning: true revoke_on:
- "suspicious_use"
- "employee_exit"
audit_required: ["signing_keys","bridge_keys"]
7) Bezpieczny łańcuch dostaw (podejście SLSA)
Pochodzenie: podpisy artefaktów (sigstore/cosign), SBOM, certyfikat montażu.
Izolacja montażowa: hermetyczne budulce, odtwarzalność, zależności skanowania (SCA).
Polityka wydania: kanaryjski/niebiesko-zielony, bramy SLO, kill-switch, hash rollbacks.
SDK/client: CSP/Referrer-Policy, atrybuty integralności, anty-manipulator.
yaml supply_chain:
require_sbom: true attestations: ["build","test","scan"]
deploy:
strategy: "canary"
gates: { error_rate_pct: 0. 4, tti_p95_ms: 2500 }
8) Dostęp i przywileje
RBAC/ABAC - prawa ról/atrybutów, tymczasowe eskalacje (JIT)
Usługi: czytać/pisać/admin rozgraniczenie, zakaz praw wildcard.
Operatorzy: break-glass access przez multifactor, z nagrywaniem sesji.
Audyt: niezmienione dzienniki (tylko dodatek), korelacja 'request _ id/trace _ id'.
Rejestr ról/praw (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) Obserwowalność, SLI/SLO i sygnały bezpieczeństwa
SLI (rdzeń):- AuthN/AuthZ Sukces%, Anomalous Odmowa%;
- Key/Cert Drift (wygaśnięcie/niezgodność);
- Naruszenie integralności (podpisy, CSP);
- Sygnały nadużyć: limity prędkości, DoS/skanowanie zdarzeń;
- Naruszenie rezydencji danych;
- Błąd w budżecie Burn ма P0.
- Auth p95 ≤ 200 си, sukces ≥ 99. 95%;
- Zdarzenia podpisane ≥ 99. 9%;
- Naruszenie CSP ≤ 0. 05% trafień;
- Naruszenie prawa pobytu = 0.
Даборна: Security Postover, Keys & Certs, Supply Chain, Abuse/DoS, Residency & DLP.
10) Odpowiedź na incydent (IR) i SOAR
Gotowość: runbook'i na P0/P1, odpowiedzialny 24 × 7, kanały komunikacyjne.
Wykrywanie: podpisy/zasady zachowania, korelacja w SIEM, automatyzacja SOAR.
Przechowywanie: token/key block, odmowa listy trasy, tematy kwarantanny.
Eliminacja/odzyskiwanie: obroty, plastry, ponowna instalacja, odzyskiwanie z migawek.
pośmiertnie: w ciągu 72 godzin, miejsca działania, aktualizacje polityki/testów.
Zasady SOAR (przykład)
yaml soar:
playbooks:
key_compromise:
trigger: ["anomalous_sign","suspicious_kid"]
actions: ["revoke_key","rotate","notify_owners","enable_strict_mode"]
11) Zgodność i miejsce zamieszkania
Wymogi regulacyjne: przechowywanie/usuwanie danych (DSR), sprawozdawczość, certyfikacja RNG/kryptografia.
Miejsce zamieszkania: klucze i wolty regionalne, eksport według białych list.
Procesy: regularne audyty, dziennik zmian, harmonogram krytycznych polityk.
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 i solidność
Cele RPO/RTO: usługi P0 - RPO ≤ 5 min, RTO ≤ 15 min.
Replikacja geograficzna: aktywa-zobowiązania/aktywa-aktywa, okresowe testy odzyskiwania.
Tryb izolowany: tylko sfinalizowany, tylko pamięć podręczna, ograniczenie „drogich” operacji.
Kanały kopii zapasowych: niezależny IX/dostawcy, szyfrowane tunele międzyregionalne.
Polityka DR
yaml dr:
rpo_min: 5 rto_min: 15 exercises: ["quarterly-failover","annual-blackhole"]
13) Wskaźniki bezpieczeństwa i badania
Bezpieczeństwo chaosu: теста MITM/DNS-poison/packet-loss/latency.
Red/Blue Team: scenariusze phishingu, porwanie żetonów, zastrzyki łańcucha dostaw.
Tabletki-wiertarki: decyzyjne i komunikacyjne modelowanie.
Autotests: SAST/DAST/IAST, protokoły zamrażania, linery zasad.
14) Playbooks incydentów
A. Kompromis kluczowego członka
1. 'revoke _ key' → 'rotate' → aktualizacja zaufanego rejestru;
2. włączanie podpisów w trybie ścisłym; 3) powtórzyć krytyczne partie; 4) zgłosić się do partnerów.
B. Naruszenie prawa pobytu
1. Bezpośredni blok eksportowy; 2) przeredagowanie/usunięcie; 3) powiadamia inspektora ochrony danych/o zgodności; 4) testy aktualizacji.
C. Wtrysk łańcucha dostaw
1. Hash rollback, kill-switch; 2) zatwierdza SBOM/zaświadczenie; 3) obrót żetonów CI; 4) pośmiertnie.
D. Masowa powódź DoS/L7
1. Aktywacja limitów zwiększonej szybkości/WAF; 2) Anycast-drebling; 3) priorytety P0; 4) komunikacja z dostawcami.
E. Polityka dryfowania/umowy
1. Włącz odmowę dla schematów niezgodnych ze wspólnym rynkiem; 2) zwolnienie adapterów; 3) aktualizować lintery/rejestry.
15) Lista kontrolna wdrażania (według etapów)
1. Wprowadź model tożsamości (org/peer/service/user) i mTLS + OIDC.
2. Opisz zasady-as-code (RBAC/ABAC), PoLP i eskalację JIT.
3. Szyfrowanie danych „w drodze” i „w spoczynku”, tokenizacja PII, konfiguracja rezydencji.
4. Włącz ochronę łańcucha dostaw: podpisy artefaktowe, SBOM, atestacja, kanaryjski + kill-switch.
5. Skonfiguruj limity WAF/stawki/osłony DoS i kontrolę wycieków.
6. Podnieść SIEM/SOAR, opisać SLI/SLO, alerty i deski rozdzielcze bezpieczeństwa.
7. Reguluj obroty klucza/certa i dostęp do szkła.
8. Wypracuj DR/BCP i odizolowane tryby, ćwiczenia prowadzenia.
9. Organizowanie audytu/pozyskiwania drewna i regularnych poubojów.
10. Przegląd polityki co kwartał, automatyczne audyty.
16) Słownik
Zero-Trust to model, w którym każda akcja jest sprawdzana niezależnie od lokalizacji.
PoLP jest zasadą minimalnych niezbędnych praw.
Kodeks polityki - kontrola dostępu/zasady poprzez politykę deklaracyjną.
SLSA - poziomy bezpieczeństwa łańcucha dostaw oprogramowania.
RPO/RTO - Cele dotyczące utraty/odzyskiwania danych.
DPoP/PoP - powiązanie tokena z określonym kanałem/klientem TLS.
Tryb ścisły - tryb zakazujący nieodpowiednich systemów/podpisów.
Najważniejsze: bezpieczeństwo ekosystemu to nie „firewall i TLS”, ale połączenie zaufania kryptograficznego, ścisłej polityki dostępu, obserwowalności i dyscypliny operacyjnej. Po Zero-Trust, PoLP, kontroli łańcucha dostaw i wymiernych SLO zamienia bezpieczeństwo w zarządzaną praktykę inżynieryjną, która zapobiega zakłóceniom, atakom i zmianom regulacyjnym.