Skip to main content

V10.2.6 Malicious Code Search

Requirement:#

Verify that the application source code and third party libraries do not contain Easter eggs or any other potentially unwanted functionality.

Explanation:#

Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ исходный ΠΊΠΎΠ΄ прилоТСния ΠΈ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ содСрТат Β«ΠΏΠ°ΡΡ…Π°Π»ΡŒΠ½Ρ‹Ρ… яиц» ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π½Π΅Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

Remediation:#

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ исходный ΠΊΠΎΠ΄ прилоТСния ΠΈ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π΅ содСрТат врСдоносного ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ "Π°Ρ‚Π°ΠΊΠ° салями", логичСскиС ΠΎΠ±Ρ…ΠΎΠ΄Ρ‹ ΠΈΠ»ΠΈ логичСскиС Π±ΠΎΠΌΠ±Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

  1. ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΊΠΎΠ΄Π°.

Π’Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ΄Π° являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивным способом обнаруТСния врСдоносного ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ "Π°Ρ‚Π°ΠΊΠ° салями", ΠΎΠ±Ρ…ΠΎΠ΄Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ»ΠΈ логичСскиС Π±ΠΎΠΌΠ±Ρ‹. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ экспСртов ΠΏΠΎ бСзопасности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с языками программирования ΠΈ тСхнологиями, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡŽΡ‚, ΠΊΠ°ΠΊ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСдоносный ΠΊΠΎΠ΄.

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ инструмСнты.

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ Ρ€ΡƒΡ‡Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ ΠΊΠΎΠ΄Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ инструмСнты для обнаруТСния врСдоносного ΠΊΠΎΠ΄Π°. БущСствуСт нСсколько коммСрчСских инструмСнтов ΠΈ инструмСнтов с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… уязвимостСй бСзопасности, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ логичСскиС Π±ΠΎΠΌΠ±Ρ‹ ΠΈ "Π°Ρ‚Π°ΠΊΠ° салями".

  1. ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ логичСских Π±ΠΎΠΌΠ±.

РСгулярный ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΊΠΎΠ΄Π° ΠΈ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ логичСских Π±ΠΎΠΌΠ± являСтся Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ прилоТСния. Π­Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ выполнСния ΠΊΠΎΠ΄Π°, поиск Π»ΡŽΠ±Ρ‹Ρ… случаСв, ΠΊΠΎΠ³Π΄Π° логичСская Π±ΠΎΠΌΠ±Π° срабатываСт ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΈΠ»ΠΈ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.

  1. Π—Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСдоносный ΠΊΠΎΠ΄.

Если обнаруТился ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ врСдоносный ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ сторонних Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ "Π°Ρ‚Π°ΠΊΠ° салями", ΠΎΠ±Ρ…ΠΎΠ΄ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΈΠ»ΠΈ логичСская Π±ΠΎΠΌΠ±Π°, Π²Π°ΠΆΠ½ΠΎ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ. Π­Ρ‚Π° докумСнтация Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ описаниС врСдоносного ΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΊ ΠΎΠ½ Π±Ρ‹Π» ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ Π±Ρ‹Π» устранСн.

  1. ΠŸΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ бСзопасности.

Π‘Π»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° новСйшими ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ бСзопасности β€” это ваТная Ρ‡Π°ΡΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ прилоТСния ΠΎΡ‚ врСдоносного ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π±Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΡŽΠ»Π»Π΅Ρ‚Π΅Π½Π΅ΠΉ ΠΏΠΎ бСзопасности, посСщСниС ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΉ ΠΏΠΎ бСзопасности ΠΈΠ»ΠΈ участиС Π² ΡƒΡ‡Π΅Π±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΏΠΎ бСзопасности.

  1. РСгулярно Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΊΠΎΠ΄.

РСгулярноС тСстированиС ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Ρ‚Π°ΠΊΠΆΠ΅ являСтся Π²Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ прилоТСния ΠΎΡ‚ врСдоносного ΠΊΠΎΠ΄Π°. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ тСстов Π½Π° ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅, Π°ΡƒΠ΄ΠΈΡ‚ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ тСстирования бСзопасности для выявлСния ΠΈ устранСния Π»ΡŽΠ±Ρ‹Ρ… уязвимостСй бСзопасности.

Additional:#

CWE - CWE-507: Вроянский конь (4.10) (mitre.org)

Атаки Π½Π° Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ поставок | Microsoft Learn