Skip to main content

V10.3.3 Application Integrity

Requirement:#

Verify that the application has protection from subdomain takeovers if the application relies upon DNS entries or DNS subdomains, such as expired domain names, out of date DNS pointers or CNAMEs, expired projects at public source code repos, or transient cloud APIs, serverless functions, or storage buckets (autogen-bucket-id.cloud.example.com) or similar. Protections can include ensuring that DNS names used by applications are regularly checked for expiry or change.

Explanation:#

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ DNS-ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ Π½Π΅Π²Π΅Ρ€Π½ΠΎ, Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слоТно ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π±Ρ‹Π» Π»ΠΈ скомпромСтирован Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ DNS-сСрвСр, DNS-ΠΈΠΌΠ΅Π½Π° Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ допустимым ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Когда ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ выполняСт ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ DNS для IP-адрСса, Ссли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ управляСт DNS-сСрвСром для этого IP-адрСса, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСрвСр Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ имя хоста. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ, Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ запись Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ хоста Π² Ρ„Π°ΠΉΠ»Ρ‹ ΠΆΡƒΡ€Π½Π°Π»Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ дСйствия, ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°Ρ‚Π°ΠΊΠΈ. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ΄Π΄Π΅Π»Ρ‹Π²Π°Ρ‚ΡŒ DNS-ΠΈΠΌΠ΅Π½Π° Π»ΠΈΠ±ΠΎ (1) скомпромСтировав DNS-сСрвСр ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² Π΅Π³ΠΎ записи (ΠΈΠ½ΠΎΠ³Π΄Π° это называСтся ΠΎΡ‚Ρ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ кэша DNS), Π»ΠΈΠ±ΠΎ (2) ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ² Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ DNS-сСрвСром, связанным с ΠΈΡ… IP-адрСсом.

Remediation:#

Π’ΠΎΡ‚ нСсколько Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Ρ… шагов ΠΏΠΎ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²:

  • РСгулярно ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠΉΡ‚Π΅ записи DNS: рСгулярно провСряйтС всС записи DNS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ ΠΈ срок ΠΈΡ… дСйствия Π½Π΅ истСк. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π°ΠΊΠΈΡ… инструмСнтов, ΠΊΠ°ΠΊ слуТба ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π΄ΠΎΠΌΠ΅Π½Π° ΠΈΠ»ΠΈ ручная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΡ‚Ρ€ΠΎΠ³ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ для управлСния DNS: Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ строгой Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ для всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ управлСния DNS, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ измСнСния записСй DNS. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΄Π²ΡƒΡ…Ρ„Π°ΠΊΡ‚ΠΎΡ€Π½ΡƒΡŽ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈΠ»ΠΈ использованиС бСзопасных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ инструмСнты обнаруТСния Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ². Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ инструмСнты обнаруТСния Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ риски Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ². Π­Ρ‚ΠΈ инструмСнты ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ записи DNS прилоТСния ΠΈ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Ρ‚ΡŒ администраторов Π² случаС обнаруТСния ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π·Π°Ρ…Π²Π°Ρ‚Π°. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ общСдоступныС Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ исходного ΠΊΠΎΠ΄Π° ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ.
  • Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ всС общСдоступныС Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ исходного ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈ Ρ‡Ρ‚ΠΎ доступ ΠΊ Π½ΠΈΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ субдомСны для ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… рСсурсов. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ субдомСны для всСх ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… рСсурсов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ API, бСссСрвСрныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ сСгмСнты Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ риск Π·Π°Ρ…Π²Π°Ρ‚Π° субдомСнов. Π­Ρ‚ΠΎ затрудняСт Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ поиск ΠΈ использованиС Π»ΡŽΠ±Ρ‹Ρ… Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π² этих рСсурсах.
  • Π’Π½Π΅Π΄Ρ€ΠΈΡ‚Π΅ ΡΡ‚Ρ€ΠΎΠ³ΡƒΡŽ Ρ‚Ρ€Π°Π½ΡΠΏΠΎΡ€Ρ‚Π½ΡƒΡŽ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ HTTP (HSTS). Π’Π½Π΅Π΄Ρ€ΠΈΡ‚Π΅ HSTS, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ всСх ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ. HSTS ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π°Ρ…Π²Π°Ρ‚ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ², ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ бСзопасныС соСдинСния ΠΈ сниТая риск Π°Ρ‚Π°ΠΊ Ρ‚ΠΈΠΏΠ° Β«Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ посСрСдинС».
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии: рСгулярно обновляйтС всС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ инструмСнты управлСния DNS ΠΈ срСдства обнаруТСния Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΈΡ… Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ новСйшиС срСдства Π·Π°Ρ‰ΠΈΡ‚Ρ‹.Β 

Выполняя эти дСйствия ΠΏΠΎ ΠΈΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ риск Π·Π°Ρ…Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅Π΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρƒ DNS-записСй прилоТСния.

Additional:#

CWE - CWE-350: Reliance on Reverse DNS Resolution for a Security-Critical Action (4.10) (mitre.org)