Π”ΠΈΠΏΠ»ΠΎΠΌ, курсовая, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°
ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ исслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ Π½Π° основС дивСрсификации ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

Π”ΠΈΡΡΠ΅Ρ€Ρ‚Π°Ρ†ΠΈΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнтов ΠΏΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ характСристик Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… НЀП. Π‘Ρ‹Π»ΠΎ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ всС рассмотрСнныС НЀП ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΈ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ, согласно опрСдСлСниям, Π΄Π°Π½Π½Ρ‹ΠΌ Π² Π³Π»Π°Π²Π΅ 2, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

  • Π“Π»Π°Π²Π° 1. ΠžΠ±Π·ΠΎΡ€ срСдств Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ эксплуатации уязвимостСй
    • 1. 1. БистСмы, внСдряСмыС Π²ΠΎ Π²Ρ€Π΅ΠΌΡ компиляции
    • 1. 2. БистСмы, внСдряСмыС Π½Π° ΡΡ‚Π°ΠΏΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹
    • 1. 3. Рандомизация располоТСния адрСсного пространства (ASLR)
    • 1. 4. Π˜Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹
    • 1. 5. Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΠΈ ошибок Π² Windows
      • 1. 5. 1. Π—Π°Ρ‰ΠΈΡ‚Π° стСка
      • 1. 5. 2. Π—Π°Ρ‰ΠΈΡ‚Π° ΠΊΡƒΡ‡ΠΈ
      • 1. 5. 3. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ SEH
      • 1. 5. 4. Рандомизация Π Π•Π’
      • 1. 5. 5. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ адрСса API Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
      • 1. 5. 6. ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΠ΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ‹Ρ… ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ
      • 1. 5. 7. Запуск шСлкода Π² Π Π•Π’
      • 1. 5. 8. Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ
      • 1. 5. 9. NX ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ DEP
    • 1. 6. Π’Ρ‹Π²ΠΎΠ΄Ρ‹
  • Π“Π»Π°Π²Π° 2. ВСорСтичСскоС обоснованиС возмоТности дивСрсификации ПО
    • 2. 1. Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСобразования
      • 2. 1. 1. Π‘Π°Π·ΠΎΠ²Ρ‹Π΅ опрСдСлСния
      • 2. 1. 2. Π­ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ
      • 2. 1. 3. ΠΠ΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ прСобразования
      • 2. 1. 4. Бвойства НЀП
    • 2. 2. ΠžΡ†Π΅Π½ΠΊΠΈ НЀП
      • 2. 2. 1. ΠœΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ НЀП
      • 2. 2. 2. Π£ΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ прСобразования
      • 2. 2. 3. Π¦Π΅Π½Π° прСобразования
      • 2. 2. 4. Главная ΠΌΠ΅Ρ€Π°
    • 2. 3. РСализация Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Π°Ρ… Ρ…
      • 2. 3. 1. Π—Π°ΠΌΠ΅Π½Π° рСгистров (ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ 1)
      • 2. 3. 2. ΠŸΠ΅Ρ€Π΅ΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° мноТСств инструкций мСстами (ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ 2)
      • 2. 3. 3. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ (ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ 3)
      • 2. 3. 4. ИзмСнСниС ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ 4)
      • 2. 3. 5. Π’Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ случайных ΠΏΠΎΠ΄Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ 5)
    • 2. 4. Π’Ρ‹Π²ΠΎΠ΄Ρ‹
  • Π“Π»Π°Π²Π° 3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° дивСрсификации ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния
    • 3. 1. ΠžΠ±Ρ‰Π°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° ΠΊΠΎΠ΄Π°
    • 3. 2. Π―Π·Ρ‹ΠΊ FuzzAsm
    • 3. 3. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…
    • 3. 4. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ каркаса Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
    • 3. 5. Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ «ΠΌΡƒΡΠΎΡ€Π½ΠΎΠ³ΠΎ» ΠΊΠΎΠ΄Π°
    • 3. 6. ГСнСрация ΠΊΠΎΠ΄Π°
    • 3. 7. Π‘Π±ΠΎΡ€ΠΊΠ° ΠΊΠΎΠ΄Π°
    • 3. 8. Π’Ρ‹Π²ΠΎΠ΄Ρ‹
  • Π“Π»Π°Π²Π° 4. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² дСкомпиляции ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΠΈ исполнимого ΠΊΠΎΠ΄Π°
    • 4. 1. ДСкомпиляция
      • 4. 1. 1. Π­Ρ‚Π°ΠΏΡ‹ дСкомпиляции
      • 4. 1. 2. Анализ структуры Π Π•
      • 4. 1. 3. ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π°
      • 4. 1. 4. ДизассСмблированиС
      • 4. 1. 5. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ связного списка Π±Π»ΠΎΠΊΠΎΠ²
    • 4. 2. РСкомпиляция
      • 4. 2. 1. ΠŸΠ΅Ρ€Π΅ΡΡ‡Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Ρ„изичСских адрСсов
      • 4. 2. 2. ΠŸΠ΅Ρ€Π΅ΡΡ‡Π΅Ρ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ элСмСнтов Ρ€Π΅Π»ΠΎΠΊΠ°Ρ†ΠΈΠΈ
      • 4. 2. 3. ΠŸΠ΅Ρ€Π΅Π»ΠΈΠ½ΠΊΠΎΠ²ΠΊΠ° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ
      • 4. 2. 4. АссСмблированиС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π² Ρ„Π°ΠΉΠ»
    • 4. 3. Π’Ρ‹Π²ΠΎΠ΄Ρ‹
  • Π“Π»Π°Π²Π° 5. Π­ΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ исслСдованиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ
    • 5. 1. Π˜Π·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠ΅ характСристик ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΎΡ†Π΅Π½ΠΊΠ° НЀП
    • 5. 2. Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ исслСдованиС ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ Π½Π° основС дивСрсификации ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π΅ΠΌΡ‹

