בהצפנת מעבר
בהצפנת מעבר
1 הגדרה וגבולות שליטה
הצפנה תוך-טרנזיטיבית (באנגלית: In-transit incryption) היא הגנה על נתונים לאורך כל נתיב השידור של הרשת (דפדפן שרת, שירות , סוכן ברוקר, מסד נתונים, מרכז נתונים מרכז נתונים) כך שיירוט פסיבי והתקפות אקטיביות על הערוץ אינם חושפים את התוכן ואינם מאפשרים את שינויו ללא זיהוי.
מה שאנחנו מכסים: APIs ציבוריים ופרטיים [HTTP/HTTPC], הזרמה וברוקרים (קפקא, NATS, RABITMQ, WebtSocket, מסדי נתונים ומטמונים ברשת, תעבורת שירות בתוך אשכולות, מרכזי VPN/בין נתונים ועננים, DNNNS S S S S S S S S S T S S S S S T S S S S S S S S S S S TS S S TS S TS S S Ts PTבקשות, לקוחות סלולרי/IOTT.
מה שאיננו מכסים במלואו: התקפות על נקודות קצה (פשרת מארח/דפדפן), פגיעות יישומים, דליפות מיומנים/מצרכים. זה נפתר על ידי פקדים נפרדים (A&A, מזעור זכויות, הצפנה במנוחה, רישום מאובטח).
2) מודל איום ומטרות
סיכונים: יירוט תנועה/זיוף (MITM), פרוטוקול הורדה/צופן סוויטה, תעודות מזויפות/CA, דליפת מפתח, התקפות SNI/metadata, תוכן מעורב, TLS הטעיה במאזנים, חיבור שירות חסר ביטחון.
מטרות:1. סודיות + שלמות עם אימות קריפטוגרפי.
2. התנגדות להורדת הדירוג (מדיניות נוקשה וקונפיג).
3. זיהוי הצדדים (שרת, במידת הצורך - הדדי).
4. תעודה מנוהלת/אופן חיים מפתח וביקורת.
5. פרופיל ביצועים ללא חילופי ביטחון.
3) עקרונות בסיסיים
TLS בכל מקום כברירת מחדל. תנועה חיצונית ופנימית - להצפין.
גרסאות מודרניות. TLS 1. 3 כסטנדרט; TLS 1. 2 - רק תחת מדיניות נוקשה. בטל 1. 0/1. 1.
סוויטות צופן AEAD עם PFS. AES-GCM או ChaCha20-Poly1305; PFS באמצעות (EC) DHE.
עקום/מפתח בחינה X25519 (רצוי) או secp256r1 (P-256). מפתחות RSA 2048, טוב יותר מאשר ECDSA (P-256).
MTLS שבו אמון הוא נדיר. ערוצי שירות פנים, ממשלות מנהלות, ברוקרים, מאגרי מידע באמצעות אימות הדדי.
HSTS לאינטרנט. HTTPS כפוי + טעינה לתחומי ציבור.
”להצפין ולהצפין-שוב” במודע. TLS-סיום בהיקף + הצפנה מחדש לקצוות אחוריים או מעבר מקצה לקצה - נבחר בהתאם למודל האיום.
זריזות מוצפנת. היכולת לשנות עקומות/סוויטות/גרסאות עם אפס זמן השבתה.
4) ערימת פרוטוקולים ותסריטים
4. 1 HTTP/2, HTTP/3 (QUIC), gRPC, שקע אינטרנט
h2 עבור HTTP/2, H3 עבור HTTP/3; H2c מעכב (ללא TLS).
HTTP/3/QUIC: מפחית איחוי, משובץ 0-RTT ונדידת תרכובות; 0-RTT מאפשרים באופן סלקטיבי (סיכון שידור חוזר).
GRPC: מעל h2/h3; TLS חובה, אישור אופציונלי של mTLS + per-RPC.
שקע רשת: wss ://בלבד; בשדרוג נכון וסיכות TLS של התחום.
4. 2 תעבורת שירות ושירות
מודל סידקר (איסטיו/לינקרד, וכו '). MTLS אוטומטי, מדיניות אישור, סבב תעודות.
ספיף/ספייר. זהויות שירות מבוזרות (SPIFE ID), תעודות SVID, תעודות TTLs קצרות.
הפרמטרים של TLS מרוכזים. למזער סתירות הגדרות בקוד שירות.
4. 3 ברוקרים/תורים
קפקא/NATS/RabbitMQ: TLS for kliyent↔broker and broker↔broker; אם אפשר.
SASL מעל TLS: אם mTLS אינו אפשרי, אימות באמצעות אסימונים/לוגנים, אך הצפנת התעלה.
ACL ואישור נושא. הצפנה לבקרת גישה.
4. 4 מסדי נתונים ומטמונים
שרת PostGreSQL/MySQL/SQL: אפשר אימות TLS, CN/SAN, סיכה/שורש.
Redis/Memcased: השתמש בצנוניות פעלולים/TLS; איסור על תנועה פשוטה במוצר.
4. 5 רשת/מנהרות
בין מרכזי נתונים/עננים: IPseck (IKEv2) או ViretGuard (קבוצה מודרנית של פרימיטיבים).
גישה אדמיניסטרטיבית: SSH עם צפני KEH/מודרניים; אין סיסמאות, רק מפתחות/SSO.
4. 6 DNS ופרוטוקולי עזר
DNS over HTTPS (DOH )/DNS over TLS (DLS) עבור לקוחות ובתוך האשכול היכן שאפשר.
בטל תוכן מעורב. שום דבר ב http ://בעמודים https ://.
5) תעודות, PKI וניהול מפתחות
מודל PKI: עבור תחומים חיצוניים - CA ציבורי; לתנועה פנימית - CA או SPIRE-CA.
אוטומציה: ACME/CERT-manager עבור קוברנטס, TTL קצר, סיבוב אוטומטי.
הידוק OCSP CRL. הפעל מהדקים בחזיתות; עדכון שרשראות באופן קבוע.
מצמיד - בזהירות. בלקוחות ניידים/שולחן עבודה - pin CA/SPKI עם מנגנון גלגול חירום.
אחסון מפתחות: מפתחות פרטיים בסופות HSM/KMS/סודיות; חשיפות מינימליות; רישום איסורים.
6) תצורות: פרופילי תרגול
פרופיל TLS מומלץ (היקף חיצוני):- גרסאות: TLS 1. 3 (נדרש), TLS 1. 2 (נסיגה).
- TLS 1. 3: 'TLS _ AES _ 128 _ GCM _ SHA256', 'TLS _ AES _ 256 _ GCM _ SH384', 'TLS _ CHACHA20 _ POLY1305 _ SH256'.
- TLS 1. 2: ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES128-GCM-SHA256 (+ אפשרויות AES256/CHACHA20 אם נדרש).
- עקומות: X25519, secp256r1.
- תעודות: ECDSA-מועדף, RSA-fallback.
- כותרות מאובטחות: ”Strict-Transport-Security”, ”X-Content-Type-Options',” X-Frame-Options'.
- עוגיות: ”Secure”, ”HttpOnly”, ”Grieve Site” (Lax/Strict by Design).
- יש צורך בתעודת לקוח.
- SVID (שעות/ימים), סיבוב אוטומטי.
- מדיניות: מי יכול להתחבר למי (מבוסס כוונה/עבודה באמצעות אישור רשת).
7) ביצועים ואמינות
האצת חומרה: AES-NI/ARMv8 קריפטו, העדפה ChaCha20-Poly1305 על מעבד ללא AES-NI.
חידוש הפעלה: TLS 1. 3 כרטיסים; חשוב על תוחלת החיים (איזון בין בושם ובטיחות).
0-RTT: לשאילתות אידמפוטנטיות בלבד; להגן מפני שידור חוזר (מנגנונים נגד שידור חוזר).
Balancers/proxies: בחר בבירור סיום vi passage; בסיום - להצפין מחדש לחלק האחורי.
תצפית: ALPN לחיצת יד/שגיאה/מדדי משא ומתן, אחוז TLS 1. 3, פקיעת תעודה, מצב OCSP.
8) בדיקה ואימות
סריקה של פרופיל TLS. בדיקות רגילות של גרסאות/סוויטות/עקומות ו ־ HSTS/OCSP.
מבחנים שליליים: איסור הורדת דירוג, דחיית חליפות חלשות, כשל בחיבורים ללא תעודת SNI/ללא תעודת שרשרת תקפה.
ערוץ חג השבועות: סימולציות MITM, סימון צ 'קים בלקוחות ניידים, 0-RTT ניסיונות שידור חוזר.
בדיקות כאוס: תפוגה/ביטול תעודה, אי זמינות של OCSP/CA.
9) טעויות תכופות וכיצד להימנע מהן
TLS מופעל, אבל אין אימות מארח. אנחנו תמיד בודקים CN/SAN, אוסרים על ”InsureSkipverifice”.
תוכן מעורב. בלוק משאבי http על דפי https, השתמש CSP.
גרסאות חלשות/מיושנות וחליפות. בטל את TLS 1. 0/1. 1, CBC/RC4/3DES.
חוסר הצפנה מחדש פנימה. תנועה פשוטה מהמאזן ליישום היא סיכון.
תעודות ארוכות חיים. לעשות טי-טי-אל קצר ועדכונים אוטומטיים.
SNI/ALPN רע מאחורי פרוקסי. תקן שידור SNI/ALPN עם מעבר/סיום TLS.
10) מתכונים קטנים (קטעי תצורה)
Nginx (קדמי, TLS 1. 3/1. 2, HSTS, הידוק OCSP):
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;
שליח (mTLS בין שירותים, מזימה):
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
משמר סתר (מנהרת מרכז נתונים, באופן סכמטי):
[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) מדיניות וציות
דרישות מינימום: TLS 1. 3 בכל מקום אפשרי; TLS 1. 2, עם סוויטות מוגבלות.
תקנה: PCI DSS/מגזר פיננסי - איסור על גרסאות חלשות/סוויטות; סיבוב חובה וביקורת.
גישת אפס אמון: זהויות לכל עומס עבודה, אימות רציף ומדיניות רמת שירות.
12) מבצע ו ־ SLO
SLO: 99% לחיצות ידיים מוצלחות, 95% תנועה על TLS 1. 3, 0% תוכן מעורב.
התראות: תפוגה של תעודות (<14 ימים), עלייה בכשלים בלחיצת יד, ירידה בנתח TLS 1. 3, שגיאות הידוק OCSP.
נהלים: החלפת חירום של הסי-איי-איי/שורש, שלילת המפתח שנפגע, השבתת 0-RTT.
13) רשימות בדיקה
לפני ההנחה:[ ] TLS 1 מנוטרל. 0/1. סוויטות 1 וחלשות, כולל AEAD ו PFS.
[ ] ALPN מוגדרת (h2/h3); איסור על h2c.
[ ] HSTS התאפשרה (לנחלת הכלל), ללא תוכן מעורב.
[ תעודות ] מעודכנות אוטומטית, מהדק OCSP פועל.
[ ] ערוצים פנימיים מוגנים על ידי MTLS (או ViritGuard/IPseck).
[ ] תוקף מארח/אישור שרשרת ללקוחות/SDK.
מבצע:
[ ] Monitor TLS/ALPN/שגיאה ופקיעה.
[ ] תוכנית קריפטו-זריזות (תרגום לסוויטות/עקומות חדשות).
[ ] מחומשי ערוץ תקופתי וביקורות הגדרות.
14) FAQ
קיו: האם TLS מספיקה רק על המתחם?
אה לא תנועה פנימית חייבת גם להיות מוצפנת (mTLS/מנהרות/mesh), במיוחד בעננים ובמהלך חכירה מרובה.
קיו: האם אתה זקוק 0-RTT?
א ": אפשר חוכמת טעם לבקשות אידמפוטנטיות, אחרת להשבית בשל הסיכון של שידור חוזר.
Q: מה לבחור עבור מרכז המידע הפנימי? איי-פי-סק או משמר הסתר?
A: משמר הסתר הוא פשוט ומהיר יותר, IPsech הוא בוגר ונתמך באופן נרחב. שניהם תקפים כאשר הם מוגדרים נכון.
קיו: כיצד אתה מגן על מחסומי רשת ”בתנועה”?
A: HTTPS עם אימות תעודה מודרני + Sender (אם MTLS) + חתימת מטען ואימות חותמת זמן (ראה Webhook Deliversity Assistance, Requess Signing and Veriefication).
חומרים קשורים:- ”בהצפנת מנוחה”
- ”אימות ואישור”
- ”לחתום ולאמת בקשות”
- ”אימות S2S”
- ”ניהול מפתח וסבב”