Π’ OpenBSD для sshd ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ° Π²ΠΎ врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

Π’ OpenBSD Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ эксплуатации уязвимостСй, основанная Π½Π° случайной ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅ исполняСмого Ρ„Π°ΠΉΠ»Π° sshd ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ систСмы. Π Π°Π½Π΅Π΅ подобная Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ»Π°ΡΡŒ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ ядра ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ libc.so, libcrypto.so ΠΈ ld.so, Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π° ΠΈ для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ². Π’ блиТайшСС врСмя ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ планируСтся Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ntpd ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвСрных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ИзмСнСниС ΡƒΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π² состав Π²Π΅Ρ‚ΠΊΠΈ CURRENT ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π² выпускС OpenBSD 7.3.

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

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru