V1.9.1 Communications Architecture
Requirement:#
Verify the application encrypts communications between components, particularly when these components are in different containers, systems, sites, or cloud providers. (C3)
Explanation:#
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ΡΠ΅ΡΠΊΠΈΠ²Π°Π΅Ρ Π²Π°ΠΆΠ½ΠΎΡΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ ΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ , ΡΠΈΡΡΠ΅ΠΌΠ°Ρ , ΡΠ°ΠΉΡΠ°Ρ ΠΈΠ»ΠΈ Ρ ΡΠ°Π·Π½ΡΡ ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠ².
- Data Confidentiality:
Π¨ΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΡΡΡ Π΄Π°Π½Π½ΡΡ , ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ. ΠΠ΅Π· ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π°Π½Π½ΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΠ΅Π½Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ.
- Network Security:
Π ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Ρ , ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΠ°ΡΡΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°ΠΌ, ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ, ΠΎΠ±Π»Π°ΡΠ½ΡΠΌ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°ΠΌ ΠΈΠ»ΠΈ Π³Π΅ΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π»ΠΎΠΊΠ°ΡΠΈΡΠΌ. Π’Π°ΠΊΠ°Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡΡ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π°Π΅Ρ ΠΊΠΎΠΌΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΈ ΡΠ΅ΡΠ΅Π²ΡΠΌ Π°ΡΠ°ΠΊΠ°ΠΌ, Π² ΡΠ»ΡΡΠ°Π΅ ΡΠ»Π°Π±ΠΎΠΉ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
- Protection Against Eavesdropping:
Π¨ΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°ΡΠΈΡΠΈΡΡΡΡ ΠΎΡ Π·Π»ΠΎΡΠΌΡΡΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΡΠ°ΡΡΡΡ Π·Π°Ρ Π²Π°ΡΠΈΡΡ ΠΈ ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π²ΠΎΠΉ ΡΡΠ°ΡΠΈΠΊ Ρ ΡΠ΅Π»ΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
- Compliance Requirements:
ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΡΠ΅ Π°ΠΊΡΡ ΠΈ Π·Π°ΠΊΠΎΠ½Ρ ΠΎ Π·Π°ΡΠΈΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΡΠ΅Π±ΡΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠΈΠ΄Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈ ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅. Π‘ΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΈ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·Π΅ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠΎΠ², ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΠΎΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ Ρ ΡΠ°Π·Π½ΡΡ ΠΎΠ±Π»Π°ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠ². Π§ΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡ Π½Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ HTTPS/TLS, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΡΡΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠΊΡΠΈ-ΡΠ΅ΡΠ²Π΅ΡΠ° NGINX Π΄Π»Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ HTTPS Π΄Π»Ρ Π²Ρ ΠΎΠ΄ΡΡΠ΅Π³ΠΎ ΡΡΠ°ΡΠΈΠΊΠ°:
Π Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ NGINX Π½Π°ΡΡΡΠΎΠ΅Π½ Π½Π° listen ΠΏΠΎΡΡΠ° 443 (HTTPS). ΠΠ°ΠΏΡΠΎΡΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ NGINX, ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π½Π° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΡΠ΅ΡΠ²ΠΈΡ (your-backend-service) ΠΏΠΎ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΠΎΠΌΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ°Ρ ΠΈΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ .
Remediation:#
ΠΠ»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ:
- Use Secure Protocols:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ HTTPS/TLS Π΄Π»Ρ Π²Π΅Π±-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ, SSH Π΄Π»Ρ Π·Π°ΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈΠ»ΠΈ VPN Π΄Π»Ρ Π·Π°ΡΠΈΡΠ΅Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠΉ.
- Encryption Libraries and Tools:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ.
- Certificates and Keys Management:
ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² ΠΈ ΠΊΠ»ΡΡΠ΅ΠΉ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΈΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅, ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ ΡΠΎΡΠ°ΡΠΈΡ ΠΈ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½ΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π°Π²ΡΠΎΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
- Authentication and Authorization:
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΡ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΈ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ, ΡΡΠΎΠ±Ρ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Ρ ΠΏΡΠ°Π²Π°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΌΠΎΠ³ΡΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ.
- Logging and Monitoring:
ΠΠ°ΡΡΡΠΎΠΈΡΡ Π»ΠΎΠ³ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π΄Π»Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅Π°Π³ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π»ΡΠ±ΡΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ Π·Π°ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡΠΌΠΈ. ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠ²ΠΈΡΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΠΈΠ΄Π΅Π½ΡΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
- Third-Party Services:
ΠΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΡ - ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΈΡΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΈ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π»ΡΡΡΠΈΡ ΠΏΡΠ°ΠΊΡΠΈΠΊ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.