ეკოსისტემის უსაფრთხოება
(განყოფილება: ეკოსისტემა და ქსელი)
1) მიზნები და პრინციპები
მიზანია უზრუნველყოს სერვისებისა და მონაცემების კონფიდენციალურობა, მთლიანობა და ხელმისაწვდომობა (CIA) ეკოსისტემის და ოქმების ევოლუციის მასშტაბის დროს.
პრინციპები:- Zero-Trust by Design: უნდობლობა ქსელების/მასპინძლებისთვის, შეამოწმეთ თითოეული მოქმედება კონტექსტით.
- Least Privilege (PoLP) და need-now: წვდომა მინიმალური და გაზომილია.
- Cryptographic Assurance: ხელმოწერები/სერტიფიკაცია/კითხვარები „ნაგულისხმევი ნდობის“ ნაცვლად.
- Observability by default: უსაფრთხოების სიგნალები ინტეგრირებულია ოქმებში.
- Defense-in-Depth: ფენიანი თავდაცვა (თვითმყოფადობა - ქსელი - მონაცემები, გამოცემა).
- Secure-by-default: ნაგულისხმევი „დახურული“, აშკარა ალოუ ფურცლები.
2) საფრთხის მოდელი (მაღალი დონე)
ქსელი და პერიმეტრი: DoS/L7 ფლეშ, BGP/Anycast ბოროტად გამოყენება, MITM, DNS ჩანაცვლება.
იდენტურობა და გასაღებები: გასაღებების კომპრომისი, დაუცველი ნიშნები, ხელმოწერების განმეორება.
მონაცემები: PII ფილტრაცია, ტელემეტრიული გაჟონვა, მეტამონაცემების მანიპულირება.
მიწოდების ქსელი: მავნე დამოკიდებულება/ბილეთები, არტეფაქტების ჩანაცვლება, დაუცველი SDK.
ოქმები/ხიდები: რეორგები, ყალბი აუზები, DA შეფერხებები, ჯვარედინი ჯაჭვის შეტყობინებები.
შიდა რისკები: ჩამორთმევის შეცდომები, გადაჭარბებული უფლებები, დეპრესიის სუსტი პროცესები.
3) იდენტურობა და ნდობა
იდენტურობა: 'org _ id', 'peer _ id', მომსახურების ანგარიშები, მომხმარებლები.
ავთენტიფიკაცია: mTLS (X.509), OAuth2/OIDC (მოკლემეტრაჟიანი JWT, DPOP/PoP), WebAuthn ადამიანებისთვის.
საავტორო უფლებები: მრავალ დონის RBAC/ABAC + policy-as-code (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) ქსელის უსაფრთხოება და ტრანსპორტი
Шлюзы/edge: WAF, L7-rate-limit, circuit-breaker, outlier-ejection.
ტრაფიკის დაშიფვრა: TLS1. 3/mTLS, PFS, მკაცრი ciphers, QUIC/HTTP/3.
იზოლაცია: მედიის სეგმენტი (stage/dev), პირადი ქსელები, egress კონტროლი, eBPF-firewall.
P2P: შეტყობინებების ხელმოწერები, ანტი-replay ფანჯარა, სუფრის კონტროლი (allow/deny), gossip ლიმიტები.
ქსელის წესების მაგალითი
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 (ჟურნალი/დიაგნოზი).
დაშიფვრა: at-rest (AES-GCM/ChaCha20-Poly1305), გასაღებები per-region/tenant, HSM/KMS, envelope დაშიფვრა.
Tokenization და ფსევდონიმი 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 კრიტიკული ოპერაციებისთვის.
საიდუმლოებები მხოლოდ საიდუმლო მენეჯერში (არა ცვლადი გარემოში/საცავებში).
Key pinning ოფშორული mTLS, OCSP-stapling/CRL.
გასაღების პოლიტიკა
yaml keys:
rotation_days: 30 pinning: true revoke_on:
- "suspicious_use"
- "employee_exit"
audit_required: ["signing_keys","bridge_keys"]
7) უსაფრთხო მიწოდების ქსელი (SLSA მიდგომა)
Provenance: ხელმოწერები (sigstore/cosign), SBOM, შეკრების სერთიფიკატი.
შეკრების იზოლაცია: ჰერმეტული შესყიდვები, რეპროდუქცია, სკან დამოკიდებულებები (SCA).
გამოშვების პოლიტიკა: canary/blue-green, SLO კარიბჭე, kill-switch, hash გამოტოვება.
SDK/კლიენტი: CSP/Referrer-Policy, integrity ატრიბუტები, integrity-tamper.
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).
სერვისები: კითხვის/ჩაწერის/ადმინის დემარკაცია, ველური უფლებების აკრძალვა.
ოპერატორები: break-glass წვდომა მულტიფაქტორზე, სხდომის ჩანაწერებით.
აუდიტი: უცვლელი ჟურნალები (append-only), კორელაცია 'request _ id/trace _ 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 Success%, Anomalous Deny%;
- Key/Cert Drift (გაწმენდა/შეუსაბამობა);
- Integrity Violations (ხელმოწერები, CSP);
- Abuse Signals: rate-limit hits, DoS/scan events;
- Data Residency Violations;
- Error Budget Burn по P0.
- Auth p95 ≤ 200 мс, Success ≥ 99. 95%;
- ხელმოწერილი მოვლენები - 99. 9%;
- CSP დარღვევები 0. ჰიტების 05%;
- რეზიდენციის დარღვევა = 0.
Дашборды: Security Posture, Keys & Certs, Supply Chain, Abuse/DoS, Residency & DLP.
10) რეაგირება ინციდენტებზე (IR) და SOAR
მზადყოფნა: runbook 'და P0/P1, პასუხისმგებელი 24 × 7, საკომუნიკაციო არხებზე.
გამოვლენა: ხელმოწერები/ქცევითი წესები, კორელაცია SIEM- ში, SOAR ავტომატიზაცია.
შეკავება: ნიშნების/გასაღებების ბლოკი, მარშრუტების დენის სია, კვარანტინის ტოპები.
ერადიკაცია/აღდგენა: როტაცია, პატჩი, გადაკეთება, სნაიპშოტების აღდგენა.
პოსტ-mortem: 72 საათის განმავლობაში, სამოქმედო აიტემი, პოლიტიკოსის/ტესტების განახლება.
SOAR წესები (მაგალითი)
yaml soar:
playbooks:
key_compromise:
trigger: ["anomalous_sign","suspicious_kid"]
actions: ["revoke_key","rotate","notify_owners","enable_strict_mode"]
11) შესაბამისობა და რეზიდენცია
მარეგულირებელი მოთხოვნები: მონაცემთა შენახვა/მოცილება (DSR), მოხსენებები, RNG/კრიპტოგრაფიის სერტიფიკაცია.
რეზიდენცია: per-region გასაღებები და ვოლტები, ექსპორტი თეთრი სიების მიხედვით.
პროცესები: რეგულარული აუდიტი, ცვლილების ჟურნალი, timelock კრიტიკულ პოლიტიკოსებზე.
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 - 5 წუთი, RTO - 15 წთ
Geo რეპლიკაცია: აქტივი/აქტივი, აღდგენის პერიოდული ტესტები.
იზოლირებული რეჟიმი: finalized-only, cache-only, „ძვირადღირებული“ ოპერაციების შეზღუდვა.
სარეზერვო არხები: დამოუკიდებელი IX/პროვაიდერები, დაშიფრული ინტერრეგიონალური გვირაბები.
პოლიტიკა DR
yaml dr:
rpo_min: 5 rto_min: 15 exercises: ["quarterly-failover","annual-blackhole"]
13) მეტრიკა და უსაფრთხოების ტესტირება
Chaos-security: тесты MITM/DNS-poison/packet-loss/latency.
Red/Blue Team: ფიშინგის სკრიპტები, ნიშნების ქურდობა, supply-chain ინექციები.
Tabletop-drills: გადაწყვეტილებებისა და კომუნიკაციების მიღების მოდელირება.
Autostes: SAST/DAST/IAST, პროტოკოლების ფუზინგი, ლინტერი პოლიტიკოსი.
14) ინციდენტების ფლეიბუკი
A. მონაწილის გასაღები
1. 'revoke _ key' rotate '- ს შეუძლია განაახლოს ნდობის რეესტრი;
2. ჩართეთ ხელმოწერების მკაცრი რეჟიმი; 3) კრიტიკული ბრძოლების განმეორება; 4) პარტნიორების ანგარიში.
B. რეზიდენციის დარღვევა
1. დაუყოვნებელი ექსპორტის ბლოკი; 2) redaction/მოცილება; 3) აცნობეთ DPO/Compliance; 4) ტესტების განახლება.
C. Supply ინექცია
1. გამოტოვება hash, kill-switch; 2) გადახედეთ SBOM/სერტიფიკაციას; 3) ტოქსინების როტაცია CI; 4) პოსტ-mortem.
დ. მასობრივი DoS/L7 ფლეშ
1. გაძლიერებული ლიმიტების გააქტიურება/WAF; 2) Anycast drebling; 3) პრიორიტეტული P0; 4) კომუნიკაცია პროვაიდერთან.
E. დრიფტის პოლიტიკოსი/კონტრაქტები
1. ჩართეთ დენი შეუთავსებელი სქემებისთვის; 2) გადამყვანების გამოშვება; 3) განაახლეთ საბრძოლო მასალები/რეესტრები.
15) განხორციელების სია (ნაბიჯებით)
1. შეიყვანეთ იდენტურობის მოდელი (org/peer/service/user) და mTLS + OIDC.
2. აღწერეთ პოლიტიკა-as-code (RBAC/ABAC), PoLP და JIT ესკალაცია.
3. დაშიფვრა მონაცემები „გზაზე“ და „მარტო“, ტოკნიზირება PII, ამ რეზიდენციის უზრუნველყოფა.
4. ჩართეთ Supply-chain დაცვა: არტეფაქტების ხელმოწერები, SBOM, სერტიფიკაცია, კანარი + კილ-სვიტჩი.
5. პარამეტრი WAF/Rate-limits/DoS გვარდიები და egress კონტროლი.
6. ასწიეთ SIEM/SOAR, აღწერეთ SLI/SLO, ალერტები და უსაფრთხოების დაშბორდები.
7. რეგულირება კლავიშების/სერიების როტაციას და break-glass წვდომას.
8. შეიმუშავეთ DR/BCP და იზოლირებული რეჟიმები, ჩაატარეთ სავარჯიშოები.
9. მოაწყეთ აუდიტი/ლოჯისტიკა და რეგულარული პოსტ-mortems.
10. გადახედეთ პოლიტიკას კვარტალურად, ავტომატიზირებული შემოწმება.
16) გლოსარიუმი
Zero-Trust არის მოდელი, სადაც თითოეული მოქმედება შემოწმებულია ადგილმდებარეობის მიუხედავად.
PoLP არის მინიმალური საჭირო უფლებების პრინციპი.
Policy-as-Code - წვდომის/წესების მენეჯმენტი დეკლარაციული პოლიტიკის საშუალებით.
SLSA არის პროგრამული უზრუნველყოფის მიწოდების ჯაჭვის უსაფრთხოების დონე.
RPO/RTO - მონაცემთა დაკარგვის/აღდგენის დროის მიზნობრივი მნიშვნელობები.
DPOP/PoP - ნიშნის დაკავშირება კონკრეტულ TLS არხზე/კლიენტზე.
მკაცრი რეჟიმი არის რეჟიმი, რომელიც კრძალავს შეუსაბამო სქემებს/ხელმოწერებს.
შედეგი: ეკოსისტემის უსაფრთხოება არ არის „ოფშორული ეკრანი და TLS“, არამედ კრიპტოგრაფიული ნდობის შენადნობი, დაშვების მკაცრი პოლიტიკოსი, დაკვირვება და ოპერაციული დისციპლინა. Zero-Trust, PoLP, supply-chain კონტროლისა და გაზომილი SLO- ს შემდეგ უსაფრთხოება გადაიქცევა კონტროლირებად საინჟინრო პრაქტიკაში, მდგრადია ჩავარდნების, შეტევებისა და მარეგულირებელი ცვლილებების მიმართ.