.

ВСория компиляции Π½Π°Ρ‡Π°Π»Π° Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π»Π° Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½Ρ‹ΠΉ Π²ΠΈΠ΄ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΄Π°Π»Π° ΠΎ ΡΠ΅Π±Π΅ Π·Π½Π°Ρ‚ΡŒ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, поэтому Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ компиляторов Π½Π΅ΠΎΡ…ΠΎΡ‚Π½ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ языки ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹ для Π½ΠΈΡ…, Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΡƒΡΡΡŒ идСями экспСртов Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΡˆΠΈΡ€ΠΎΠΊΠΎ извСстная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ языков Π‘ ΠΈ Π‘++, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π°Π΄Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ элСмСнты массива, находящихся Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹ΠΌ Π΅Π³ΠΎ элСмСнтом, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Π° особСнного внимания ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠŸΠž. Уязвимости Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… (Π² Ρ‡Π°ΡΡ‚ности, сСтСвых), связанных ΠΈΠΌΠ΅Π½Π½ΠΎ с ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ошибками, Π΄ΠΎ ΡΠΈΡ… ΠΏΠΎΡ€ ΡΠ²Π»ΡΡŽΡ‚ΡΡ самыми распространСнными, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ пояснСния для написания ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ с 1989 Π³ΠΎΠ΄Π°. Π›ΠΈΡˆΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ появились «Π½Π°Π΄ΡΡ‚Ρ€ΠΎΠΉΠΊΠΈ» Π½Π°Π΄ компиляторами для автоматичСского контроля ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исполнСния. Ни ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ компиляторов языка Π‘/Π‘++ Π½Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠ» Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ языка, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π² Π½Π΅Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ² памяти, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… эксплоитов для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ указания Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… характСристик, спСцифичных для Π°Ρ‚Π°ΠΊΡƒΠ΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ срСды — ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, эксплоиты пСрСполнСния Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΈ ΠΊΡƒΡ‡ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΊ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмС ΠΏΡƒΡ‚Π΅ΠΌ указания Π² Π½ΠΈΡ… фиксированного адрСса ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ инструкции, ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰Π΅ΠΉ управлСния Π½Π° ΡˆΠ΅Π»ΠΊΠΎΠ΄, Π»ΠΈΠ±ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ указания Ρ€Π°Π·ΠΌΠ΅Ρ€Π° пСрСполняСмого Π±ΡƒΡ„Π΅Ρ€Π°. Π’ ΠΎΠ±ΠΎΠΈΡ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… случаях для провСдСния ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ Π°Ρ‚Π°ΠΊΠΈ Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмы. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² Π½Π°ΡΡ‚оящСС врСмя ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ Π½Π΅ ΠΏΡ€Π΅Π΄ΡƒΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ Π½ΠΈΠΊΠ°ΠΊΡƒΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌΠΎΠ³ΠΎ дистрибутива Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚Π΅ΠΌ самым, позволяя Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΊΡ‚ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎΠΉ идСнтичности всСх дистрибутивов Π°Ρ‚Π°ΠΊΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠŸΠž. ΠŸΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΠΈ, ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π² ΠŸΠž Ρ†Π΅Π»Π΅Π²ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ зависит ΠΎΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ установлСнныС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ — ΠΈΠ½Π°Ρ‡Π΅ говоря, для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΉ эксплуатации Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° информация ΠΎΠ± ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΠΈ Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠŸΠž ΠΈ ΠΎΠ± ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ систСмы Π·Π°Ρ‰ΠΈΡ‚Ρ‹. ИспользованиС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исполнимых Ρ„Π°ΠΉΠ»ΠΎΠ² дистрибутивов Π±Π΅Π· измСнСния ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠΏΡƒΠ»ΡΡ†ΠΈΡŽ дистрибутивов Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½ΠΎΠΉ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ дивСрсифицированной), позволяСт ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ эксплоита, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌΡƒΡŽ систСму ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ, ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… нСизвСстныС Ρ€Π°Π½Π΅Π΅ уязвимости Π·Π°Ρ…Π²Π°Ρ‚Π° управлСния.

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

