TL; ΠΠ . ΠΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ°, Π³ΠΈ ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΠΌΠ΅ ΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° ΡΡΠ²ΡΠ΄Π½ΡΠ²Π°ΡΠ΅ ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°Π°Ρ Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΡΡΠΈΡΠ°ΡΠ° Π½Π° ΠΏΠ΅Ρ ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux. ΠΠ° ΡΠ΅ΠΊΠΎΡ, ΡΠ° Π·Π΅Π΄ΠΎΠ²ΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ, Π³ΠΈ Π²ΡΠΈΡΠ°Π²ΠΌΠ΅ ΡΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π³ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π²ΠΌΠ΅ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈΡΠ΅ ΡΠ΅ΠΌΠΈ Π²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. Π Π°Π·Π³Π»Π΅Π΄Π°Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΠ΅ OpenSUSE 12.4, Debian 9, CentOS, RHEL 6.10 ΠΈ 7, ΠΊΠ°ΠΊΠΎ ΠΈ Ubuntu 14.04, 12.04 ΠΈ 18.04 LTS.
Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π°Π°Ρ Π΄Π΅ΠΊΠ° Π΄ΡΡΠΈ ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΡΠ΅ΠΌΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΡΠ΅Π΄Π΅ΡΠ΅ ΠΊΠ°Π½Π°ΡΠΈΠ½ΡΠΈ ΠΈ ΠΊΠΎΠ΄ΠΎΡ Π½Π΅Π·Π°Π²ΠΈΡΠ΅Π½ ΠΎΠ΄ ΠΏΠΎΠ·ΠΈΡΠΈΡΠ°ΡΠ° ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ ΡΠ΅ ΡΡΠ²ΠΎΠ΅Π½ΠΈ ΠΎΠ΄ ΡΠΈΡΠ΅. Π‘ΠΈΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π΅ ΡΡΡΠ΅ ΠΏΠΎΠ»ΠΎΡΠ° Π·Π° ΠΊΠΎΠΌΠΏΠ°ΡΠ»Π΅ΡΠΈΡΠ΅ ΠΊΠΎΠ³Π° ΡΡΠ°Π½ΡΠ²Π° Π·Π±ΠΎΡ Π·Π° Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΡΡΠ΄ΠΈΡΠΎΡ Π½Π° ΡΡΠ΅ΠΊ, ΠΊΠΎΡ ΡΠ΅ Π½Π°ΡΠ΄Π΅ Π²ΠΎ ΡΠ΅Π½ΡΠ°ΡΠΎΡ Π½Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ Π²ΠΎ ΡΠ°Π½ΡΠ°ΡΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ°Π²ΡΠ²Π°ΡΠ΅ΡΠΎ
ΠΡΠ΅Π³Π»Π΅Π΄ΠΎΡ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° Π½Π°ΡΠ³ΠΎΠ»Π΅ΠΌΠΈΠΎΡ Π±ΡΠΎΡ Π·Π°ΡΡΠΈΡΠ½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΈ Π²ΠΎ Ubuntu 18.04 Π½Π° Π½ΠΈΠ²ΠΎΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π΅Π½ ΡΠΈΡΡΠ΅ΠΌ ΠΈ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΏΠΎ ΡΡΠΎ ΡΠ»Π΅Π΄ΠΈ Debian 9. ΠΠ΄ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, OpenSUSE 12.4, CentOS 7 ΠΈ RHEL 7 ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π°Ρ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ Π·Π°ΡΡΠΈΡΠ½ΠΈ ΡΠ΅ΠΌΠΈ ΠΈ Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ ΡΡΠ΄ΠΈΡ Π½Π° ΡΡΠ΅ΠΊ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ ΡΡΡΠ΅ ΠΏΠΎΡΠΈΡΠΎΠΊΠΎ ΡΠΎ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ³ΡΡΡ ΡΠ΅Ρ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ.
ΠΠΎΠ²Π΅Π΄
Π’Π΅ΡΠΊΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π²ΠΈΡΠΎΠΊΠΎΠΊΠ²Π°Π»ΠΈΡΠ΅ΡΠ΅Π½ ΡΠΎΡΡΠ²Π΅Ρ. Π ΠΏΠΎΠΊΡΠ°Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΠΈΠΎΡ Π±ΡΠΎΡ Π½Π°ΠΏΡΠ΅Π΄Π½ΠΈ Π°Π»Π°ΡΠΊΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΡΠ°ΡΠΈΡΠΊΠΈ ΠΊΠΎΠ΄ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ°Π΅ΡΠ΅, ΠΊΠ°ΠΊΠΎ ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π΅Π½ Π½Π°ΠΏΡΠ΅Π΄ΠΎΠΊ Π²ΠΎ ΡΠ°Π·Π²ΠΎΡΠΎΡ Π½Π° ΠΊΠΎΠΌΠΏΠ°ΡΠ»Π΅ΡΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΡΠΊΠΈ ΡΠ°Π·ΠΈΡΠΈ, ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΈΠΎΡ ΡΠΎΡΡΠ²Π΅Ρ ΡΓ¨ ΡΡΡΠ΅ ΡΡΡΠ°Π΄Π° ΠΎΠ΄ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ ΠΊΠΎΠΈ ΠΏΠΎΡΡΠΎΡΠ°Π½ΠΎ ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Π°Ρ ΠΎΠ΄ Π½Π°ΠΏΠ°ΡΠ°ΡΠΈΡΠ΅. Π‘ΠΈΡΡΠ°ΡΠΈΡΠ°ΡΠ° Π΅ ΡΡΡΠ΅ ΠΏΠΎΠ»ΠΎΡΠ° Π²ΠΎ Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ ΠΊΠΎΠΈ Π²ΠΊΠ»ΡΡΡΠ²Π°Π°Ρ Π½Π°ΡΠ»Π΅Π΄Π΅Π½ ΠΊΠΎΠ΄. ΠΠΎ ΡΠ°ΠΊΠ²ΠΈ ΡΠ»ΡΡΠ°ΠΈ, Π½Π΅ ΡΠ°ΠΌΠΎ ΡΡΠΎ ΡΠ΅ ΡΠΎΠΎΡΡΠ²Π°ΠΌΠ΅ ΡΠΎ Π²Π΅ΡΠ½ΠΈΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π° ΠΏΡΠΎΠ½Π°ΠΎΡΠ°ΡΠ΅ Π½Π° ΠΌΠΎΠΆΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΡΠΊΠΎΡΠΈΡΡΠ°Ρ, ΡΡΠΊΡ ΡΠΌΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ ΠΈ ΡΠΎ ΡΡΡΠΎΠ³ΠΈ ΡΠ°ΠΌΠΊΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠ°ΡΠΈΠ±ΠΈΠ»Π½ΠΎΡΡ Π½Π°Π½Π°Π·Π°Π΄, ΠΊΠΎΠΈ ΡΠ΅ΡΡΠΎΠΏΠ°ΡΠΈ Π±Π°ΡΠ°Π°Ρ ΠΎΠ΄ Π½Π°Ρ Π΄Π° Π·Π°ΡΡΠ²Π°ΠΌΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½, ΠΈΠ»ΠΈ ΡΡΡΠ΅ ΠΏΠΎΠ»ΠΎΡΠΎ, ΡΠ°Π½Π»ΠΈΠ² ΠΈΠ»ΠΈ Π±Π°Π³ΠΈΡΠ΅Π½ ΠΊΠΎΠ΄.
Π’ΡΠΊΠ° ΡΡΠ°ΠΏΡΠ²Π°Π°Ρ Π²ΠΎ ΠΈΠ³ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π° Π·Π°ΡΡΠΈΡΠ° ΠΈΠ»ΠΈ Π·Π°ΡΠ²ΡΡΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ΅. ΠΠ΅ ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° ΡΠΏΡΠ΅ΡΠΈΠΌΠ΅ Π½Π΅ΠΊΠΎΠΈ Π²ΠΈΠ΄ΠΎΠ²ΠΈ Π³ΡΠ΅ΡΠΊΠΈ, Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΎ ΠΎΡΠ΅ΠΆΠ½Π΅ΠΌΠ΅ ΠΆΠΈΠ²ΠΎΡΠΎΡ Π½Π° Π½Π°ΠΏΠ°ΡΠ°ΡΠΎΡ ΠΈ Π΄Π΅Π»ΡΠΌΠ½ΠΎ Π΄Π° Π³ΠΎ ΡΠ΅ΡΠΈΠΌΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΡ ΡΠΎ ΡΠΏΡΠ΅ΡΡΠ²Π°ΡΠ΅ ΠΈΠ»ΠΈ ΡΠΏΡΠ΅ΡΡΠ²Π°ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° ΠΎΠ²ΠΈΠ΅ Π³ΡΠ΅ΡΠΊΠΈ. Π’Π°ΠΊΠ²Π°ΡΠ° Π·Π°ΡΡΠΈΡΠ° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠΈ Π²ΠΎ ΡΠΈΡΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, Π½ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ ΡΠ΅ ΡΠ°Π·Π»ΠΈΠΊΡΠ²Π°Π°Ρ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎ ΡΠ»ΠΎΠΆΠ΅Π½ΠΎΡΡ, Π΅ΡΠΈΠΊΠ°ΡΠ½ΠΎΡΡ ΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ: ΠΎΠ΄ ΠΊΠ°Π½Π°ΡΠΈΠ½ΡΠΈ ΠΈ
CVE ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ
Π‘ΠΈΡΠ΅ ΡΠΌΠ΅ Π²ΠΈΠ΄Π΅Π»Π΅ Π½Π°ΠΏΠΈΡΠΈ ΡΠΎ Π½Π°ΡΠ»ΠΎΠ²ΠΈ ΠΊΠ°ΠΊΠΎ βΠΠ°ΡΡΠ°Π½Π»ΠΈΠ²ΠΈΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°ΡΠ°β ΠΈΠ»ΠΈ βΠΠ°ΡΡΠ°Π½Π»ΠΈΠ²ΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈβ. ΠΠ±ΠΈΡΠ½ΠΎ ΡΠΈΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°Π°Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° Π²ΠΊΡΠΏΠ½ΠΈΠΎΡ Π±ΡΠΎΡ Π½Π° Π·Π°ΠΏΠΈΡΠΈ Π·Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ ΠΊΠ°ΠΊΠΎ
ΠΠ°ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π΅ΠΌΠ΅ΡΠ΅ Π³ΠΎ Π²ΠΊΡΠΏΠ½ΠΈΠΎΡ Π±ΡΠΎΡ Π½Π° CVE Π²ΠΎ ΠΈΠ·ΠΌΠΈΠ½Π°ΡΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π·Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ Linux ΠΈ ΠΏΠ΅ΡΡΠ΅ Π½Π°ΡΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈ ΡΠ΅ΡΠ²Π΅ΡΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΠΈΠΌΠ΅Π½ΠΎ Ubuntu, Debian, Red Hat Enterprise Linux ΠΈ OpenSUSE.
Π‘Π». 1
Π¨ΡΠΎ Π½ΠΈ ΠΊΠ°ΠΆΡΠ²Π° ΠΎΠ²ΠΎΡ Π³ΡΠ°ΡΠΈΠΊ? ΠΠ°Π»ΠΈ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π° CVE Π·Π½Π°ΡΠΈ Π΄Π΅ΠΊΠ° Π΅Π΄Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ° Π΅ ΠΏΠΎΡΠ°Π½Π»ΠΈΠ²Π° ΠΎΠ΄ Π΄ΡΡΠ³Π°? ΠΠ΅ΠΌΠ° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ° ΡΠ΅ Π²ΠΈΠ΄ΠΈΡΠ΅ Π΄Π΅ΠΊΠ° Debian ΠΈΠΌΠ° ΠΏΠΎΡΠΈΠ»Π½ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ, Π΄Π° ΡΠ΅ΡΠ΅ΠΌΠ΅, OpenSUSE ΠΈΠ»ΠΈ RedHat Linux, Π° ΡΠ΅ΠΏΠ°ΠΊ Debian ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ CVE. Π‘Π΅ΠΏΠ°ΠΊ, ΡΠΈΠ΅ Π½Π΅ ΠΌΠΎΡΠ° Π΄Π° Π·Π½Π°ΡΠ°Ρ ΠΎΡΠ»Π°Π±Π΅Π½Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ: Π΄ΡΡΠΈ ΠΈ ΠΏΡΠΈΡΡΡΡΠ²ΠΎΡΠΎ Π½Π° CVE Π½Π΅ ΠΏΠΎΠΊΠ°ΠΆΡΠ²Π° Π΄Π°Π»ΠΈ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Π½ΠΈ. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΠΈΠΎΠ·Π½ΠΎΡΡ Π΄Π°Π²Π°Π°Ρ ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΈΡΠ° Π·Π° ΡΠΎΠ° ΠΊΠ°ΠΊΠΎ Π²Π΅ΡΠΎΡΠ°ΡΠ½ΠΎ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡ, Π½ΠΎ Π½Π° ΠΊΡΠ°ΡΠΎΡ ΠΈΡΠΊΠΎΡΠΈΡΡΠ»ΠΈΠ²ΠΎΡΡΠ° Π²ΠΎ Π³ΠΎΠ»Π΅ΠΌΠ° ΠΌΠ΅ΡΠ° Π·Π°Π²ΠΈΡΠΈ ΠΎΠ΄ Π·Π°ΡΡΠΈΡΠ°ΡΠ° ΠΏΡΠΈΡΡΡΠ½Π° Π²ΠΎ ΠΏΠΎΠ³ΠΎΠ΄Π΅Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈ ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π½Π°ΠΏΠ°ΡΠ°ΡΠΈΡΠ΅. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, ΠΎΡΡΡΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΈΠ·Π²Π΅ΡΡΠ°ΠΈ Π·Π° CVE Π½Π΅ ΠΊΠ°ΠΆΡΠ²Π° Π½ΠΈΡΡΠΎ Π·Π° Π΄ΡΡΠ³ΠΈΡΠ΅ Π½Π΅ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°Π½ΠΈ ΠΈΠ»ΠΈ Π½Π΅ΠΏΠΎΠ·Π½Π°ΡΠΈ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ. Π Π°Π·Π»ΠΈΠΊΠ°ΡΠ° Π²ΠΎ CVE ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π΄ΠΎΠ»ΠΆΠΈ Π½Π° Π΄ΡΡΠ³ΠΈ ΡΠ°ΠΊΡΠΎΡΠΈ ΠΎΡΠ²Π΅Π½ ΠΊΠ²Π°Π»ΠΈΡΠ΅ΡΠΎΡ Π½Π° ΡΠΎΡΡΠ²Π΅ΡΠΎΡ, Π²ΠΊΠ»ΡΡΡΠ²Π°ΡΡΠΈ Π³ΠΈ ΡΠ΅ΡΡΡΡΠΈΡΠ΅ Π΄ΠΎΠ΄Π΅Π»Π΅Π½ΠΈ Π·Π° ΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅ ΠΈΠ»ΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°ΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΈ. ΠΠΎ Π½Π°ΡΠΈΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΈΠΎΡ Π±ΡΠΎΡ Π½Π° CVE Π½Π° Debian ΠΌΠΎΠΆΠ΅ Π΅Π΄Π½ΠΎΡΡΠ°Π²Π½ΠΎ Π΄Π° ΡΠΊΠ°ΠΆΠ΅ Π΄Π΅ΠΊΠ° Debian ΠΈΡΠΏΡΠ°ΡΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠΎΡΡΠ²Π΅ΡΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ.
Π‘Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, ΡΠΈΡΡΠ΅ΠΌΠΎΡ CVE ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΊΠΎΡΠΈΡΠ½ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΊΠΎΠΈ Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π°Π°Ρ Π΄Π° ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½Π° Π·Π°ΡΡΠΈΡΠ°. ΠΠΎΠ»ΠΊΡ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΎ Π³ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°ΠΌΠ΅ ΠΏΡΠΈΡΠΈΠ½ΠΈΡΠ΅ Π·Π° Π½Π΅ΡΡΠΏΠ΅Ρ
ΠΎΡ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°, ΡΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΠ»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π°Π°Ρ ΠΌΠΎΠΆΠ½ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΡΠ°Π·Π²ΠΈΡΠ°Ρ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ ΠΎΡΠΊΡΠΈΠ²Π°ΡΠ΅ ΠΈ ΠΎΠ΄Π³ΠΎΠ²ΠΎΡ. ΠΠ° ΡΠ». 2 Π³ΠΈ ΠΏΡΠΈΠΊΠ°ΠΆΡΠ²Π° ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈΡΠ΅ Π½Π° ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ Π·Π° ΡΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π²ΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ (
Π‘Π». 2
Π·Π°Π΄Π°ΡΠΈ
ΠΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ° ΠΈΠΌΠ°ΠΌΠ΅ Π½Π°ΠΌΠ΅ΡΠ° Π΄Π° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΈΠΌΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΠ²Π΅ ΠΏΡΠ°ΡΠ°ΡΠ°:
- ΠΠΎΡΠ° Π΅ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux? ΠΠΎΠΈ Π·Π°ΡΡΠΈΡΠ½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΠΏΠΎΡΡΠΎΡΠ°Ρ Π²ΠΎ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈΡΠ΅ Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ ΠΈ ΠΊΠΎΡΠΈΡΠ½ΠΈΡΠΊΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ?
- ΠΠ°ΠΊΠΎ ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΡΠ²ΠΎΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΡΠΎ ΡΠ΅ΠΊΠΎΡ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½ΠΈΠ· Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅?
- ΠΠΎΠΈ ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠ½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ Π·Π° ΡΠ΅ΠΊΠΎΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°?
- ΠΠ°ΠΊΠ²ΠΈ Π·Π°ΡΡΠΈΡΠΈ ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΈ Π·Π° ΡΠ΅ΠΊΠΎΡ Π±ΠΈΠ½Π°ΡΠ΅Π½?
ΠΠ·Π±ΠΎΡ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ
ΠΠ·Π»Π΅Π³ΡΠ²Π° Π΄Π΅ΠΊΠ° Π΅ ΡΠ΅ΡΠΊΠΎ Π΄Π° ΡΠ΅ Π½Π°ΡΠ΄Π΅ ΡΠΎΡΠ½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π½ΠΈΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π²ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΡΠ»ΡΡΠ°ΠΈ Π±ΡΠΎΡΠΎΡ Π½Π° ΠΏΡΠ΅Π·Π΅ΠΌΠ°ΡΠ° Π½Π΅ Π³ΠΎ ΠΎΠ·Π½Π°ΡΡΠ²Π° Π±ΡΠΎΡΠΎΡ Π½Π° Π²ΠΈΡΡΠΈΠ½ΡΠΊΠΈΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ. Π‘Π΅ΠΏΠ°ΠΊ, Π²Π°ΡΠΈΡΠ°Π½ΡΠΈΡΠ΅ Π½Π° Unix Π³ΠΎ ΡΠΎΡΠΈΠ½ΡΠ²Π°Π°Ρ Π½Π°ΡΠ³ΠΎΠ»Π΅ΠΌΠΈΠΎΡ Π΄Π΅Π» ΠΎΠ΄ ΡΠ΅ΡΠ²Π΅ΡΡΠΊΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ (Π½Π° Π²Π΅Π±-ΡΠ΅ΡΠ²Π΅ΡΠΈΡΠ΅ 69,2%, ΠΎΠ΄
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°/Π²Π΅ΡΠ·ΠΈΡΠ°
ΠΠ°Π΄ΡΠΎΡΠΎ
ΠΠ·Π³ΡΠ°Π΄Π±Π°
OpenSUSE 12.4
4.12.14-95.3-ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ
# 1 SMP ΡΡΠ΅ 5 Π΄Π΅ΠΊΠ΅ΠΌΠ²ΡΠΈ 06:00:48 UTC 2018 (63a8d29)
Debian 9 (ΠΈΡΡΠ΅Π³Π½ΡΠ²Π°ΡΠ΅)
4.9.0-8-Π°ΠΌΠ΄64
# 1 SMP Debian 4.9.130-2 (2018-10-27)
CentOS 6.10
2.6.32-754.10.1.el6.x86_64
# 1 SMP Π²ΡΠΎ 15 ΡΠ°Π½ΡΠ°ΡΠΈ 17:07:28 UTC 2019 Π³
CentOS 7
3.10.0-957.5.1.el7.x86_64
# 1 SMP ΠΏΠ΅ΡΠΎΠΊ 1 ΡΠ΅Π²ΡΡΠ°ΡΠΈ 14:54:57 UTC 2019 Π³ΠΎΠ΄ΠΈΠ½Π°
Red Hat Enterprise Linux Server 6.10 (Π‘Π°Π½ΡΠΈΡΠ°Π³ΠΎ)
2.6.32-754.9.1.el6.x86_64
# 1 SMP ΡΡΠ΅ 21 Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 15:08:21 EST 2018 Π³
Red Hat Enterprise Linux Server 7.6 (Maipo)
3.10.0-957.1.3.el7.x86_64
# 1 SMP ΡΠ΅ΡΠ²ΡΡΠΎΠΊ 15 Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 17:36:42 UTC 2018 Π³ΠΎΠ΄ΠΈΠ½Π°
Ubuntu 14.04 (ΠΠΎΠ²Π΅ΡΠ»ΠΈΠ² Π’Π°Ρ
Ρ)
4.4.0-140-Π³Π΅Π½Π΅ΡΠΈΡΠΊΠΈ
#166~14.04.1-Ubuntu SMP ΡΠ°Π±, 17 Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 01:52:43 UTC 20β¦
Ubuntu 16.04 (Xenial Xerus)
4.15.0-1026-gcp
#27~16.04.1-Ubuntu SMP ΠΏΠ΅ΡΠΎΠΊ 7 Π΄Π΅ΠΊΠ΅ΠΌΠ²ΡΠΈ 09:59:47 UTC 2018
Ubuntu 18.04 (Bionic Beaver)
4.15.0-1026-gcp
#27-Ubuntu SMP ΡΠ΅ΡΠ²ΡΡΠΎΠΊ 6 Π΄Π΅ΠΊΠ΅ΠΌΠ²ΡΠΈ 18:27:01 UTC 2018
Π’Π°Π±Π΅Π»Π° 1
ΠΠ½Π°Π»ΠΈΠ·Π°
ΠΡΠ΄Π΅ Π΄Π° ΡΠ° ΠΏΡΠΎΡΡΠΈΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ, ΠΊΠ°ΠΊΠΎ ΠΈ ΡΠ²ΠΎΡΡΡΠ²Π°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈ ΠΏΡΠ΅ΠΊΡ ΠΌΠ΅Π½Π°ΡΠ΅ΡΠΎΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Π½Π° ΡΠ΅ΠΊΠΎΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ° Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΡΡΠΈΡΠ°ΡΠ°. Π’Π°ΠΊΠ°, Π½ΠΈΠ΅ Π³ΠΈ ΡΠ°Π·Π³Π»Π΅Π΄ΡΠ²Π°ΠΌΠ΅ ΡΠ°ΠΌΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΎΠ΄ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΡΠ΅ ΠΎΠ³Π»Π΅Π΄Π°Π»Π° Π½Π° ΡΠ΅ΠΊΠΎΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°, ΠΈΠ³Π½ΠΎΡΠΈΡΠ°ΡΡΠΈ Π³ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΎΠ΄ Π½Π΅ΡΡΠ°Π±ΠΈΠ»Π½ΠΈΡΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΡΠ° (ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΎΠ³Π»Π΅Π΄Π°Π»Π°ΡΠ° Π·Π° βΡΠ΅ΡΡΠΈΡΠ°ΡΠ΅β Π½Π° Debian) ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΎΠ΄ ΡΡΠ΅ΡΠΈ ΡΡΡΠ°Π½ΠΈ (ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Nvidia ΠΎΠ΄ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΡΠ΅ ΠΎΠ³Π»Π΅Π΄Π°Π»Π°). ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ, Π½Π΅ Π³ΠΈ ΡΠ°Π·Π³Π»Π΅Π΄ΡΠ²Π°ΠΌΠ΅ ΠΏΡΠΈΠ»Π°Π³ΠΎΠ΄Π΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈ Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ ΠΈΠ»ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈΡΠ΅ ΠΏΠΎΡΠ°ΡΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠ½Π°Π»ΠΈΠ·Π° Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠ° Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ
ΠΡΠΈΠΌΠ΅Π½ΠΈΠ²ΠΌΠ΅ ΡΠΊΡΠΈΠΏΡΠ° Π·Π° Π°Π½Π°Π»ΠΈΠ·Π° Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π°
ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ, Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ ΠΈΠΌΠ°Π°Ρ ΠΏΠΎΡΡΡΠΎΠ³ΠΈ ΠΏΠΎΡΡΠ°Π²ΠΊΠΈ Π½Π°Π΄Π²ΠΎΡ ΠΎΠ΄ ΠΊΡΡΠΈΡΠ°ΡΠ°. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, CentOS 6.10 ΠΈ RHEL 6.10 Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ 2.6.32 Π½Π΅ΠΌΠ°Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΊΡΠΈΡΠΈΡΠ½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΈ Π²ΠΎ ΠΏΠΎΠ½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅
ΠΡΡΠ³Π° ΡΠΎΡΠΊΠ° ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π·Π΅ΠΌΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΏΡΠΈ ΡΠΎΠ»ΠΊΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅: Π½Π΅ΠΊΠΎΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π° ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ ΡΡΠΎ ΡΠ° Π·Π³ΠΎΠ»Π΅ΠΌΡΠ²Π°Π°Ρ ΠΏΠΎΠ²ΡΡΠΈΠ½Π°ΡΠ° Π½Π° Π½Π°ΠΏΠ°Π΄ΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΈ Π·Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ. Π’Π°ΠΊΠ²ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π²ΠΊΠ»ΡΡΡΠ²Π°Π°Ρ uprobes ΠΈ kprobes, ΠΊΠ΅ΡΠ½Π΅Π» ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ BPF/eBPF. ΠΠ°ΡΠ° ΠΏΡΠ΅ΠΏΠΎΡΠ°ΠΊΠ° Π΅ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π³ΠΎΡΠ΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° Π΄Π° ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π²ΠΈΡΡΠΈΠ½ΡΠΊΠ° Π·Π°ΡΡΠΈΡΠ°, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΈΠ΅ ΡΠ΅ Π½Π΅ΡΡΠΈΠ²ΠΈΡΠ°Π»Π½ΠΈ Π·Π° ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ ΠΈ Π½ΠΈΠ²Π½Π°ΡΠ° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° ΠΏΡΠ΅ΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π° Π΄Π΅ΠΊΠ° Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ½ΠΈΡΠ΅ Π°ΠΊΡΠ΅ΡΠΈ Π²Π΅ΡΠ΅ ΠΈΠΌΠ°Π°Ρ Π²ΠΎΡΠΏΠΎΡΡΠ°Π²Π΅Π½ΠΎ ΡΠΏΠΎΡΠΈΡΡΠ΅ Π²ΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΡ. ΠΠΎ, Π°ΠΊΠΎ ΠΎΠ²ΠΈΠ΅ ΠΎΠΏΡΠΈΠΈ ΡΠ΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΈ, Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΠΌΠΎΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎ Π΄Π° ΡΠ»Π΅Π΄ΠΈ Π·Π° Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π°.
ΠΠ»Π΅Π΄Π°ΡΡΠΈ ΠΏΠΎΠ½Π°ΡΠ°ΠΌΡ Π²ΠΎ Π·Π°ΠΏΠΈΡΠΈΡΠ΅ Π²ΠΎ Π’Π°Π±Π΅Π»Π° 2, Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΡΠ΅ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π°Π°Ρ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΎΠΏΡΠΈΠΈ Π·Π° Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΎΠΏΡΡΡΠΈ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΈΡΡΠ΅ΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ ΠΏΡΠ΅Π»Π΅Π²Π°ΡΠ΅ Π½Π° ΡΡΠ΅ΠΊ/ΠΊΡΠΏΠΈ. Π‘Π΅ΠΏΠ°ΠΊ, Π·Π°Π±Π΅Π»Π΅ΠΆΡΠ²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° Π΄ΡΡΠΈ ΠΈ Π½Π°ΡΠ½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠΏΡΠ»Π°ΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ΠΌΠ°Π°Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΎ ΠΏΠΎΡΠ»ΠΎΠΆΠ΅Π½Π° Π·Π°ΡΡΠΈΡΠ° (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΎ Π·Π°ΠΊΡΠΏΠΈ
ΠΠ½Π°Π»ΠΈΠ·Π° Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ
ΠΠ΅ Π΅ ΠΈΠ·Π½Π΅Π½Π°Π΄ΡΠ²Π°ΡΠΊΠΈ, ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈΠΌΠ°Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΡ, ΠΎΠΏΡΠΈΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡΠ°, Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΈΡΠ½. Π Π°Π·Π»ΠΈΠΊΠΈ ΠΏΠΎΡΡΠΎΡΠ°Ρ Π΄ΡΡΠΈ ΠΈ Π·Π°
Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ
ΠΠΊΡΠΏΠ½ΠΎ, ΠΏΡΠ΅Π·Π΅ΠΌΠ°Π²ΠΌΠ΅ 361 ΠΏΠ°ΠΊΠ΅ΡΠΈ Π·Π° ΡΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΠΈΠ·Π²Π»Π΅ΠΊΡΠ²Π°ΡΡΠΈ ΡΠ°ΠΌΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΠ΄ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎΠ²ΠΈΠ·ΠΎΡΠΈ. ΠΠΈ ΠΈΠ³Π½ΠΎΡΠΈΡΠ°Π²ΠΌΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π±Π΅Π· ΠΈΠ·Π²ΡΡΠ½ΠΈ ELF, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΈΠ·Π²ΠΎΡΠΈ, ΡΠΎΠ½ΡΠΎΠ²ΠΈ ΠΈΡΠ½. ΠΠΎ ΡΠΈΠ»ΡΡΠΈΡΠ°ΡΠ΅ΡΠΎ, ΠΎΡΡΠ°Π½Π°Π° 556 ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΊΠΎΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ Π²ΠΊΡΠΏΠ½ΠΎ 129 Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π½ΠΈΠ· Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ Π΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½Π° Π½Π° ΡΠ». 569.
Π‘Π». 3
ΠΠΎΠΆΠ΅ Π΄Π° Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅ Π΄Π΅ΠΊΠ° ΠΊΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΠΌΠΎΠ΄Π΅ΡΠ½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°ΡΠ°, ΡΠΎΠ»ΠΊΡ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠΎΠ΄ΡΠΆΠΈΠ½ΠΈ ΡΠΎΠ΄ΡΠΆΠΈ, ΡΡΠΎ Π΅ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ. Π‘Π΅ΠΏΠ°ΠΊ, Ubuntu ΠΈ Debian ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π²ΠΊΠ»ΡΡΡΠ²Π°Π°Ρ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ (ΠΈ ΠΈΠ·Π²ΡΡΠ½ΠΈ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ) ΠΎΠ΄ CentOS, SUSE ΠΈ RHEL, ΡΡΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΡΠ°Π»Π½ΠΎ Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΠΏΠΎΠ²ΡΡΠΈΠ½Π°ΡΠ° Π·Π° Π½Π°ΠΏΠ°Π΄ Π½Π° Ubuntu ΠΈ Debian (ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° Π±ΡΠΎΡΠΊΠΈΡΠ΅ Π³ΠΈ ΡΠ΅ΡΠ»Π΅ΠΊΡΠΈΡΠ°Π°Ρ ΡΠΈΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΎΠ΄ ΡΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ, ΠΎΠ΄Π½ΠΎΡΠ½ΠΎ Π½Π΅ΠΊΠΎΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π°Ρ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΠ°ΡΠΈ). ΠΠ²Π° Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΊΠΎΠ³Π° ΡΠ΅ Π³ΠΈ Π·Π΅ΠΌΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈΡΠ΅ ΠΏΠΎΠΌΠ΅ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅. Π’Π°ΠΊΠ°, ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠ° Π²ΠΎ Π΅Π΄Π΅Π½ Π±ΠΈΠ½Π°ΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΠΌΠ½ΠΎΠ³Ρ Π΄Π΅Π»ΠΎΠ²ΠΈ ΠΎΠ΄ Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠΎΡ, ΠΈΡΡΠΎ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ°Π½Π»ΠΈΠ²Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΡΠΈΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΡΡΠΎ ΡΠ° ΡΠ²Π΅Π·ΡΠ²Π°Π°Ρ. ΠΠ°ΠΊΠΎ ΠΏΠΎΡΠ΅ΡΠ½Π° ΡΠΎΡΠΊΠ°, Π΄Π° ΡΠ° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌΠ΅ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π±Π°ΡΠ° Π½Π° Π±ΡΠΎΡΠΎΡ Π½Π° Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ ΠΌΠ΅ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ:
ΠΠΎ ΡΠ΅ΡΠΈΡΠΈ ΡΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, 60% ΠΎΠ΄ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΈΠΌΠ°Π°Ρ Π½Π°ΡΠΌΠ°Π»ΠΊΡ 10 Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ. ΠΠΎΠΊΡΠ°Ρ ΡΠΎΠ°, Π½Π΅ΠΊΠΎΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈΠΌΠ°Π°Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π° Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ (ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 100). ΠΡΡΠΎΡΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈΡΠ΅ ΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ: ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΎΡΠ΅ΠΊΡΠ²Π°ΡΠ΅, Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠ΅ ΠΊΠΎΡΠΈΡΡΠ°Ρ ΠΎΠ΄ ΠΌΠ½ΠΎΠ³Ρ Π΄ΡΡΠ³ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π²ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ°ΡΠ°, ΡΠ°ΠΊΠ° ΡΡΠΎ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈΡΠ΅ ΠΊΠ°Ρ ΠΎΠ½ΠΈΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΈΠ·Π±ΡΠ°Π½ΠΈ ΡΠ΅ ΡΠΎ Π²ΠΈΡΠΎΠΊ ΡΠΈΠ·ΠΈΠΊ. ΠΠ°ΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΠ°Π±Π΅Π»Π° Π³ΠΈ Π½Π°Π²Π΅Π΄ΡΠ²Π° 20-ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠΎ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π΅Π½ Π±ΡΠΎΡ Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΈ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ Π²ΠΎ SLES, Centos 7, Debian 9 ΠΈ Ubuntu 18.04 (ΡΠ΅ΠΊΠΎΡΠ° ΡΠ΅Π»ΠΈΡΠ° Π³ΠΎ ΠΎΠ·Π½Π°ΡΡΠ²Π° ΠΏΠ°ΠΊΠ΅ΡΠΎΡ ΠΈ Π±ΡΠΎΡΠΎΡ Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΈ Π·Π°Π²ΠΈΡΠ½ΠΎΡΡΠΈ).
Π’Π°Π±Π΅Π»Π° 3
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΠ°ΠΊΡ. ΠΠ°ΠΊΠΎ ΡΠΈΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΠ‘ ΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° x86_64, Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈΠΌΠ°Π°Ρ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π° ΠΊΠ°ΠΊΠΎ x86_64 ΠΈ x86, ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΡΠ΅ΡΡΠΎ ΡΠΎΠ΄ΡΠΆΠ°Ρ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π·Π° Π΄ΡΡΠ³ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ΠΎ Π½Π° Π‘Π»ΠΈΠΊΠ° 5. XNUMX.
Π‘Π». 5
ΠΠΎ ΡΠ»Π΅Π΄Π½ΠΈΠΎΡ Π΄Π΅Π» ΡΠ΅ Π½Π°Π²Π»Π΅Π·Π΅ΠΌΠ΅ Π²ΠΎ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈΡΠ΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ.
Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° Π·Π°ΡΡΠΈΡΠ° Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ
ΠΠ° Π°ΠΏΡΠΎΠ»ΡΡΠ΅Π½ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ, ΡΡΠ΅Π±Π° Π΄Π° ΠΈΡΡΡΠ°ΠΆΠΈΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π΅Π½ ΡΠ΅Ρ Π½Π° Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΎΠΏΡΠΈΠΈ Π·Π° Π²Π°ΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΠ΅ΡΠΊΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ. ΠΠ΅ΠΊΠΎΠ»ΠΊΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux Π΄ΠΎΠ°ΡΠ°Π°Ρ ΡΠΎ ΡΠΊΡΠΈΠΏΡΠΈ ΠΊΠΎΠΈ Π²ΡΡΠ°Ρ ΡΠ°ΠΊΠ²ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Debian/Ubuntu ΠΈΠΌΠ° ΡΠ°ΠΊΠ²Π° ΡΠΊΡΠΈΠΏΡΠ°. ΠΠ²Π΅ Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠ΄ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ°:
$ hardening-check $(which docker)
/usr/bin/docker:
Position Independent Executable: yes
Stack protected: yes
Fortify Source functions: no, only unprotected functions found!
Read-only relocations: yes
Immediate binding: yes
Π‘ΡΠ΅Π½Π°ΡΠΈΠΎΡΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΏΠ΅Ρ
- ΠΠΎΠ·ΠΈΡΠΈΡΠ° Π½Π΅Π·Π°Π²ΠΈΡΠ½ΠΎ ΠΈΠ·Π²ΡΡΠ½ΠΎ (PIE): ΠΠΎΠΊΠ°ΠΆΡΠ²Π° Π΄Π°Π»ΠΈ ΡΠ΅ΠΊΡΡΡΠ°Π»Π½ΠΈΠΎΡ Π΄Π΅Π» ΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈ Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ° Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·Π°ΡΠΈΡΠ° Π°ΠΊΠΎ ASLR Π΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π²ΠΎ ΠΊΠ΅ΡΠ½Π΅Π»ΠΎΡ.
- ΠΠ°ΡΡΠΈΡΠ΅Π½ΠΎ ΡΠΎ ΠΎΡΠ°ΠΊ: Π΄Π°Π»ΠΈ ΡΠ΅ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΈ ΠΊΠ°Π½Π°ΡΠΈΠ½ΡΠΈΡΠ΅ ΡΠΎ ΠΎΡΠ°ΠΊ Π΄Π° ΡΠ΅ Π·Π°ΡΡΠΈΡΠ°Ρ ΠΎΠ΄ Π½Π°ΠΏΠ°Π΄ΠΈ ΠΎΠ΄ ΡΡΠ΄ΠΈΡ Π½Π° ΠΎΡΠ°ΠΊ.
- Fortify Source: Π΄Π°Π»ΠΈ Π½Π΅Π±Π΅Π·Π±Π΅Π΄Π½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, strcpy) ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΡΠΎ Π½ΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΠΎΠ±Π΅Π·Π±Π΅Π΄Π½ΠΈ ΠΊΠΎΠ»Π΅Π³ΠΈ, Π° ΠΏΠΎΠ²ΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΈ ΠΏΡΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΡΠΎ Π½ΠΈΠ²Π½ΠΈΡΠ΅ Π½Π΅ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΈ ΠΊΠΎΠ»Π΅Π³ΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, memcpy Π½Π°ΠΌΠ΅ΡΡΠΎ __memcpy_chk).
- ΠΡΠ΅ΠΌΠ΅ΡΡΡΠ²Π°ΡΠ° ΡΠ°ΠΌΠΎ Π·Π° ΡΠΈΡΠ°ΡΠ΅ (RELRO): ΠΠ°Π»ΠΈ Π·Π°ΠΏΠΈΡΠΈΡΠ΅ Π²ΠΎ ΡΠ°Π±Π΅Π»Π°ΡΠ° Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΡΠ²Π°ΡΠ΅ ΡΠ΅ ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈ ΡΠ°ΠΌΠΎ Π·Π° ΡΠΈΡΠ°ΡΠ΅ Π°ΠΊΠΎ ΡΠ΅ Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π°Ρ ΠΏΡΠ΅Π΄ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ.
- ΠΠ΅ΠΏΠΎΡΡΠ΅Π΄Π½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΠ΅: Π΄Π°Π»ΠΈ ΠΏΠΎΠ²ΡΠ·ΡΠ²Π°ΡΠΎΡ Π·Π° Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΡΡΠ°Π΅ΡΠ΅ Π³ΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠΈΡΠ΅ ΠΏΠΎΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° (ΠΎΠ²Π° Π΅ Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π½Π° ΡΠ΅Π»ΠΎΡΠ΅Π½ RELRO).
ΠΠ°Π»ΠΈ Π³ΠΎΡΠ΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ ΡΠ΅ Π΄ΠΎΠ²ΠΎΠ»Π½ΠΈ? ΠΠ° ΠΆΠ°Π» Π½Π΅. ΠΠΎΡΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π½Π°ΡΠΈ Π½Π°ΡΠΈΠ½ΠΈ Π΄Π° ΡΠ΅ Π·Π°ΠΎΠ±ΠΈΠΊΠΎΠ»Π°Ρ ΡΠΈΡΠ΅ Π³ΠΎΡΠ΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈ ΠΎΠ΄Π±ΡΠ°Π½ΠΈ, Π½ΠΎ ΠΊΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΡΠ²ΡΡΡΠ° ΠΎΠ΄Π±ΡΠ°Π½Π°ΡΠ°, ΡΠΎΠ»ΠΊΡ Π΅ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠ° Π»Π΅Π½ΡΠ°ΡΠ° Π·Π° Π½Π°ΠΏΠ°ΡΠ°ΡΠΎΡ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ,
Π‘Π°ΠΊΠ°Π²ΠΌΠ΅ Π΄Π° ΠΏΡΠΎΡΡΠΈΠΌΠ΅ ΠΊΠΎΠ»ΠΊΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π²ΠΎ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΠ΅ Π·Π°ΡΡΠΈΡΠ΅Π½ΠΈ ΡΠΎ ΠΎΠ²ΠΈΠ΅ ΠΈ ΡΡΠΈ Π΄ΡΡΠ³ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ:
- ΠΠ΅ΠΈΠ·Π²ΡΡΠ΅Π½ Π±ΠΈΡ (
NX ) Π³ΠΎ ΡΠΏΡΠ΅ΡΡΠ²Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π²ΠΎ ΠΊΠΎΡ Π±ΠΈΠ»ΠΎ ΡΠ΅Π³ΠΈΠΎΠ½ ΡΡΠΎ Π½Π΅ ΡΡΠ΅Π±Π° Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΠΊΡΠΏΠΎΡ Π½Π° ΡΡΠ΅ΠΊ ΠΈΡΠ½. RPATH/RUNPATH ΡΠ° ΠΎΠ·Π½Π°ΡΡΠ²Π° ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π½Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ ΡΡΠΎ ΡΠ° ΠΊΠΎΡΠΈΡΡΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠΊΠΈΠΎΡ Π²ΡΠΈΡΡΠ²Π°Ρ Π·Π° Π΄Π° Π½Π°ΡΠ΄Π΅ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΡΠ²ΠΈΠΎΡ Π΅ Π·Π°Π΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»Π½ΠΎ Π·Π° ΡΠ΅ΠΊΠΎΡ ΠΌΠΎΠ΄Π΅ΡΠ΅Π½ ΡΠΈΡΡΠ΅ΠΌ: Π½Π΅Π³ΠΎΠ²ΠΎΡΠΎ ΠΎΡΡΡΡΡΠ²ΠΎ ΠΈΠΌ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π½Π° Π½Π°ΠΏΠ°ΡΠ°ΡΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ Π΄Π° Π³ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ ΡΠΎΠ²Π°ΡΠΎΡ Π²ΠΎ ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ° ΠΈ Π΄Π° Π³ΠΎ ΠΈΠ·Π²ΡΡΠ°Ρ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅. ΠΠ° Π²ΡΠΎΡΠ°ΡΠ°, Π½Π΅ΡΠΎΡΠ½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π° ΠΏΠ°ΡΠ΅ΠΊΠ°ΡΠ° Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ ΠΏΠΎΠΌΠ°Π³Π°Π°Ρ Π²ΠΎ Π²ΠΎΠ²Π΅Π΄ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π½Π΅ΡΠΈΠ³ΡΡΠ΅Π½ ΠΊΠΎΠ΄ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ (Π½Π° ΠΏΡ.Π΅ΡΠΊΠ°Π»Π°ΡΠΈΡΠ° Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ ΠΠ΄ΡΡΠ³ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ).- ΠΠ°ΡΡΠΈΡΠ°ΡΠ° ΠΎΠ΄ ΡΡΠ΄ΠΈΡ Π½Π° ΡΡΠ΅ΠΊ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ Π½Π°ΠΏΠ°Π΄ΠΈ ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΈΠ·Π²ΠΈΠΊΡΠ²Π°Π°Ρ ΠΎΡΠ°ΠΊΠΎΡ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΊΠ»ΠΎΠΏΡΠ²Π° ΡΠΎ Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΌΠ΅ΠΌΠΎΡΠΈΡΠ°ΡΠ° (ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΠΊΡΠΏΠΎΡ). Π‘ΠΎ ΠΎΠ³Π»Π΅Π΄ Π½Π° Π½Π΅ΠΎΠ΄Π°ΠΌΠ½Π΅ΡΠ½ΠΈΡΠ΅ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±ΠΈ
ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΡΠ°Π½Π»ΠΈΠ²ΠΎΡΡΠΈ Π½Π° ΡΡΠ΄ΠΈΡ Π½Π° ΠΊΡΠΏ , ΡΠΌΠ΅ΡΠ°Π²ΠΌΠ΅ Π΄Π΅ΠΊΠ° Π΅ ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΎ Π΄Π° Π³ΠΎ Π²ΠΊΠ»ΡΡΠΈΠΌΠ΅ ΠΎΠ²ΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·Π°ΠΌ Π²ΠΎ Π½Π°ΡΠ°ΡΠ° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΠ½Π°ΡΠΈ, Π±Π΅Π· ΠΏΠΎΠ½Π°ΡΠ°ΠΌΠΎΡΠ½ΠΎ ΠΎΠ΄Π»ΠΎΠΆΡΠ²Π°ΡΠ΅, Π΄Π° ΡΠ΅ ΡΠΏΡΡΡΠΈΠΌΠ΅ Π½Π° Π±ΡΠΎΡΠΊΠΈΡΠ΅. Π’Π°Π±Π΅Π»ΠΈΡΠ΅ 4 ΠΈ 5 ΡΠΎΠ΄ΡΠΆΠ°Ρ ΡΠ΅Π·ΠΈΠΌΠ΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠ° Π½Π° ΠΈΠ·Π²ΡΡΠ½ΠΈΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ ΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΎ.
- ΠΠ°ΠΊΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅, NX Π·Π°ΡΡΠΈΡΠ°ΡΠ° ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° Π½Π°ΡΠ΅ΠΊΠ°Π΄Π΅, ΡΠΎ ΡΠ΅ΡΠΊΠΈ ΠΈΡΠΊΠ»ΡΡΠΎΡΠΈ. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ Π½Π΅Π³ΠΎΠ²Π°ΡΠ° ΠΌΠ°Π»ΠΊΡ ΠΏΠΎΠΌΠ°Π»Π° ΡΠΏΠΎΡΡΠ΅Π±Π° Π²ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ Π½Π° Ubuntu ΠΈ Debian Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ CentOS, RHEL ΠΈ OpenSUSE.
- ΠΠ° ΠΌΠ½ΠΎΠ³Ρ ΠΌΠ΅ΡΡΠ° Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΠ²Π°Π°Ρ ΠΊΠ°Π½Π°ΡΠΈΠ½ΡΠΈ, ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²ΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ ΡΠΎ ΠΏΠΎΡΡΠ°ΡΠΈ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ. Π‘Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΡΠ²Π° ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ Π½Π°ΠΏΡΠ΅Π΄ΠΎΠΊ Π²ΠΎ Π½Π°ΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Centos, RHEL, Debian ΠΈ Ubuntu.
- Π‘ΠΎ ΠΈΡΠΊΠ»ΡΡΠΎΠΊ Π½Π° Debian ΠΈ Ubuntu 18.04, ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈΠΌΠ°Π°Ρ ΡΠ»Π°Π±Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° PIE.
- ΠΠ°ΡΡΠΈΡΠ°ΡΠ° ΠΎΠ΄ ΡΡΠ΄ΠΈΡ Π½Π° ΡΡΠ΅ΠΊ Π΅ ΡΠ»Π°Π±Π° Π²ΠΎ OpenSUSE, Centos 7 ΠΈ RHEL 7, Π° Π²ΠΎ Π΄ΡΡΠ³ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΡΡΠΎΠΈ.
- Π‘ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΠΎ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ ΠΈΠΌΠ°Π°Ρ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΊΠ° Π·Π° RELRO, ΠΏΡΠΈ ΡΡΠΎ Ubuntu 18.04 Π΅ Π²ΠΎΠ΄Π΅ΡΠΊΠΈ, Π° Debian Π΅ Π½Π° Π²ΡΠΎΡΠΎ ΠΌΠ΅ΡΡΠΎ.
ΠΠ°ΠΊΠΎ ΡΡΠΎ Π²Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°Π²ΠΌΠ΅, ΠΌΠ΅ΡΡΠΈΠΊΠ°ΡΠ° Π²ΠΎ ΠΎΠ²Π°Π° ΡΠ°Π±Π΅Π»Π° Π΅ ΠΏΡΠΎΡΠ΅ΠΊ Π·Π° ΡΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° Π±ΠΈΠ½Π°ΡΠ½Π°ΡΠ° Π΄Π°ΡΠΎΡΠ΅ΠΊΠ°. ΠΠΊΠΎ Π³ΠΈ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ Π½Π°ΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ Π½Π° Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ, Π±ΡΠΎΡΠΊΠΈΡΠ΅ ΡΠ΅ Π±ΠΈΠ΄Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΈΠ΄Π΅ΡΠ΅
Π’Π°Π±Π΅Π»Π° 4. ΠΠ΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π·Π° ΠΈΠ·Π²ΡΡΠ½ΠΈΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ΠΈ Π½Π° ΡΠ». 3 (ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΠΊΠΎ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΎΠ΄ Π²ΠΊΡΠΏΠ½ΠΈΠΎΡ Π±ΡΠΎΡ Π½Π° ΠΈΠ·Π²ΡΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ)
Π’Π°Π±Π΅Π»Π° 5. ΠΠ΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ ΠΏΡΠΈΠΊΠ°ΠΆΠ°Π½ΠΈ Π½Π° ΡΠ». 3 (ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° ΡΠ΅Π»Π΅Π²Π°Π½ΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΠΊΠΎ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΎΠ΄ Π²ΠΊΡΠΏΠ½ΠΈΠΎΡ Π±ΡΠΎΡ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ)
ΠΠ½Π°ΡΠΈ ΠΈΠΌΠ° Π»ΠΈ Π½Π°ΠΏΡΠ΅Π΄ΠΎΠΊ? ΠΠ΅ΡΠΈΠ½ΠΈΡΠΈΠ²Π½ΠΎ ΠΈΠΌΠ°: ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π²ΠΈΠ΄ΠΈ ΠΎΠ΄ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°ΡΠ° Π·Π° ΠΏΠΎΠ΅Π΄ΠΈΠ½Π΅ΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΠ° ΠΆΠ°Π», Π³ΠΎΠ»Π΅ΠΌ Π±ΡΠΎΡ Π½Π° ΠΈΠ·Π²ΡΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π²ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ΠΌΠ°Π°Ρ Π½ΠΈΡΡ Π΅Π΄Π½Π° ΠΎΠ΄ Π³ΠΎΡΠ΅Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡΠ΅ Π·Π°ΡΡΠΈΡΠΈ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, Π³Π»Π΅Π΄Π°ΡΡΠΈ Π³ΠΎ Ubuntu 18.04, ΡΠ΅ Π³ΠΎ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅ ngetty Π±ΠΈΠ½Π°ΡΠ½ΠΎΡΠΎ (Π·Π°ΠΌΠ΅Π½Π° Π½Π° Getty), ΠΊΠ°ΠΊΠΎ ΠΈ ΡΠΊΠΎΠ»ΠΊΠΈΡΠ΅ mksh ΠΈ lksh, ΡΠΎΠ»ΠΊΡΠ²Π°ΡΠΎΡ picolisp, ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ nvidia-cuda-toolkit (ΠΏΠΎΠΏΡΠ»Π°ΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ Π·Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°Π±ΡΠ·Π°Π½ΠΈ ΡΠΎ Π³ΡΠ°ΡΠΈΡΠΊΠΈ ΠΏΡΠΎΡΠ΅ΡΠΎΡ ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΡΠ°ΠΌΠΊΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½ΡΠΊΠΎ ΡΡΠ΅ΡΠ΅), ΠΈ klibc -utils. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π±ΠΈΠ½Π°ΡΠ½ΠΎΡΠΎ mandos-client (Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½Π° Π°Π»Π°ΡΠΊΠ° ΠΊΠΎΡΠ° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π°Π²ΡΠΎΠΌΠ°ΡΡΠΊΠΈ Π΄Π° Π³ΠΈ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ ΠΌΠ°ΡΠΈΠ½ΠΈΡΠ΅ ΡΠΎ ΡΠΈΡΡΠΈΡΠ°Π½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ), ΠΊΠ°ΠΊΠΎ ΠΈ rsh-redone-client (ΡΠ΅ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ° Π½Π° rsh ΠΈ rlogin) ΡΠ΅ ΠΈΡΠΏΠΎΡΠ°ΡΡΠ²Π°Π°Ρ Π±Π΅Π· NX Π·Π°ΡΡΠΈΡΠ°, ΠΈΠ°ΠΊΠΎ ΠΈΠΌΠ°Π°Ρ SUID ΠΏΡΠ°Π²Π°: (. ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π½Π° Π½Π΅ΠΊΠΎΠ»ΠΊΡ suid Π±ΠΈΠ½Π°ΡΠ½ΠΈ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ ΠΈΠΌ Π½Π΅Π΄ΠΎΡΡΠΈΠ³Π° ΠΎΡΠ½ΠΎΠ²Π½Π° Π·Π°ΡΡΠΈΡΠ° ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΊΠ°Π½Π°ΡΠΈΠ½ΡΠΈΡΠ΅ Π½Π° ΠΌΠ°Π³Π°ΡΠΈΠ½ΠΎΡ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΎΡ Xorg.wrap ΠΎΠ΄ ΠΏΠ°ΠΊΠ΅ΡΠΎΡ Xorg).
Π Π΅Π·ΠΈΠΌΠ΅ ΠΈ Π·Π°ΠΊΠ»ΡΡΠ½ΠΈ Π·Π°Π±Π΅Π»Π΅ΡΠΊΠΈ
ΠΠΎ ΠΎΠ²Π°Π° ΡΡΠ°ΡΠΈΡΠ°, ΠΈΡΡΠ°ΠΊΠ½Π°Π²ΠΌΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ ΠΊΠ°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux. ΠΠ½Π°Π»ΠΈΠ·Π°ΡΠ° ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° Π½Π°ΡΠ½ΠΎΠ²Π°ΡΠ° Ubuntu LTS Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΠ° (18.04) ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°, Π²ΠΎ ΠΏΡΠΎΡΠ΅ΠΊ, Π½Π°ΡΡΠΈΠ»Π½Π°ΡΠ° Π·Π°ΡΡΠΈΡΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈ Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΠ° ΠΌΠ΅ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈΡΠ΅ ΡΠΎ ΡΠ΅Π»Π°ΡΠΈΠ²Π½ΠΎ Π½ΠΎΠ²ΠΈ ΠΊΠ΅ΡΠ½Π΅Π»ΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ Ubuntu 14.04, 12.04 ΠΈ Debian 9. Π‘Π΅ΠΏΠ°ΠΊ, ΠΈΡΠΏΠΈΡΡΠ²Π°Π½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ CentOS, RHEL ΠΈ OpenSUSE Π²ΠΎ Π½Π°ΡΠΈΠΎΡ ΡΠ΅Ρ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄ΡΠ²Π° ΠΏΠΎΠ³ΡΡΡ ΡΠ΅Ρ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ, Π° Π²ΠΎ Π½Π°ΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΠ·ΠΈΠΈ (CentOS ΠΈ RHEL) ΠΈΠΌΠ°Π°Ρ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌ ΠΏΡΠΎΡΠ΅Π½Ρ Π½Π° Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ ΡΡΠ΄ΠΈΡ Π½Π° ΡΡΠ΅ΠΊ Π²ΠΎ ΡΠΏΠΎΡΠ΅Π΄Π±Π° ΡΠΎ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΈΡΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Debian (Debian ΠΈ Ubuntu). Π‘ΠΏΠΎΡΠ΅Π΄ΡΠ²Π°ΡΡΠΈ Π³ΠΈ Π²Π΅ΡΠ·ΠΈΠΈΡΠ΅ CentOS ΠΈ RedHat, Π·Π°Π±Π΅Π»Π΅ΠΆΡΠ²Π°ΠΌΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°ΡΠ° Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ°ΡΠ° Π½Π° stack canaries ΠΈ RELRO ΠΎΠ΄ Π²Π΅ΡΠ·ΠΈΠΈΡΠ΅ 6 Π΄ΠΎ 7, Π½ΠΎ Π²ΠΎ ΠΏΡΠΎΡΠ΅ΠΊ CentOS ΠΈΠΌΠ° ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ°Π½ΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ΄ RHEL. ΠΠ΅Π½Π΅ΡΠ°Π»Π½ΠΎ, ΡΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΡΠ΅Π±Π° Π΄Π° ΠΎΠ±ΡΠ½Π°Ρ ΠΏΠΎΡΠ΅Π±Π½ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·Π°ΡΡΠΈΡΠ°ΡΠ° Π½Π° PIE, ΠΊΠΎΡΠ°, ΡΠΎ ΠΈΡΠΊΠ»ΡΡΠΎΠΊ Π½Π° Debian 9 ΠΈ Ubuntu 18.04, ΡΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° Π²ΠΎ ΠΏΠΎΠΌΠ°Π»ΠΊΡ ΠΎΠ΄ 10% ΠΎΠ΄ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ Π΄Π°ΡΠΎΡΠ΅ΠΊΠΈ Π²ΠΎ Π½Π°ΡΠ°ΡΠ° Π±Π°Π·Π° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ Π΄Π΅ΠΊΠ° ΠΈΠ°ΠΊΠΎ ΠΈΡΡΡΠ°ΠΆΡΠ²Π°ΡΠ΅ΡΠΎ Π³ΠΎ ΡΠΏΡΠΎΠ²Π΅Π΄ΠΎΠ²ΠΌΠ΅ ΡΠ°ΡΠ½ΠΎ, ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³Ρ Π΄ΠΎΡΡΠ°ΠΏΠ½ΠΈ Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΠ½ΠΈ Π°Π»Π°ΡΠΊΠΈ (Π½Π° ΠΏΡ.
ΠΠ·Π²ΠΎΡ: www.habr.com