التشفير وحماية واجهة برمجة التطبيقات: TLS، HSTS، PFS، التناوب السري
1) صورة التهديد والأهداف
واجهات برمجة التطبيقات تحت هجوم MitM، واعتراض حركة المرور، وهجمات خفض التصنيف، والانتحال الرمزي، وتسريبات المفاتيح، وإساءة استخدام الأسرار طويلة العمر. أهداف الحماية:- السرية والنزاهة (TLS 1. 3 + شفرات قوية).
- الحماية من خفض التصنيف/التجريد (HSTS، الإصدارات/الشفرات المحظورة).
- تقليل الضرر التوفيقي (PFS، TTL قصير، دوران سريع).
- مصادقة موثوقة للعميل/الخدمة (mTLS/tomens) وإمكانية التتبع.
2) TLS كأساس (خادم وخدمة إلى خدمة)
الإصدارات والشفرات:- الافتراضي هو TLS 1. 3; السماح TLS 1. 2 للتوافق فقط. تعطيل 1. 1/1. 0.
- 'TLS _ AES _ 128 _ GCM _ SHA256', 'TLS _ AES _ 256 _ GCM _ SHA384', 'TLS _ CHACHA20 _ POLY1305 _ SHA256'.
- لـ TLS 1. 2: فقط ECDHE مع توقيع AES-GCM/ChaCha20 و ECDSA/RSA (على سبيل المثال 'ECDHE-ECDSA-AES128-GCM-SHA256').
- مفاتيح الخادم: ECDSA P-256/P-384 (أسرع وأقصر) أو RSA 2048 +/3072.
- مفاتيح العملاء لنظام التحويلات النقدية: ECDSA P-256 ؛ الإصدار من خلال CA الخاص بك أو الدفع HSM/KMS.
- مكّن تدبيس OCSP، ويفضل أن يكون مع علم Must-Staple، و ALPN (HTTP/2/3).
- توفره التبادلات سريعة الزوال (ECDHE) - حتى لو تسرب مفتاح الخادم، لا يمكن فك تشفير الجلسات السابقة.
- فرض اتفاق رئيسي ثابت DH/RSA.
- ECH (العميل المشفر Hello)، إذا دعمته الجبهة/CDN، يخفي SNI.
- HTTP/2/3 بشفرات قوية فقط ؛ حظر HTTP غير المحمي، وإعادة التوجيه إلى HTTPS.
3) تجريد HSTS vs TLS
مكّن HTTP أمن النقل الصارم على نطاق الجذر والنطاقات الفرعية:
أمن النقل الصارم: الحد الأقصى للعمر = 63072000 ؛ تشمل المجالات الفرعية ؛ التحميل المسبقضع المجال في قائمة التحميل المسبق HSTS.
راقب الصواب قبل النشر (التراجع صعب).
4) المصادقة المتبادلة: mTLS و/أو الرموز
mTLS بين الخدمات الدقيقة/واجهات برمجة التطبيقات الداخلية: شهادات ثنائية الاتجاه، أو التناوب التلقائي عبر شبكة الخدمة (Istio/Linkerd) أو مرفق المفاتيح العمومية المملوك.
عملاء API (تكامل الهاتف المحمول/الشريك): الرموز (OAuth2/OIDC، JWT)، mTLS اختياري للمخاطر العالية.
للجبهات العامة: TLS + رموز OAuth2/OIDC قصيرة العمر مع ربط الجهاز/DPoP.
5) إدارة الشهادات ودورة الحياة
أتمتة ACME (على سبيل المثال، دعونا نشفر/منظمة CA) مع التحديث التلقائي قبل 30 يومًا من انتهاء الصلاحية.
قصر عمر الشهادات (≤ 90 يومًا) + مراقبة المواعيد النهائية والتنبيهات وحزم نشر الكناري.
مرفق المفاتيح العمومية المركزي: الجذر/الوسيط CA، CRL/OCSP، إصدارات مراجعة الحسابات والإلغاء.
مثال على nginx (جزء):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 على ؛
ssl_ecdh_curve X25519:P-256:P-384;
ssl_stapling على ؛ ssl_stapling_verify على ؛
add_header Strict-Transport-Security "age = 63072000; تشمل المجالات الفرعية ؛ التحميل المسبق" دائما ؛6) التناوب السري: المبادئ والأنماط
أهداف التناوب: الحد من «نصف القطر المتفجر» للتسريبات، وتقليل وقت إساءة الاستخدام، وضمان الإطلاق السلس.
القواعد الأساسية:- تخزين الأسرار فقط في المدير السري (KMS/Vault/Cloud SM). لا أسرار في Git/الصور.
- TTL القصير والتناوب التلقائي: مفاتيح التوقيع، وكلمات مرور قاعدة البيانات، ومفاتيح واجهة برمجة التطبيقات للمزود.
- نافذة المفتاح المزدوج: تنشط المفاتيح القديمة والجديدة في وقت واحد لفترة التدحرج.
- Versioning + kid (لـ JWT/JWKS)، نافذة «grace» للتحقق من صحة الرموز القديمة.
- مفاتيح JWT (توقيع/تشفير)، أسرار HMAC لخطابات الويب وعمليات إعادة الاتصال، كلمات المرور/حسابات قاعدة البيانات، المخابئ (Redis)، رموز CI/CD، أسرار المزود (KYC/AML، المدفوعات، الرسائل القصيرة/البريد الإلكتروني)، SSSS- مفاتيح التشغيل الآلي.
محفزات التناوب غير المقرر: الاشتباه في التسرب، فصل الموظفين ذوي الوصول، تغيير المورد، متطلبات المنظم.
7) JWT/JWKS: تراكب الدور الآمن
انشر نقطة نهاية JWKS مع المفتاح الحالي والمستقبلي (مطلوب «طفل»).
إجراء التناوب:1. توليد مفتاح جديد → إضافته إلى JWKS كمفتاح «ثانٍ».
2. تحديث الموقعين → إصدار رموز جديدة بمفتاح جديد.
3. انتظر TTL للرموز القديمة → قم بإزالة المفتاح القديم من JWKS.
قم بتثبيت رموز TTL قصيرة (على سبيل المثال، 5-15 دقيقة) + تدفقات التحديث مع التحقق الإضافي.
8) الإدارة السرية في الممارسة
KMS + تشفير المغلف: مفتاح رئيسي في HSM/KMS، البيانات مشفرة بـ DEK «ملفوفة».
Vault/Cloud Secret Manager: الاعتمادات الديناميكية لقاعدة البيانات (إصدار السجلات باستخدام TTL)، التناوب الدوري.
Kubernetes: External Secrets/Secrets Store CSI; وما إلى ذلك ؛ والمكتب الإقليمي لآسيا والمحيط الهادئ ؛ حظر أسرار قطع الأشجار.
الوصول إلى الأدوار: IAM/ABAC، مبدأ أقل الامتيازات، حدود الأجهزة (HSM، TPM).
المراجعة الكاملة: من، ومتى، ولماذا تقرأ/تتغير.
9) حماية النقل داخل المحيط
لا تثق في «الشبكة الداخلية»: في كل مكان TLS/mTLS (صفر ثقة).
تعمل شبكة الخدمة على أتمتة الشهادات وإعادة التشغيل والتناوب وقابلية الملاحظة (mTLS افتراضيًا).
تقليل إنهاء TLS: إما الحافة + المشفرة من الشرق إلى الغرب فقط، أو التشفير من طرف إلى طرف.
10) API على السياسات الأمنية TLS
تحديد المعدلات/حماية DoS، التحقق من توقيعات الشبكات (HMAC مع التناوب السري).
المحتوى - الأمن - السياسة/الإحالة - السياسة/المحتوى - المحتوى - نوع الخيارات для фронта.
mTLS لنقاط النهاية الحرجة (المدفوعات، لوحة الإدارة)، قائمة السماح IP من قبل الشركاء.
حماية إعادة التشغيل: timestamp + nonce في الطلبات الموقعة، النوافذ لا تزيد عن 5 دقائق.
11) الرصد والاختبارات
إمكانية ملاحظة TLS: إصدارات/شفرات في المقاييس، تنبيهات لخفض التصنيف، زيادة في فشل المصافحة.
الماسحات الضوئية (في CI/CD وفي المبيعات بانتظام): التحقق من الشفرات المدعومة والشهادات و HSTS و OCSP.
تمارين الفوضى/DR: انتهاء صلاحية الشهادة، إسقاط المدير السري، حل وسط مفتاح التوقيع - تحقق من خطط رد الفعل.
12) إجراءات الاستجابة
الحل الوسط الرئيسي: الإلغاء الفوري للشهادة/إزالة المفتاح من JWKS، والانعكاس إلى النسخ الاحتياطي، والتجديد القسري للرموز.
انتهاء الصلاحية دون تجديد: تدهور مؤقت (حركة المرور الداخلية فقط)، وإعادة تثبيت الشهادات تلقائيا.
تقرير الحوادث: الجدول الزمني، المواضيع المتأثرة، أجزاء التكنولوجيا، التدابير التصحيحية.
13) قائمة التحقق السريع (جاهزة)
- TLS 1 فقط. 3 (+ 1. 2 لـ legasi)، قائمة صارمة من الشفرات.
- HSTS с «التحميل المسبق»، تدبيس OCSP، ALPN.
- ECDHE لـ PFS ؛ ECDSA P-256/384 أو RSA 3072.
- mTLS داخل المجموعة/بين الخدمات الحيوية.
- JWKS + kid، رموز TTL القصيرة، خطة التناوب.
- الأسرار - فقط في KMS/Vault، التناوب التلقائي لقواعد البيانات/مقدمي الخدمات.
- التجديد التلقائي للشهادات (ACME)، التنبيهات في 30 يومًا.
- فحص CI/CD لرؤوس الأمن والشفرات الضعيفة.
- كتيب تشغيل موثق و: التناوب والتذكير والحوادث.
ملخص السيرة الذاتية
الحماية الموثوقة لواجهة برمجة التطبيقات هي مزيج من TLS 1. 3 + HSTS + PFS كحد أدنى إلزامي وعمليات إدارة رئيسية وسرية ناضجة. أضف mTLS بين الخدمات، وأتمتة الإصدار/الدوران عبر KMS/Vault/الشبكة، واحتفظ بـ TTLs القصيرة والنوافذ المزدوجة عند تغيير المفاتيح - وستقلل من مخاطر اعتراض الأسرار المسربة وخفضها وإساءة استخدامها دون كسر توافر وسرعة المنتج.