ЦСлью Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° дивСрсификации, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Π·Π°Ρ‰ΠΈΡ‚Ρƒ сСтСвого ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Π·Π°Ρ…Π²Π°Ρ‚ управлСния.

Для достиТСния ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Ρ†Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

1. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π°Π½Π°Π»ΠΈΠ·Π° (дСкомпиляции) ПО Ρ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исполнимого ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… фиксированныС адрСса ΠΈ Ρ„иксированныС Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ², с Ρ†Π΅Π»ΡŒΡŽ Π·Π°Ρ…Π²Π°Ρ‚Π° управлСния.

3. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ обоснованиС использования Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ с Ρ†Π΅Π»ΡŒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° Π·Π°Ρ…Π²Π°Ρ‚ управлСния.

4. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ рСкомпиляции ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π² ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΡ‹ΠΉ Ρ„Π°ΠΉΠ» с ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°.

5. ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ исслСдованиС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π»ΠΈ ΠΎΠ½ΠΈ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π² ΡΠΎΠΎΡ‚вСтствии с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ критСриями качСства Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ.

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ исслСдования основаны Π½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ, Ρ‚Π΅ΠΎΡ€ΠΈΠΈ компиляции ΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ вСроятностСй.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ полоТСния ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, выносимыС Π½Π° Π·Π°Ρ‰ΠΈΡ‚Ρƒ:

1. ΠœΠ΅Ρ‚ΠΎΠ΄ дивСрсификации ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ.

2. Алгоритмы дивСрсификации исполнимого ΠΊΠΎΠ΄Π°.

3. Алгоритмы Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исполнимого ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ встраиваниС пассивных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡƒΡ‚Π΅ΠΌ Π΅Π³ΠΎ рСкомпиляции.

4. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ исслСдования ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.

Научная Π½ΠΎΠ²ΠΈΠ·Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ:

1. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ дивСрсификации исполнимого ΠΊΠΎΠ΄Π° ΠŸΠž.

