In Transit կոդավորումը
In Transit կոդավորումը
1) Սահմանումը և վերահսկման սահմանները
In transit-ի կոդավորումը տվյալների պաշտպանությունն է ցանցային փոխանցման բոլոր ուղիների վրա (wwww.ru սերվերի զննարկիչը, ռուսական ծառայության ծառայությունը, գործակիցը, դիմումի բազան, Դանասենտրը և ակտիվ հարձակումները ջրանցքի վրա չեն բացահայտել պարունակությունը և թույլ չեն տվել այն փոփոխել առանց դետեկտորի։
Ի՞ նչ ենք ծածկում 'հանրային և մասնավոր API (HTTTPS, gRPC), striming և բրոկերներ (Kafka, NATS, RabbitMQ), Direct Socket, բազաներ և ցանցեր ցանցում, CNN/միջև OD և ամպեր, RF հարցումներ, բջջային/IoT հաճախորդներ։
Ի՞ նչ չենք ծածկում, վերջնական կետերի վրա հարձակումները (երգչախմբի/զննարկչի փոխզիջում), դիմումների խոցելիությունը, գմբեթներից/ամբոխներից արտակը։ Սա որոշվում է առանձին վերահսկումներով (A&A, իրավունքների նվազեցում, at rest ծածկագրում, անվտանգ լոգիստիա)։
2) Սպառնալիքների և նպատակների մոդել
Ռիսկերը ՝ ընդհատումը/փոխարինումը (MITM), արձանագրության dungraid/ծածկագիր, կեղծ հավաստագրեր/SA, շարժիչների արտահոսք, RTI/մետատվյալներ, խառը բովանդակություն, TFC սխալ termination հավասարակշռության վրա, անապահով պարամետրեր։
Նպատակները
1. Գաղտնիությունը + ամբողջական է կրիպտոգրաֆիկ վավերացումով։
2. Դիմադրությունը Դաունգրադին (խիստ քաղաքականությունը և դելեգը)։
3. Կողմերի նույնականացումը (սերվերային, անհրաժեշտության դեպքում 'փոխադարձ)։
4. Կյանքի կառավարվող հավաստագրերի ցիկլը/108 և աուդիտ։
5. Արտադրողականության պրոֆիլը առանց անվտանգության փոխզիջումների։
3) Հիմնական սկզբունքները
TFC-ն ամենուր լռելյայն է։ Արտաքին և ներքին լուծումը ծածկագիր է։
Ժամանակակից տարբերակները։ TLS 1. 3 ինչպես ռուսական; TLS 1. 2 - միայն խիստ քաղաքական գործիչների դեպքում։ Անջատել 1։ 0/1. 1.
AEAD-ծածկագրերը PBS-ից։ AES-GCM կամ ChaCha20-Poly13.1; PMS-ը (EC) SYE-ի միջոցով։
Ծեր/քեյ-էքսչեյնջ։ X2.119 (105) կամ secp256r1 (P-256)։ RSA-բանալիները 2048, ավելի լավ ECDSA (P-256)։
MT.RU-ն այնտեղ, որտեղ վստահությունը բավարար չէ։ Ալգորիթմները, admin-API-ը, բրոկերները, հիմքերը փոխադարձ վավերացման միջոցով։
HSTS-ի համար։ Հարկադիր HTTPS + preload հասարակական ֆորումների համար։
«Ծածկագրենք-և-կրկին ծածկագիրը» գիտակցաբար։ TFC տերմինալը + re-կոդավորումը մինչև backends կամ passthrough-ի միջոցով, ընտրում ենք սպառնալիքների մոդելներով։
Crypto-agility. Հնարավոր է փոխել կորերը/սուիտները/տարբերակները զրոյական հոսքով։
4) Սթեք և սցենարներ
4. 1 HTTP/2, HTTP/3 (QUIC), gRPC, WebSocket
ALPN: h2 HTTP/2, h3 HTP/3 համար; արգելք h2c (առանց TFC)։
HTTP/3/QUIC: նվազեցնում է 0-RTT-ի ներկառուցված լատենտությունը և միգրացիան։ 0-RTT թույլ տալ ընտրովի (ռեպլեյի ռիսկը)։
GRPC: h2/h3; TFC-ը, oporational mTSA + 71-RPC հեղինակային իրավունքը։
AlekSocket: միայն w.ru ://; 220/հավասարակշռություններում ճիշտ ապգրեյդը և TIM-pinning տիրույթը։
4. 2 Հակավիրուսային ծառայություն և կապի ծառայություն
Sidecar-մոդելը (Istio/Linkerd և այլն)։ Ավտոմատ mTSA-ը, թույլտվության քաղաքականությունը, հավաստագրերի լուծումը։
SPIFFE/SPIRE. Ծառայությունների ապակենտրոնացված ինքնությունը (SPIFFE ID), SVID հավաստագրերը, կարճ TTL։
TFC պարամետրերը կենտրոնանում են։ Նվազագույնի հասցնել գենդերային տարբերությունը ծառայությունների կոդում։
4. 3 Բրոկերներ/սթրիմինգ/հերթեր
Kafka/NATS/RabbitMQ: TSA հաճախորդի համար ռուսական բրոքեր և բրոքեր։ հնարավորության դեպքում mTSA-ն է։
SASL-ը TFC-ի վերևում. Եթե mTRK-ը անհնար է, վավերացումը 'հոսանքներով/տրամաբանությամբ, բայց ծածկագրման ալիքը։
ACL-ը և դրա հեղինակային իրավունքը։ Կոդավորումը բացատրում է մուտքի վերահսկումը։
4. 4 Տվյալների և քեշի հիմքերը
PostgreSQL/MySQL/SQL Server: Ներառել TMS, CN/SAN, pin SA/արմատներ։
Redis/Memcached: Օգտագործել stunnel/TMS-rediss; plain-international արգելքը երկարության մեջ։
4. 5 Ցանց/թունելներ
COD/ամպերի միջև 'IPsec (IKEv2) կամ WireGuard (ժամանակակից պրիմիտիվների հավաքածու)։
Admin-հասանելիությունը 'SSH ժամանակակից KEH/ծածկագրերով; գաղտնաբառերի արգելքը, միայն բանալիները/SSO-ն։
4. 6 IV և ռուսական արձանագրություններ
DELOver HTTPS (DoH )/MSover TSA (DoT) հաճախորդների և հաճախորդների համար, որտեղ հնարավոր է։
Անջատել խառը բովանդակությունը։ Ոչինչ http : ///էջերում htps ://։
5) Հավաստագրեր, PKI և բաների կառավարում
PKI մոդելը 'արտաքին օրինագծերի համար - հանրային CA; ներքին ինտեգրման համար 'սեփական CA կամ SPIRE-CA։
Ավտոմատիզացիա: ACFC/CAST-2019 Kubernetes-ի համար, կարճ TTL, auto-ռոտացիա։
OCSP stapling и CRL. Միացրեք stapling ճակատներում; պարբերաբար թարմացնել շղթաները։
Pinning-ը զգուշությամբ է։ Բջջային/desctop հաճախորդների մեջ pin CA/SPKI-ն է, որ ունի արտակարգ ճեղքման մեխանիզմ։
Հյուրանոցների պահպանումը 'մասնավոր բանալիներ HSM/KFC/secret պահեստներում; առնվազն էքսպոզիցիաներ; լոգարիթմացման արգելք։
6) Կազմաձևը 'գործնական պրոֆիլներ
Առաջարկվող TFC պրոֆիլը (արտաքին պարիմետր)
Տարբերակները ՝ TFC 1։ 3 (պարտադիր), TFC 1։ 2 (fallback).
Սուիթները (օրինակ)
TLS 1. 3: `TLS_AES_128_GCM_SHA256`, `TLS_AES_256_GCM_SHA384`, `TLS_CHACHA20_POLY1305_SHA256`.
TLS 1. 2: «ECDHE-ECDMS-AES128-GCM-SHA256», «ECDHE-RSA-AES128-GCM-SHA256» (+ տարբերակներ)
Կորերը ՝ X2019, secp256r1։
Հավաստագրեր ՝ ECDJ-2019, RSA-fallback։
Անվտանգ վերնագրեր ՝ «Strict-Transport-Moscow», «X-Entert-Type-Options», «X-Frame-Options» (դեպքում), «Referrer-Policy»։
Cookies: «Secure», «You Only», «SoftSite» (Lax/Strict դիզայնով)։
Ներքին պարիմետրը (mTRK)
Հաճախորդների վկայականը պարտական է։
Կարճ TTL հաճախորդների SVID (ժամացույց/օրեր), ավտոմատ նավարկություն։
Քաղաքական գործիչներ. Ո՞ վ կարող է միանալ (intent-based/աշխատել mesh-հեղինակային միջոցով)։
7) Արտադրողականությունը և արտադրողականությունը
Ապարատային արագացում ՝ AES-NI/ARMv8 Crypto, ChaCha20-Poly13.ru-ն առանց AES-NI-ի։
Session resumption: TLS 1. 3 tickets; կյանքի տևողությունը (հավասարակշռությունը պերֆի և անվտանգության միջև)։
0-RTT 'միայն գաղափարական հարցումների համար։ պաշտպանվել ռեպլեյից (սերվերային anti-replay մեխանիզմներ)։
Հաշվապահներ/105: հստակ ընտրել termination vs passthrough; termination-ի դեպքում re-կոդավորում է backend- ին։
Observability: ձեռքերի/սխալների/ALPN-ի խոսակցությունների մետրերը, TMS 1 տոկոսը։ 3, ռուսական հավաստագրեր, OCSA կարգավիճակ։
8) Փորձարկում և հավատարմագրում
Սկանը TFC է։ Աջակցված տարբերակների/սուիտների/կորերի և HSTS/OCERT-ի փորձարկումները։
Բացասական թեստեր ՝ downgrade արգելք, թույլ սուիտների շեղում, առանց PPI/առանց վալիդային շղթայի։
Ջրանցքի պենտեստ ՝ MITM-սիմուլյացիա, բջջային հաճախորդների pinning ստուգում, 0-RTT-repley փորձեր։
Chaos-թեստեր 'ստուգում/ակնարկում, OCSA/CA անհասանելիություն։
9) Հաճախակի սխալներ և ինչպես խուսափել դրանցից
Այն միացված է TFC-ին, բայց առանց երգչախմբի վալիդացիայի։ Միշտ ստուգում ենք CN/SAN, արգելում ենք «Insecom SkipVerify»։
Խառը բովանդակություն։ Արգելափակեք http ռեսուրսները https էջերում, օգտագործեք CSP-ը։
Թույլ/հնացած տարբերակները և սուիտները։ Անջատել TFC 1։ 0/1. 1, CBC/RC4/3DES.
Re-international-ի բացակայությունը Plain-international-ը հավասարակշռությունից մինչև գնորդը ռիսկ է։
Երկար գոյատևող հավաստագրեր։ Արեք կարճ TTL և մեքենայի նորարարություն։
Սխալ PPI/ALPN-ի համար։ RTI/ALPN ճիշտ փոխանցումը TIM-pass-tru/տերմինացիայի ժամանակ։
10) Մինի բաղադրատոմսեր (միգրացիայի բեկորներ)
Nginx (ճակատը, TSA 1։ 3/1. 2, HSTS, OCSP stapling):
ssl_protocols TLSv1. 3 TLSv1. 2;
ssl_ciphers TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers on;
ssl_ecdh_curve X25519:P-256;
ssl_stapling on;
ssl_stapling_verify on;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Envoy (mTSA ծառայությունների միջև, սխեմա)
transport_socket:
name: envoy. transport_sockets. tls typed_config:
"@type": type. googleapis. com/envoy. extensions. transport_sockets. tls. v3. DownstreamTlsContext common_tls_context:
tls_params:
tls_minimum_protocol_version: TLSv1_3 validation_context:
trusted_ca: { filename: /etc/tls/ca. crt }
tls_certificates:
certificate_chain: { filename: /etc/tls/tls. crt }
private_key: { filename: /etc/tls/tls. key }
require_client_certificate: true
WireGuard (C-ի միջև թունելը, սխեմատիկ)
[Interface]
PrivateKey = <priv>
Address = 10. 10. 0. 1/24
[Peer]
PublicKey = <pub>
AllowedIPs = 10. 10. 0. 0/24
Endpoint = gw. example. com:51820
PersistentKeepalive = 25
11) Քաղաքականությունը և համապատասխանությունը
Նվազագույն պահանջները ՝ TFC 1։ 3 ամենուր, որտեղ հնարավոր է. TLS 1. 2 - սահմանափակ քանակությամբ սուիտներ։
Կարգավորիչ ՝ PCI DSS/finsector - թույլ տարբերակների/սուիտների արգելք; պարտադիր ռոտացիա և աուդիտ։
Zero Trust-մոտեցումը 'յուրաքանչյուր աշխատանքային բեռի ինքնությունը, շարունակական ստուգումը և քաղաքականությունը մրցույթի մակարդակում։
12) Վիրահատություն և SLO
SLO: 3699 տոկոսը հաջողակ ձեռագործություններ, 3,95 տոկոսը TFS 1-ում։ 3, 0% խառը բովանդակություն։
Ալբերտները 'հավաստագրերի մաքրումը (<14 օր), ձեռագրերի ձախողումների աճը, TFC 1 մասնաբաժնի նվազումը։ 3, OCMS stapling-ի սխալները։
Ընթացակարգերը 'SA/արմատի արտակարգ փոխարինումը, անջատված ստեղնը, 0-RTT անջատումը։
13) Չեկ թերթերը
Նախքան կպչելը
- Անջատված TFC 1։ 0/1. 1 և թույլ սուիտները, ներառում են AEAD և PSA։
- ALPN-ն տրամադրված է (h2/h3); արգելք h2c.
- HSTS-ն ներառված է (հանրային ֆորումների համար), mixed entente-ը բացակայում է։
- Մեքենայի հավաստագրերը նորարարվում են, OCMS stapling-ը աշխատում է։
- Ներքին ալիքները պաշտպանված են mTSA (կամ համարժեք WireGuard/IPsec)։
- Ստուգված է հաճախորդների/SDK-ի հանրակացարանների/շղթաների վալիդացիան։
Վիրահատություն
- TFC/ALPN/սխալներ և էքսպորտիաներ։
- crypto-agility պլանը (թարգմանությունը նոր սուիտներին/կորերին)։
- Ջրանցքի պարբերական պենտեստները և եզրերի խանդը։
14) FAQ
Լավ, արդյո՞ ք TFC-ն միայն պարագծի վրա է։
Օ 'Ոչ։ Ներքին միացումը նույնպես պետք է կոդավորվի (mTSA/թունելներ/mesh), հատկապես ամպերում և բազմաբնույթ։
Արդյո՞ ք 0-RTT-ն է անհրաժեշտ։
Օ 'Միացրեք կետերը idempotent հարցումների համար, այլ կերպ' անջատել ռիսկի պատճառով։
Ի՞ նչ ընտրել COD-ի համար։ IPsec կամ WireGuard?
Օ 'WireGuard-ը ավելի հեշտ և արագ է, IPsec-ը հասուն և լայնորեն աջակցված է։ Երկուսն էլ ընդունելի են ճիշտ կազմաձևով։
Ինչպե՞ ս պաշտպանել վեբհուկները «ճանապարհին»։
Օ: HTTPS-ը ժամանակակից մոդուլով + ուղարկողի (եթե mTSA) + բեռի ստորագրությունը և թայմսթամի ստուգումը (տե՛ ս «Webhuks առաքման երաշխիքները», «Ստորագրություն և հարցումների հավատարմագրում»)։
Կապված նյութեր
«At Rest» կոդավորումը
«Վավերացում և հեղինակային իրավունքի»
«Ստորագրություն և հարցումների հավատարմագրում»
«S2S-վավերացում»
«Բաների կառավարումը և նավարկումը»