Shifrlash va API himoyasi: TLS, HSTS, PFS, sirlarni almashtirish
1) Tahdidlar va maqsadlar manzarasi
MitM hujumi ostida, trafikni ushlash, daungreed hujumlari, tokenlarni qalbakilashtirish, kalitlarning sizib chiqishi va uzoq umr ko’radigan sirlarni suiiste’mol qilish. Himoya maqsadlari:- Maxfiylik va yaxlitlik (TLS 1. 3 + kuchli shifrlar).
- Daungred/stripping himoyasi (HSTS, taqiqlangan versiyalar/shifrlar).
- Buzilishdagi zararni kamaytirish (PFS, qisqa TTL, tez rotatsiya).
- Mijoz/servisning ishonchli autentifikatsiyasi (mTLS/tokenlar) va izlanuvchanligi.
2) TLS bazis sifatida (server va servis-k-servis)
Versiyalar va shifrlar:- Andoza TLS 1. 3; TLS 1 ga ruxsat berish. 2 faqat muvofiqlik uchun. Oʻchirish 1. 1/1. 0.
- `TLS_AES_128_GCM_SHA256`, `TLS_AES_256_GCM_SHA384`, `TLS_CHACHA20_POLY1305_SHA256`.
- TLS 1 uchun. 2: faqat ECDHE AES-GCM/ChaCha20 va ECDSA/RSA imzosi bilan (masalan,’ECDHE-ECDSA-AES128-GCM-SHA256’).
- Server kalitlari: ECDSA P-256/P-384 (tezroq va qisqaroq) yoki RSA 2048 +/3072.
- mTLS uchun mijoz kalitlari: ECDSA P-256; o’z CA yoki HSM/KMS to’lovi orqali berish.
- OCSP stapling, afzal Must-Staple bayrogʻi va ALPN (HTTP/2/3) ni yoqing.
- Efemer almashinuvlari (ECDHE) bilan ta’minlanadi - server kaliti sizib chiqqan taqdirda ham, o’tgan sessiyalarni ochib bo’lmaydi.
- Statik DH/RSA asosiy shartnomasini majburan oʻchiring.
- ECH (Encrypted Client Hello), agar oldingi/CDN tomonidan qoʻllanilsa, SNIni yashiradi.
- HTTP/2/3 faqat kuchli shifrlar bilan; himoyalanmagan HTTP’ni taqiqlash, HTTPS’da tahrirlash.
3) HSTS vs TLS-stripping
HTTP Strict Transport Security’ni ildiz va pastki domenlarda yoqing:
Strict-Transport-Security: max-age=63072000; includeSubDomains; preloadDomenni HSTS preload roʻyxatiga joylashtiring.
Nashr qilishdan oldin toʻgʻriligini kuzating (qaytarish qiyin).
4) O’zaro autentifikatsiya: mTLS va/yoki tokenlar
mTLS mikroservis/ichki API o’rtasida: ikki tomonlama sertifikatlar, service mesh (Istio/Linkerd) yoki o’z PKI orqali avtomatik rotatsiya.
API mijozlari (mobil/sherik integratsiyalari): tokenlar (OAuth2/OIDC, JWT), yuqori-xavf uchun ixtiyoriy mTLS.
Ommaviy jabhalar uchun: TLS + qisqa yashaydigan OAuth2/OIDC tokenlar/DPoP.
5) Sertifikatlar va hayot siklini boshqarish
ACME-avtomatlashtirish (masalan, Let’s Encrypt/tashkiliy CA) tugashidan 30 kun oldin avto-yangilanishi bilan.
Sertifikatlarning qisqa umri (90 kundan ≤) + muddatlar monitoringi, alertlar va kanareya deploy paketlari.
Markazlashtirilgan PKI: ildiz/oraliq CA, CRL/OCSP, chiqarish va fikr auditi.
nginx namunasi (parcha):nginx ssl_protocols TLSv1. 3 TLSv1. 2;
ssl_ciphers TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256;
ssl_prefer_server_ciphers on;
ssl_ecdh_curve X25519:P-256:P-384;
ssl_stapling on; ssl_stapling_verify on;
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;6) Sirlarni almashtirish: prinsiplar va patternlar
Rotatsiya maqsadlari: portlash radiusini cheklash, suiiste’mol qilish vaqtini kamaytirish, cheksiz relizlarni ta’minlash.
Asosiy qoidalar:- Sirlarni faqat maxfiy menejerda saqlash (KMS/Vault/Cloud SM). Git/rasmlarda hech qanday sir yoʻq.
- Qisqa TTL va avtomatik rotatsiya: imzo kalitlari, DB parollari, provayderlarning API kalitlari.
- Ikki marta e’lon qilish (dual-key window): Eski va yangi kalitlar bir vaqtning o’zida aktiv.
- Version + kid (JWT/JWKS uchun), eski tokenlarni validatsiya qilish uchun «grace» oynasi.
- JWT-kalitlar (imzo/shifrlash), vebxuk va callback’larning HMAC-sirlari, DB parollari/hisoblari, keshlarga kredtlar (Redis), CI/CD tokenlari, Provayderlar sirlari (KYC/AML, to’lovlar, SMS/e-mail), avtomatika SSH-kalitlari.
Rejadan tashqari rotatsiya triggerlari: xodimlarning oqib ketishi, ishdan bo’shatilishi, yetkazib beruvchining o’zgarishi, tartibga soluvchining talablari.
7) JWT/JWKS: xavfsiz rolli overley
JWKS endpoint’ni joriy va kelajakdagi kalit bilan nashr eting (’kid’majburiy).
Rotatsiya tartib-taomillari:1. Yangi kalitni yaratish → JWKSga «ikkinchi» sifatida qoʻshish.
2. Imzochilarni yangilash → Yangi tokenlarni yangi kalit bilan chiqarish.
3. Eski TTL tokenlarini kutish → JWKS dan eski kalitni olib tashlash.
Qisqa TTL tokenlarini (masalan, 5-15 daqiqa) + qoʻshimcha tekshirish bilan refresh oqimlarini oʻrnating.
8) Sir-menejment amalda
KMS + envelope encryption: HSM/KMS uchun asosiy kalit, maʼlumotlar DEK oʻralgan holda shifrlanadi.
Vault/Cloud Secret Manager: DBga dinamik kreddlar (TTL bilan hisobotlarni chiqarish), davriy rotatsiya.
Kubernetes: External Secrets/Secrets Store CSI; etcd shifrlash; RBAC; sirlarni yozib olishni taqiqlash.
Rollar boʻyicha foydalanish: IAM/ABAC, eng kichik imtiyozlar prinsipi, apparat chegaralari (HSM, TPM).
To’liq audit: kim, qachon, nima uchun o’qidi/o’zgartirdi.
9) Perimetr ichidagi transport himoyasi
«Ichki tarmoq» ga ishonmang: hamma joyda TLS/mTLS (zero-trust).
Service mesh sertifikatlarni, qayta ishga tushirish va rotatsiyani, kuzatishni (mTLS andoza) avtomatlashtiradi.
TLS terminatsiyalarini minimallashtiring: faqat edge + shifrlangan east-west yoki shifrlash orqali.
10) TLS ustidagi API xavfsizlik siyosati
Rate limiting/DoS-himoya, vebxuk imzosini tekshirish (HMAC).
Content-Security-Policy/Referrer-Policy/X-Content-Type-Options для фронта.
kritik endpoint’lar uchun mTLS (to’lovlar, ma’muriy), sheriklar bo’yicha IP allow-list.
Replay-himoya: timestamp + nonce imzolangan soʻrovlarda, oynalar 5 daqiqadan oshmaydi.
11) Monitoring va testlar
TLS kuzatilishi: metriklardagi versiyalar/shifrlar, daungreed urinishlariga alerta, qo’l siqishlarining ko’payishi.
Skanerlar (CI/CD va muntazam ravishda prodda): qoʻllab-quvvatlanadigan shifrlar, sertifikatlar, HSTS, OCSP.
Chaos/DR mashqlari: sertifikatning tugashi, maxfiy menejerning yiqilishi, imzo kalitining buzilishi - javob rejalarini tekshiring.
12) Harakat qilish tartib-taomillari
Kalitni buzish: sertifikatni darhol qaytarib olish/JWKSdan kalitni olib tashlash, zaxira tokenga burish, tokenlarni majburiy regeneratsiya qilish.
Uzaytirmasdan tugash: vaqtinchalik tanazzul (faqat ichki trafik), sertifikatlarni avtomatik ravishda qayta oʻrnatish.
Hodisa hisoboti: taymline, ta’sir ko’rsatilgan sub’ektlar, texnik. tafsilotlar, tuzatish choralari.
13) Tezkor tekshirish chek-varaqasi (prod-ready)
- Faqat TLS 1. 3 (+ 1. 2 legasi uchun), shifrlarning qat’iy ro’yxati.
- HSTS с `preload`, OCSP stapling, ALPN.
- PFS uchun ECDHE; ECDSA P-256/384 yoki RSA 3072.
- mTLS klaster ichida/kritik xizmatlar o’rtasida.
- JWKS + kid, qisqa TTL tokenlari, rotatsiya rejasi.
- Sirlar - faqat KMS/Vault, avto-rotatsiya DB/provayderlarda.
- Sertifikatlarni avtomatik yangilash (ACME), 30 kun ichida alertlar.
- Xavfsizlik sarlavhalari va zaif shifrlarni tekshirish.
- Hujjatlashtirilgan runbook’i: rotatsiya, sharh, hodisalar.
Xulosa
API himoyasi TLS 1 ning kombinatsiyasidir. 3 + HSTS + PFS majburiy minimal va yetuk kalitlar va sirlarni boshqarish jarayonlari sifatida. Xizmatlar o’rtasida mTLS qo’shing, KMS/Vault/mesh orqali chiqarishni/rotatsiyani avtomatlashtiring, kalitlarni almashtirishda qisqa TTL va «ikki oynalar» ni saqlang va siz mahsulotning mavjudligi va tezligini buzmasdan ushlab turish, daungred va oshkor bo’lgan sirlarni suiiste’mol qilish xavfini kamaytirasiz.