2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ тСорСтичСскиС основы дивСрсификации ΠŸΠž. Π”Π°Π½Ρ‹ опрСдСлСния Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ ΠΈ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ прСобразованиям (НЀП). Π”ΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ НЀП ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ рядом свойств, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ созданиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΊΠΎΠ΄Π° ΠŸΠž.

3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исполнимого ΠΊΠΎΠ΄Π° ПО, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ Π·Π°Ρ…Π²Π°Ρ‚ управлСния.

4. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π°Π½Π°Π»ΠΈΠ·Π° (дСкомпиляции) исполнимого ΠΊΠΎΠ΄Π° Π² ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠŸΠž.

5. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ рСкомпиляции исполнимого ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ (Π² Ρ‚.Ρ‡. Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ) Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π² ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π±Π΅Π· Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚оспособности.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ†Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π·Π½Π°Ρ‡ΠΈΠΌΠΎΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² диссСртации Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ:

1. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ дивСрсификации ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½ΠΎΡΡ‚ΡŒ популяций ΠŸΠž с Ρ†Π΅Π»ΡŒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ.

2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ дивСрсификации ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½ΠΎΠ³ΠΎ ΠŸΠž Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ИспользованиС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². Алгоритмы Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ исполнимого ΠΊΠΎΠ΄Π°, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π±Ρ‹Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π—ΠΠž «Π ΠΠ’» (Π³. Москва) ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π°ΡƒΡ‡Π½ΠΎ-ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ «ΠŸΠ»Π΅Π΅Ρ€».

Π”ΠΎΡΡ‚ΠΎΠ²Π΅Ρ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² подтвСрТдаСтся ΠΏΠΎΠ»Π½ΠΎΡ‚ΠΎΠΉ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ тСорСтичСских обоснований ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ экспСримСнтов, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π² Π΄ΠΈΡΡΠ΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

Апробация Ρ€Π°Π±ΠΎΡ‚Ρ‹. По Ρ‚Π΅ΠΌΠ΅ диссСртации ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ΠΎ 10 Π½Π°ΡƒΡ‡Π½Ρ‹Ρ… статСй ΠΈ Ρ‚Сзисов Π΄ΠΎΠΊΠ»Π°Π΄ΠΎΠ². ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π² Ρ…ΠΎΠ΄Π΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ диссСртациСй, Π±Ρ‹Π»ΠΈ прСдставлСны Π½Π°:

1. ВсСроссийской Π½Π°ΡƒΡ‡Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ студСнтов ΠΈ Π°ΡΠΏΠΈΡ€Π°Π½Ρ‚ΠΎΠ² «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, систСмный Π°Π½Π°Π»ΠΈΠ· ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³ (2003 Π³.).

2. ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Π˜Π½Ρ„ормационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³ (2004, 2005, 2006 Π³.).

3. ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Black Hat», Jlac-Berac, БША (2006 Π³.).

5.2. Π’Ρ‹Π²ΠΎΠ΄Ρ‹.

Π’ Π΄Π°Π½Π½ΠΎΠΉ Π³Π»Π°Π²Π΅ Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнтов ΠΏΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡŽ характСристик Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… НЀП. Π‘Ρ‹Π»ΠΎ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ всС рассмотрСнныС НЀП ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΈ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ, согласно опрСдСлСниям, Π΄Π°Π½Π½Ρ‹ΠΌ Π² Π³Π»Π°Π²Π΅ 2, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΌ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π°.

Π Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½ΠΎΡΡ‚ΡŒ популяции Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… исполнимых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования фиксированных адрСсов ΠΊΠΎΠ΄Π° ΠΈ Ρ„иксированных Π΄Π»ΠΈΠ½ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹Ρ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π°Ρ‚Π°ΠΊΠΈ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° Π·Π°Ρ…Π²Π°Ρ‚ управлСния, бСсполСзными.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

.

Π’ ΡΠΎΠΎΡ‚вСтствии с ΠΏΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌΠΈ цСлями, Π² ΠΈΡ‚ΠΎΠ³Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… исслСдований ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ основныС Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹:

1. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄ дивСрсификации исполнимого ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅ΠΌΡƒΡŽ систСму ΠΎΡ‚ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ, ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… нСизвСстныС Ρ€Π°Π½Π΅Π΅ уязвимости Π·Π°Ρ…Π²Π°Ρ‚Π° управлСния.

2. Π”Π°Π½ΠΎ строгоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π”ΠΎΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ НЀП ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ рядом свойств, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ созданиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΊΠΎΠ΄Π°. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ дивСрсификации ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Ρ… участков ΠΊΠΎΠ΄Π°, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΡ… ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π―Π·Ρ‹ΠΊ Π ^гАвт, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ с Ρ†Π΅Π»ΡŒΡŽ использования Π΅Π³ΠΎ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ основного инструмСнта записи дивСрсифицированного ΠΊΠΎΠ΄Π°, обСспСчиваСт простоту осущСствлСния Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

3. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Π°Π½Π°Π»ΠΈΠ·Π° (дСкомпиляции) ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΠΈ ΠŸΠž с Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π² ΠΈΡΠΏΠΎΠ»Π½ΠΈΠΌΡ‹ΠΉ Ρ„Π°ΠΉΠ» с ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π°. Π‘Ρ‹Π»ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ обоснованиС использования НЀП с Ρ†Π΅Π»ΡŒΡŽ противодСйствия Π°Ρ‚Π°ΠΊΠ°ΠΌ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π° ΡΡ€Ρ‹Π² стСка Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π° ΡΡ€Ρ‹Π² систСмной ΠΊΡƒΡ‡ΠΈ.

4. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Π°Ρ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² Π½Π΅Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΠΎΠΊΠ°Π·Π°Π»Π°, Ρ‡Ρ‚ΠΎ всС рассмотрСнныС НЀП ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΏΡƒΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΈ Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ, согласно опрСдСлСниям, Π΄Π°Π½Π½Ρ‹ΠΌ Π² Π³Π»Π°Π²Π΅ 2, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΌ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π°. Богласно обоснованию использования Π΄ΠΈΠ²Π΅Ρ€ΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… НЀП с Ρ†Π΅Π»ΡŒΡŽ противодСйствия Π°Ρ‚Π°ΠΊΠ°ΠΌ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π° ΡΡ€Ρ‹Π² стСка Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ систСмной ΠΊΡƒΡ‡ΠΈ, Π΄Π°Π½Π½ΠΎΠΌΡƒ Π² Π³Π»Π°Π²Π΅ 3, Π΄Π°Π½Π½Ρ‹Π΅ прСобразования Π·Π°Ρ‰ΠΈΡ‰Π°ΡŽΡ‚ ΠŸΠž ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π½Π° Π·Π°Ρ…Π²Π°Ρ‚ управлСния.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

  1. C. Cowan et al. StackGuard: Automatic adaptive detection and prevention of buffer-overflow attacks. In USENIX Security Conference, January 1998. online at http://sheiTv.ifi.unizh.ch/cowan98stackguard.html
  2. H Etoh, GCC extension for protecting applications from stack-smashing attacks, http://www.research.ibm.com/trl/projects/security/ssp/ June 20, 20 053. 5 Vendicator, Stack Shield, http://www.angelfire.com/sk/stackshield/ June 20, 2005
  3. G Richarte, Four different tricks to bypass StackShield and StackGuard protection, 2002, http://wwwl .corest.com/files/files/11 /StackguardPaper.pdf
  4. A. Baratloo, T. Tsai, and N. Singh. Transparent Run-Time Defense Against Stack Smashing Attacks. In Proceedings of the USENIX Annual Technical Conference, 2000, online athttp://www.research.avavalabs.com/proiect/libsafe/doc/usenixOQ/paper.html
  5. Homepage of the PaX Team, http://pax.grsecurity.net/
  6. T. Durden, Bypassing PaX ASLR protection, Phrack 59, Article 9, 2002, available at http://www.phrack.org/show.php?p=59&a=9
  7. H Shacham, M Page et al, On the effectiveness of address-space randomization, in Proceedings of the 11th ACM conference on Computer and communications security, 2004 online athttp://www.stanford.edu/~blp/papers/asrandom.pdf
  8. Solar Designer, StackPatch, http://www.openwall.com/linux
  9. C. Dik, posting to comp.security.unix, January 2, 1997http://groups.google.com/group/comp.security.unix/msg/9fafDc96a3blfc5f
  10. H. Etoh, Stack Protection Systems: (propolice, StackGuard, XP SP2), 2005, Presented at CanSecWest 2005, online at http://cansecwest.com/core05/propolicehttp://www.nextgenss.com/papers/defeating'
  11. MITRE, CVE Common Vulnerabilities and Exposures, http://cve.mitre.org
  12. Y Huang, Protection Against Exploitation of Stack and Heap Overflows, 2003, online at http://www.cgisecurity.com/lib/AntiOverflows.pdf
  13. M. Conover, XPSP2 Heap Exploitation. ppt, available at http://www.cvbertech.net/~shOkshOk/heap/
  14. A. Anisimov, Defeating Microsoft Windows XP SP2 Heap protection and DEP bypass, 2005, online at http://www.maxpatrol.com/defeating-xpsp2-heap-protection.pdf
  15. M. Pietrek, A Crash Course on the Depths of Win32™ Structured Exception Handling, in Microsoft Systems Journal, January 1997, online at http://www.microsoft.eom/msi/Q 197/exception/exception.aspx
  16. B. Bray, Compiler Security Checks In Depth, 2002, available at http://msdn.microsoft.com/
  17. M. Conover, 0. Horovitz, Reliable Windows Heap Exploits, 2004, presented at CanSecWest 2004, online at http://cansecwest.com/csw04/cswQ4-Oded+Connover.ppt
  18. P. Ferrie, F. Perriot, Mostly Harmless, in Virus Bulletin, August 2004, online at http ://pferri e. tripod.com/vb/sasser.pd f
  19. A. Ionescu, Introduction to NT Internals, Part 1, 2004, http://www.relsoft.net/Articles/Process/partl.pdf
  20. S. Eclipse, kill-bill, 2005, http://www.phreedom.org/solar/exploits/msasn 1 -bitstring/
  21. Intel Corporation, IA-32 Intel Architecture Software Developer’s Manual, Volume 3, 2005, section 3.8, available athttp://developer.intel.com/design/pentium4/manuals/index new. htm
  22. S. Andersen, V. Abella, Changes to Functionality in Microsoft Windows XP Service Pack 2, Part 3, 2004, http://www.microsoft.com/technet/prodtechnol/winxppro/maintain/sp2mempr.insp x
  23. G. Wroblewski, General Method of Program Code Obfiiscation, Wroclaw, 2002
  24. C. Collberg, C. Thomborson, D. Low, A Taxonomy of Obfuscating Transformations, Technical Report #148, Department of Computer Science, The university of Auckland, 1997
  25. M. H. Halstead, Elements of Software Science, Elsevier North-Holland, 1977
  26. Warren A. Harrison, Kenneth I. Magel, A complexity measure based on nesting level, SIGPLAN Notices 16(3):63−74,1981
  27. Enrique I. Oviedo, Control Flow, Data Flow and Programmers Complexity, Proceedings of COMPSAC 80, Chicaho IL, 1980
  28. C. Collberg, C. Thomborson, D. Low, Manufacturing Cheap, Resilient, and Stealthy Opaque Constructs, SIGPLAN-SIGACT POPL'98, ACM Press, San Diego, Π‘ A, January 1998
  29. A.B. НСчСткая компиляция ΠΈ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ систСмС // ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ VI ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Π˜Π½Ρ„ормационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2004 Π³.
  30. А.Π’. НСчСткая компиляция ΠΈ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Ρ†Π΅Π»ΡΡ… дивСрсификации ΠŸΠž // ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ VIII ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Π˜Π½Ρ„ормационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2006 Π³.
  31. А.Π’. РСализация ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π½Π΅Ρ‡Π΅Ρ‚ΠΊΠΎΠΉ компиляции Π² Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ ΠΊΠΎΠ΄Π° // Π˜Π·Π²Π΅ΡΡ‚ΠΈΡ Π’Π Π’Π£ № 9 Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ выпуск. ВСхничСскиС Π½Π°ΡƒΠΊΠΈ ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ LII Π½Π°ΡƒΡ‡Π½ΠΎ-тСхничСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ, Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2006 Π³.
  32. А.Π’. ΠœΠ°ΡΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΎΡ‚ ΡΠΈΡΡ‚Π΅ΠΌ локального обнаруТСния врСдоносного ΠΊΠΎΠ΄Π° Π² ΠžΠ‘ сСмСйства Windows NT // ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ VII ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Π˜Π½Ρ„ормационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2005 Π³.
  33. А.Π’. ΠšΠ»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² ΡΠΈΡΡ‚Π΅ΠΌΠ°Ρ… сСмСйства Windows NT // ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ VIII ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠΉ Π½Π°ΡƒΡ‡Π½ΠΎ-практичСской ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ «Π˜Π½Ρ„ормационная Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ», Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2006 Π³.
  34. А.Π’. НСстандартноС использованиС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π΅Π»ΠΎΠΊΠ°Ρ†ΠΈΠΉ Π Π• Ρ„Π°ΠΉΠ»Π° // Изд-Π²ΠΎ ООО «Π Π°Π΄ΠΈΠΎΠΌΠΈΡ€ ΠŸΡ€Π΅ΡΡ». Π Π°Π΄ΠΈΠΎΠΌΠΈΡ€. Π’Π°Ρˆ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, № 4, 2004 Π³.
  35. Tereshkin A. Rootkits: Attacking Personal Firewalls // Black Hat USA, Las Vegas, 2006
  36. А.Π’. АвтоматичСскоС Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² ΡΠΈΡΡ‚Π΅ΠΌΠ°Ρ… сСмСйства Windows NT // Π˜Π·Π²Π΅ΡΡ‚ΠΈΡ Π’Π Π’Π£ № 16 ВСматичСский выпуск. Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Π½Ρ‹Π΅ систСмы, Π’Π°Π³Π°Π½Ρ€ΠΎΠ³, 2006 Π³.
  37. S. Muchnik. Advanced Compiler Design Implementation // Academic Press, San Diego, CA, 1997
  38. Y.N. Srikant, P. Shankar. The Compiler Design Handbook. Optimizations and Machine Code Generation // CRC Press, 2003.
  39. A. Ахо, P. Π‘Π΅Ρ‚ΠΈ, Π”ΠΆ. Ульман. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹: ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ // Π’ΠΈΠ»ΡŒΡΠΌΠ΅, 2003.
  40. А. Π’. ΠšΠΎΡΡ‚Π΅Π»ΡŒΡ†ΠΎΠ². ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€ΠΎΠ² // БПб: Наука ΠΈ Π’Π΅Ρ…Π½ΠΈΠΊΠ°, 2001.
  41. А. V. Aho, S. Б. Johnson and J.D. Ullman, Code generation for expressions with common subexpressions, J. ACM, 24(1), January 1997.
  42. J.R. Allen, K. Kennedy, C. Porterfield and J. Warren, Conversion of Control Dependence to Data Dependence, in conference Record for the 10th Annual ACM Symposium on Principles of Programming Languages, Austin, TX, January 1983.
  43. К. Gallaher, J. Lyle, Using program slicing in software maintenance, IEEE Trans. Software Eng,. SE-17(8), August 1991.
  44. D. Binkley, K.B. Gallaher, Program slicing, Adv. Comput., M. Zelkowitz, Ed., Academic Press, San Diego, CA, 1996.
  45. M. Weiser, Program slicing, IEEE Trans. Software Eng,. 10(4), July 1984.
  46. R. Allen, K. Kennedy, Optimizing Compilers for Modern Architectures, Morgan Kaufman, San Francisco, 2002.
  47. P. Feautrier, Dataflow analysis of array and scalar references, Int. J. Parallel Programming, 20(1), February, 1991.
  48. U. Benerjee, A theory of loop permutations, in Languages and Compilers for Parallel Processing, Research Monographs in Parallel and Distributed Computing, D. Gelernter, A. Nicolau and D. Padua, Eds., Pitman, London, 1990.
  49. A. Appel, Modern Compiler Implementation in C, Cambridge University Press, London, 1998.
  50. A. Appel, К. Supowit, Generalization of the Sethi-Ullman algorithm for register allocation, September 1996.
  51. G. J. Chaitin, M.A. Alexander, A.K. Chandra, J. Cocke, M.E. Hopkins, P.W. Markstein, Register Allocation via coloring, Comput. Langages, 6,1981.
  52. K.D. Cooper, T.J. Harvey, L. Torczon, How to build an interference graph, Software-Pract. Exper., 1998.
  53. L.J. Hendren, G.R. Gao, E.R. Altman, C. Mukerjii, A Register Allocation Framework Based on Hierarchical Cyclic Interval Graphs, ACAPS Technical Memo 33 (revised), McGill University, February, 1993.
  54. J. Fabri, Automatic Storage Optimization, SIGPLAN'79, 1979.
  55. T.A. Proebsting, C.N. Fischer, Probabilistic Register Allocation
  56. C. Ferdinand, H. Seldi, R. Wilhelm, Tree automata for code selection, Acta Inf,., 31, 1994.
  57. M.Ganapathi, C.N. Fischer, J.L. Hennessy, Retargetable compiler code generation, Comput. Surv., 14(4), 1982.
  58. E. Pelegri-Llopart, S.L. Graham, Optimal Code Generation for Expression Trees, in Proceedings of the 15th ACM Symposium on Principles of Programming Languages, 1988.
  59. R. Wilhelm, D. Maurer, Compiler Design, International Computer Science Series, Addison-Wesley, Reading, MA, 1995.
  60. M. Wolfe, Advanced Loop Interchange, in Proceedings 1986 International Conference on Parallel Processing, St. Charles, IL, August 1986.
  61. M.J. Wolfe, C. Tseng, The power test for data dependence, IEEE Trans. Parallel and Distributes Syst., 3(5), September 1992.
  62. A.C. Myers, Bidirectional object layout for separate compilation, in OOPSLA'95 Conference Proceedings: Object-Oriented Programming Systems, Languages and Applications, ACM Press, New York, 1995.
  63. R.E. Hank, W.-M. Hwu, B.R. Rau, Region-based Compilation: Anth1. troduction and Motivation, in 28 IEEE-ACM International Symposium on Microarchitecture (MICRO), Ann Arbor, MI, 1995.
  64. F. Mueller, D. Whalley, Avoiding Conditional Branches by Code Replication, in ACM SIGPLAN Conference on Programming Language Design and Implementation, La Jolla, CA, 1995.
  65. Π’. Steffen, Data Flow Analysis as Model Checking, TACS, Sendai, Japan, Lecture Notes in Computer Science, Vol. 526, Springer-Verlag, New York, 1991.
  66. Yinrong Huang. «Π Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ Ρ€Π°Π΄ΠΈ выТивания. ΠŸΠΎΠΏΡƒΠ»ΡΡ†ΠΈΡ ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… исполняСмых ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ». http://www.bugtraq.ru/librarv/programming/diversifv.html
  67. J. Davidson, S. Jinturkar, Memory Access Coalescing: A Technique for eliminating Redundant Memory Access, in ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), Orlando, FL, June 1994.
  68. T. Reps, S. Horwitz, M. Sagiv, Precise Interprocedural Dataflow Analysis Via Graph Reachability, in ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL), San Francisco, CA, January 1995.
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