TL;DR. Π ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΡΡ
Π΅ΠΌΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° (hardening schemes), ΠΊΠΎΠΈΡΠΎ Π²Π»ΠΈΠ·Π°Ρ Π² Π³ΠΎΡΠΎΠ² Π²ΠΈΠ΄ Π² ΠΏΠ΅Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux. ΠΠ° Π²ΡΡΠΊΠ° ΠΎΡ ΡΡΡ
Π²Π·Π΅Ρ
ΠΌΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, Π·Π°ΡΠ΅Π΄ΠΈΡ
ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ
ΠΌΠ΅ ΡΡ
Π΅ΠΌΠΈΡΠ΅ Π·Π° Π·Π°ΡΠΈΡΠ° Π² Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠ±ΡΡΠΆΠ΄Π°Ρ ΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ OpenSUSE 12.4, Debian 9, CentOS, RHEL 6.10 ΠΈ 7, ΠΊΠ°ΠΊΡΠΎ ΠΈ Ubuntu 14.04, 12.04 ΠΈ 18.04 LTS.
Π Π΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅ ΠΏΠΎΡΠ²ΡΡΠ΄ΠΈΡ Π°, ΡΠ΅ Π΄ΠΎΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΡΡ Π΅ΠΌΠΈ, ΠΊΠ°ΡΠΎ ΡΡΠ΅ΠΊΠΎΠ²ΠΈ ΠΊΠ°Π½Π°ΡΠ΅ΠΉΠΊΠΈ ΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌ ΠΎΡ ΠΏΠΎΠ·ΠΈΡΠΈΡΡΠ° ΠΊΠΎΠ΄, Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ. Π‘ΠΈΡΡΠ°ΡΠΈΡΡΠ° Π΅ ΠΎΡΠ΅ ΠΏΠΎ-Π»ΠΎΡΠ° ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠΈΡΠ΅, ΡΠΎ ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ Π·Π°ΡΠΈΡΠ°ΡΠ° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ±Π»ΡΡΡΠΊΠ° Π½Π° ΡΡΠ΅ΠΊΠ° (stack clash), ΠΊΠΎΠΈΡΠΎ ΡΡΠ°Π½Π°Ρ Π° ΡΠ΅Π½ΡΡΠ°Π»Π½Π° ΡΠ΅ΠΌΠ° ΠΏΡΠ΅Π· ΡΠ½ΡΠ°ΡΠΈ ΡΠ»Π΅Π΄ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ΡΠΎ . ΠΠΎ Π½Π΅ Π²ΡΠΈΡΠΊΠΎ Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π±Π΅Π·Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ. Π Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΡΠ°ΡΡ ΠΎΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠΈΡΠ΅ ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π·Π°ΡΠΈΡΠ°, Π° ΡΠ΅Ρ Π½ΠΈΡΡ Π±ΡΠΎΠΉ Π½Π°ΡΠ°ΡΡΠ²Π° Ρ Π²ΡΡΠΊΠ° Π²Π΅ΡΡΠΈΡ.
ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΠΎΠΊΠ°Π·Π°, ΡΠ΅ Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π² Ubuntu 18.04 Π½Π° Π½ΠΈΠ²ΠΎ ΠΠ‘ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ»Π΅Π΄Π²Π°Π½ΠΈ ΠΎΡ Debian 9. ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, Π² OpenSUSE 12.4, CentOS 7 ΠΈ RHEL 7 ΡΡΡΠΎ ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈ ΡΡ
Π΅ΠΌΠΈ Π·Π° Π·Π°ΡΠΈΡΠ°, Π° Π·Π°ΡΠΈΡΠ°ΡΠ° ΠΎΡ ΡΠ±Π»ΡΡΡΠΊ Π½Π° ΡΡΠ΅ΠΊΠ° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π° ΠΎΡΠ΅ ΠΏΠΎ-ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-ΠΏΠ»ΡΡΠ΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅.
ΠΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π’ΡΡΠ΄Π½ΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ Π²ΠΈΡΠΎΠΊΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π½Π° ΡΠΎΡΡΡΠ΅ΡΠ°. ΠΡΠΏΡΠ΅ΠΊΠΈ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π°ΠΏΡΠ΅Π΄Π½Π°Π»ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΊΠΎΠ΄Π° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈΡ Π½Π°ΠΏΡΠ΅Π΄ΡΠΊ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ½ΠΈ Π΅Π·ΠΈΡΠΈ, ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΡ ΡΠΎΡΡΡΠ΅Ρ Π²ΡΠ΅ ΠΎΡΠ΅ ΡΡΡΠ°Π΄Π° ΠΎΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Ρ ΠΎΡ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ Π»ΠΈΡΠ°. Π‘ΠΈΡΡΠ°ΡΠΈΡΡΠ° Π΅ ΠΎΡΠ΅ ΠΏΠΎ-Π»ΠΎΡΠ° Π² Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΎΡΡΠ°ΡΡΠ» ΠΊΠΎΠ΄. Π ΡΠ°ΠΊΠΈΠ²Π° ΡΠ»ΡΡΠ°ΠΈ Π½Π΅ ΡΠ°ΠΌΠΎ ΡΠ΅ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ²Π°ΠΌΠ΅ Ρ Π²Π΅ΡΠ½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π·Π° ΠΎΡΠΊΡΠΈΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠΈΡΠ°Π½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ, Π½ΠΎ ΠΈ ΡΠΌΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈ ΠΎΡ ΡΡΡΠΎΠ³ΠΈ ΡΠ°ΠΌΠΊΠΈ Π·Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½, Π° ΠΎΡΠ΅ ΠΏΠΎ-Π»ΠΎΡΠΎ β ΡΡΠ·Π²ΠΈΠΌ ΠΈΠ»ΠΈ Ρ Π±ΡΠ³ΠΎΠ²Π΅ ΠΊΠΎΠ΄.
Π’ΡΠΊ Π²Π»ΠΈΠ·Π°Ρ Π² ΠΈΠ³ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π° Π·Π°ΡΠΈΡΠ° ΠΈΠ»ΠΈ ΡΡΠΈΠ»Π²Π°Π½Π΅ Π½Π° ΡΠΎΡΡΡΠ΅ΡΠ° (hardening). ΠΡΠΊΠΎΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ Π³ΡΠ΅ΡΠΊΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΠΌ, Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΠΆΠΈΠ²ΠΎΡΠ° Π½Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΡΠ΅ Π»ΠΈΡΠ° ΠΏΠΎ-ΡΡΡΠ΄Π΅Π½ ΠΈ ΡΠ°ΡΡΠΈΡΠ½ΠΎ Π΄Π° ΡΠ΅ΡΠΈΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π°ΠΉΠΊΠΈ ΠΈΠ»ΠΈ Π·Π°ΡΡΡΠ΄Π½ΡΠ²Π°ΠΉΠΊΠΈ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ ΡΠ΅Π·ΠΈ Π³ΡΠ΅ΡΠΊΠΈ. Π’Π°Π·ΠΈ Π·Π°ΡΠΈΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ ΠΠ‘, Π½ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ°Π²Π°Ρ ΠΏΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ, Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ: ΠΎΡ ΡΡΠ΅ΠΊΠΈΡΠ°Π½ΠΈ ΠΊΠ°Π½Π°ΡΡΠ΅ΡΠ° (stack canaries) ΠΈ Π΄ΠΎ ΠΏΡΠ»Π½ΠΎΡΠ΅Π½Π½Π° Π·Π°ΡΠΈΡΠ° ΠΈ . Π ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠ²ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΡΠ΅ ΠΏΡΠΈΠ»Π°Π³Π°Ρ Π² Π½Π°ΠΉ-ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ΅ ΠΏΡΠΎΡΡΠΈΠΌ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΡΠ° Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π°Π½ΠΈ ΡΡΠ΅Π· ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ Π½Π° Π²ΡΠ΅ΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ².
CVE ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ
ΠΡΠΈΡΠΊΠΈ Π½ΠΈΠ΅ ΡΠΌΠ΅ Π²ΠΈΠΆΠ΄Π°Π»ΠΈ ΡΡΠ°ΡΠΈΠΈ Ρ Π·Π°Π³Π»Π°Π²ΠΈΡ ΠΊΠ°ΡΠΎ βΠΠ°ΠΉ-ΡΡΠ·Π²ΠΈΠΌΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π³ΠΎΠ΄ΠΈΠ½Π°ΡΠ°β ΠΈΠ»ΠΈ βΠΠ°ΠΉ-ΡΡΠ·Π²ΠΈΠΌΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈβ. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ°ΠΌ ΡΠ΅ Π΄Π°Π²Π°Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π·Π° ΠΎΠ±ΡΠΈΡ Π±ΡΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π·Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΈΠΏ , ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈ ΠΎΡ ΠΎΡ ΠΈ Π΄ΡΡΠ³ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ. ΠΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠ΅ ΡΠ΅Π·ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΠ‘ ΡΠ΅ ΠΊΠ»Π°ΡΠΈΡΠ°Ρ ΠΏΠΎ Π±ΡΠΎΠΉ CVE. ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅, ΠΌΠ°ΠΊΠ°Ρ ΡΠ΅ 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 ΡΠ° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ Π·Π° Π²ΡΠΈΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠ΅ΡΠΈΡΠΈ Π³ΠΎΠ΄ΠΈΠ½ΠΈ (). ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ Π΅, ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ CVE ΠΏΠΎΠΏΠ°Π΄Π°Ρ Π² ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ: ΠΎΡΠΊΠ°Π· Π½Π° ΠΎΠ±ΡΠ»ΡΠΆΠ²Π°Π½Π΅ (DoS), ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ΄, ΠΏΡΠ΅ΠΏΡΠ»Π²Π°Π½Π΅, ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, ΠΈΠ·ΡΠΈΡΠ°Π½Π΅ (Π΅ΠΊΠ·ΡΠΈΠ»ΡΡΠ°ΡΠΈΡ) Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ Π΅ΡΠΊΠ°Π»Π°ΡΠΈΡ Π½Π° ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΈ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ CVE ΡΠ° ΠΎΡΡΠ΅ΡΠ΅Π½ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΡΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠΈ, ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ ΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΎΡΡΠ°Π²Π°Ρ Π³ΠΎΠ΄ΠΈΡΠ½ΠΎ. Π ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΠ°ΡΡ Π½Π° ΡΡΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΠΎΡΠ΅Π½ΠΈΠΌ ΡΠΏΠΎΡΡΠ΅Π±Π°ΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡ Π΅ΠΌΠΈ Π½Π° Π·Π°ΡΠΈΡΠ° Π·Π° ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ.

Π ΠΈΡ. 2
ΠΠ°Π΄Π°ΡΠΈ
Π ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΠΈΠΌΠ°ΠΌΠ΅ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²ΡΠΏΡΠΎΡΠΈ:
- ΠΠ°ΠΊΠ²Π° Π΅ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux? ΠΠ°ΠΊΠ²ΠΈ Π·Π°ΡΠΈΡΠ½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ Π² ΡΠ΄ΡΠΎΡΠΎ ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ?
- ΠΠ°ΠΊ ΡΠ΅ Π΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΠ»ΠΎ ΠΏΡΠΈΠ΅ΠΌΠ°Π½Π΅ΡΠΎ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΏΡΠ΅Π· Π²ΡΠ΅ΠΌΠ΅ΡΠΎ?
- ΠΠ°ΠΊΠ²ΠΈ ΡΠ° ΡΡΠ΅Π΄Π½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π·Π° Π²ΡΡΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ?
- ΠΠ°ΠΊΠ²ΠΈ Π·Π°ΡΠΈΡΠΈ ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ Π±ΠΈΠ½Π°ΡΠ΅Π½ ΡΠ°ΠΉΠ»?
ΠΠ·Π±ΠΎΡ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ
ΠΠΊΠ°Π·Π²Π° ΡΠ΅, ΡΠ΅ Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠΈ ΡΠΎΡΠ½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π·Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π² ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΡΠ»ΡΡΠ°ΠΈ Π±ΡΠΎΡΡ Π½Π° ΡΠ΅Π³Π»Π΅Π½ΠΈΡΡΠ° Π½Π΅ ΠΏΠΎΠΊΠ°Π·Π²Π° Π±ΡΠΎΡ Π½Π° ΡΠ΅Π°Π»Π½ΠΈΡΠ΅ ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΠΈ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Unix Π²Π°ΡΠΈΠ°Π½ΡΠΈΡΠ΅ ΡΡΡΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΌΠ½ΠΎΠ·ΠΈΠ½ΡΡΠ²ΠΎΡΠΎ ΠΎΡ ΡΡΡΠ²ΡΡΠ½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ (Π½Π° ΡΠ΅Π± ΡΡΡΠ²ΡΡΠΈ 69.2%, ΡΠΏΠΎΡΠ΅Π΄ W3techs ΠΈ Π΄ΡΡΠ³ΠΈ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ), ΠΈ ΡΡΡ Π½Π°ΡΠ° Π΄ΡΠ» ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π½Π°ΡΠ°ΡΡΠ²Π°. Π’Π°ΠΊΠ° ΡΠ΅, Π·Π° Π½Π°ΡΠ΅ΡΠΎ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½Π΅, Π½ΠΈΠ΅ ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ°Ρ ΠΌΠ΅ Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, Π΄ΠΎΡΡΡΠΏΠ½ΠΈ ΠΎΡ ΠΊΡΡΠΈΡΡΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° . Π ΡΠ°ΡΡΠ½ΠΎΡΡ, ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΠΠ‘:
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ/Π²Π΅ΡΡΠΈΡ
Π―Π΄ΡΠΎ
Π‘Π±ΠΎΡΠΊΠ°
OpenSUSE 12.4
4.12.14-95.3-default
#1 SMP Wed Dec 5 06:00:48 UTC 2018 (63a8d29)
Debian 9 (stretch)
4.9.0-8-amd64
#1 SMP Debian 4.9.130-2 (2018-10-27)
CentOS 6.10
2.6.32-754.10.1.el6.x86_64
#1 SMP Tue Jan 15 17:07:28 UTC 2019
CentOS 7
3.10.0-957.5.1.el7.x86_64
#1 SMP Fri Feb 1 14:54:57 UTC 2019
Red Hat Enterprise Linux Server 6.10 (Santiago)
2.6.32-754.9.1.el6.x86_64
#1 SMP Wed Nov 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 Thu Nov 15 17:36:42 UTC 2018
Ubuntu 14.04 (Trusty Tahr)
4.4.0β140-generic
#166~14.04.1-Ubuntu SMP Sat Nov 17 01:52:43 UTC 20β¦
Ubuntu 16.04 (Xenial Xerus)
4.15.0β1026-gcp
#27~16.04.1-Ubuntu SMP Fri Dec 7 09:59:47 UTC 2018
Ubuntu 18.04 (Bionic Beaver)
4.15.0β1026-gcp
#27-Ubuntu SMP Thu Dec 6 18:27:01 UTC 2018
Π’Π°Π±Π»ΠΈΡΠ° 1
ΠΠ½Π°Π»ΠΈΠ·
ΠΠΈΠ΅ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅, Π΄ΠΎΡΡΡΠΏΠ½ΠΈ ΡΡΠ΅Π· ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈΡ ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡΡ Π½Π° Π²ΡΡΠΊΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ ΠΎΡ ΡΠ°ΠΌΠΎΡΠΎ Π½Π°ΡΠ°Π»ΠΎ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ°ΠΌΠ΅ ΡΠ°ΠΌΠΎ Π²ΡΡΡ Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΎΡ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°ΡΠΈΡΠ΅ ΡΠ΅ ΠΎΠ³Π»Π΅Π΄Π°Π»Π° Π½Π° Π²ΡΡΠΊΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡ, ΠΈΠ³Π½ΠΎΡΠΈΡΠ°ΠΉΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΎΡ Π½Π΅ΡΡΠ°Π±ΠΈΠ»Π½ΠΈ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠ³Π»Π΅Π΄Π°Π»Π°ΡΠ° βtestingβ Π² Debian) ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ ΡΡΠ΅ΡΠΈ ΡΡΡΠ°Π½ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ NVIDIA ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈ ΠΎΠ³Π»Π΅Π΄Π°Π»Π°). ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈ Π½Π° ΡΠ΄ΡΠ° ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΠ²ΠΈΡΠ΅Π½Π° Π·Π°ΡΠΈΡΠ°.
ΠΠ½Π°Π»ΠΈΠ· Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ ΡΠΊΡΠΈΠΏΡ Π·Π° Π°Π½Π°Π»ΠΈΠ·, Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° . Π Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΠ°ΠΌΠΎΡΠΎ Π½Π°ΡΠ°Π»ΠΎ ΠΏΡΠΈ ΠΈΠ·Π±ΡΠ°Π½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈ Π³ΠΈ ΡΡΠ°Π²Π½ΡΠ²Π°ΠΌΠ΅ Ρ ΡΠΏΠΈΡΡΠΊΠ° ΠΎΡ (KSPP). ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°, ΡΠ°Π±Π»ΠΈΡΠ° 2 ΠΎΠΏΠΈΡΠ²Π° ΠΆΠ΅Π»Π°Π½Π°ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠ°: ΠΌΠ°ΡΠΊΠΈΡΠΎΠ²ΠΊΠ°ΡΠ° Π΅ ΠΏΠΎΡΡΠ°Π²Π΅Π½Π° Π·Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π½Π° ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈΡΠ΅ Π½Π° KSSP (ΠΎΠ±ΡΡΠ½Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΠΌΠΈΠ½ΠΈ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½ΠΎ ; Π² Π±ΡΠ΄Π΅ΡΠΈ ΡΡΠ°ΡΠΈΠΈ ΡΠ΅ ΡΠ°Π·ΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ ΡΠ΅Π·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΡΠ° ΡΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈ ΠΈ ΠΊΠ°ΠΊ Π΄Π° ΡΠ΅ Ρ Π°ΠΊΠ½Π΅ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π² ΡΡΡ Π½ΠΎ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅).

ΠΠ±ΡΠΎΡΠΎ Π²ΠΏΠ΅ΡΠ°ΡΠ»Π΅Π½ΠΈΠ΅ Π΅, ΡΠ΅ Π² Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΄ΡΠ° Π½Π°ΡΡΡΠΎΠΉΠΊΠΈΡΠ΅ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ° ΠΏΠΎ-ΡΡΡΠΎΠ³ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, CentOS 6.10 ΠΈ RHEL 6.10 Ρ ΡΠ΄ΡΠΎ 2.6.32 Π½ΡΠΌΠ°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΊΡΠΈΡΠΈΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π² Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ΄ΡΠ°, ΠΊΠ°ΡΠΎ , ΡΡΡΠΎΠ³ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ RWX, Π°Π΄ΡΠ΅ΡΠ½Π° ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·Π°ΡΠΈΡ ΠΈΠ»ΠΈ Π·Π°ΡΠΈΡΠ° copy2usr. Π‘Π»Π΅Π΄Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ Π²Π°ΡΠΈΠ°Π½ΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° Π½Π΅ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ Π² ΠΏΠΎ-ΡΡΠ°ΡΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΈ Π½Π΅ ΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠΈΠΌΠΈ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»Π½ΠΎΡΡ β Π² ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° ΡΠΎΠ²Π° Π²ΡΠ΅ ΠΏΠ°ΠΊ Π΅ ΠΎΡΠ±Π΅Π»ΡΠ·Π°Π½ΠΎ ΠΊΠ°ΡΠΎ Π»ΠΈΠΏΡΠ° Π½Π° Π°Π΄Π΅ΠΊΠ²Π°ΡΠ½Π° Π·Π°ΡΠΈΡΠ°. ΠΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ΅Π½ Π½Π°ΡΠΈΠ½, Π°ΠΊΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π΅ Π΅ Π½Π°Π»ΠΈΡΠ΅Π½ Π² ΡΠ°Π·ΠΈ Π²Π΅ΡΡΠΈΡ, Π° Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ΅ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°, ΡΠΎΠ²Π° ΡΠ΅ ΡΡΠΈΡΠ° Π·Π° ΡΠ°Π·ΡΠΌΠ½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ.
ΠΡΡΠ³ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡΡΠ° Π½Π° ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈΡΠ΅: Π½ΡΠΊΠΎΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ, ΠΊΠΎΠΈΡΠΎ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Ρ ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡΡΠ° Π½Π° Π°ΡΠ°ΠΊΠ°ΡΠ°, ΠΌΠΎΠ³Π°Ρ ΡΡΡΠ΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ. Π’Π°ΠΊΠΈΠ²Π° ΠΏΡΠΈΠΌΠ΅ΡΠΈ Π²ΠΊΠ»ΡΡΠ²Π°Ρ uprobes ΠΈ kprobes, ΠΌΠΎΠ΄ΡΠ»ΠΈ Π½Π° ΡΠ΄ΡΠΎΡΠΎ ΠΈ BPF/eBPF. ΠΠ°ΡΠ°ΡΠ° ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠ° Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅Π°Π»Π½Π° Π·Π°ΡΠΈΡΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΠ΅ Π½Π΅ ΡΠ° ΡΡΠΈΠ²ΠΈΠ°Π»Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅, Π° ΡΡΡ Π½Π°ΡΠ° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°, ΡΠ΅ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ ΡΡΠ±Π΅ΠΊΡΠΈ Π²Π΅ΡΠ΅ ΡΠ° ΡΠ΅ ΡΠΊΡΠΈΠ»ΠΈ Π² ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°. ΠΠΎ Π°ΠΊΠΎ ΡΠ΅Π·ΠΈ ΠΎΠΏΡΠΈΠΈ ΡΠ° Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ, ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ ΡΡΡΠ±Π²Π° Π°ΠΊΡΠΈΠ²Π½ΠΎ Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π° Π·Π° Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±ΠΈ.
ΠΠ·ΡΠ»Π΅Π΄Π²Π°ΠΉΠΊΠΈ ΠΏΠΎ-Π½Π°ΡΠ°ΡΡΠΊ Π·Π°ΠΏΠΈΡΠΊΠΈΡΠ΅ ΠΎΡ ΡΠ°Π±Π»ΠΈΡΠ° 2, Π²ΠΈΠΆΠ΄Π°ΠΌΠ΅, ΡΠ΅ ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ ΡΠ΄ΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΎΠΏΡΠΈΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ Π½Π° ΡΠ°ΠΊΠΈΠ²Π° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, ΠΊΠ°ΡΠΎ ΠΈΠ·ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ ΠΏΡΠ΅Π»ΠΈΠ²Π°Π½Π΅ Π½Π° ΡΡΠ΅ΠΊ/ΠΊΡΡΠ°. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, Π·Π°Π±Π΅Π»ΡΠ·Π²Π°ΠΌΠ΅, ΡΠ΅ Π΄ΠΎΡΠΈ Π½Π°ΠΉ-Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π»ΠΈ ΠΏΠΎ-ΡΠ»ΠΎΠΆΠ½Π° Π·Π°ΡΠΈΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Ρ ΠΏΠ°ΡΠΎΠ²Π΅ ) ΠΈΠ»ΠΈ ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ Π°ΡΠ°ΠΊΠΈ Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ΄ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ). ΠΡΠ΅ ΠΏΠΎ-Π»ΠΎΡΠΎ, Π΄ΠΎΡΠΈ ΡΠ΅Π·ΠΈ ΠΏΠΎ-Π½Π°ΠΏΡΠ΅Π΄Π½Π°Π»ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π° Π·Π°ΡΠΈΡΠ° Π½Π΅ Π·Π°ΡΠΈΡΠ°Π²Π°Ρ ΠΎΡ ΠΏΡΠ»Π½ΠΈΡ ΡΠΏΠ΅ΠΊΡΡΡ ΠΎΡ Π°ΡΠ°ΠΊΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ, Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ Π·Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ Π΄Π° Π΄ΠΎΠΏΡΠ»Π²Π°Ρ ΡΠ°Π·ΡΠΌΠ½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΠΈ ΠΎΡΠΊΡΠΈΡΠΈΠ΅ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π°Π½Π΅ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠΉΡΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅.
ΠΠ½Π°Π»ΠΈΠ· Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ΅ Π΅ ΠΈΠ·Π½Π΅Π½Π°Π΄Π²Π°ΡΠΎ, ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈΠΌΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ ΠΈ Ρ.Π½. Π Π°Π·Π»ΠΈΠΊΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ Π΄ΠΎΡΠΈ ΠΏΡΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Ρ ΠΌΠ°Π»ΡΠΊ Π±ΡΠΎΠΉ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, coreutils Π² Ubuntu ΠΈΠ»ΠΈ Debian). ΠΠ° Π΄Π° ΠΎΡΠ΅Π½ΠΈΠΌ ΡΠ°Π·Π»ΠΈΠΊΠΈΡΠ΅, ΠΈΠ·ΡΠ΅Π³Π»ΠΈΡ ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΈ Π½Π°Π»ΠΈΡΠ½ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΈΠ·Π²Π»ΡΠΊΠΎΡ ΠΌΠ΅ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ ΠΈΠΌ ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΌΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅. ΠΠ° Π²ΡΠ΅ΠΊΠΈ ΠΏΠ°ΠΊΠ΅Ρ ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Ρ ΠΌΠ΅ Π΄ΡΡΠ³ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ, ΠΎΡ ΠΊΠΎΠΈΡΠΎ Π·Π°Π²ΠΈΡΠΈ, ΠΈ Π·Π° Π²ΡΠ΅ΠΊΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Ρ ΠΌΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ ΠΌΡ. Π ΡΠ°Π·ΠΈ ΡΠ΅ΠΊΡΠΈΡ Π½Π°ΠΊΡΠ°ΡΠΊΠΎ ΡΠ΅ ΠΈΠ·Π»ΠΎΠΆΠΈΠΌ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΡΠ°.
ΠΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ
ΠΠ±ΡΠΎ ΡΠΌΠ΅ ΠΈΠ·ΡΠ΅Π³Π»ΠΈΠ»ΠΈ 361Β 556 ΠΏΠ°ΠΊΠ΅ΡΠ° Π·Π° Π²ΡΠΈΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ, ΠΈΠ·Π²Π»ΠΈΡΠ°ΠΉΠΊΠΈ ΡΠ°ΠΌΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΎΠ³Π»Π΅Π΄Π°Π»Π°. ΠΠ³Π½ΠΎΡΠΈΡΠ°Ρ ΠΌΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π±Π΅Π· ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ELF ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΊΠ°ΡΠΎ ΡΠΎΡΡ ΠΊΠΎΠ΄ΠΎΠ²Π΅, ΡΡΠΈΡΡΠΎΠ²Π΅ ΠΈ Ρ.Π½. Π‘Π»Π΅Π΄ ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ ΠΎΡΡΠ°Π½Π°Ρ Π° 129Β 569 ΠΏΠ°ΠΊΠ΅ΡΠ°, ΡΡΠ΄ΡΡΠΆΠ°ΡΠΈ ΠΎΠ±ΡΠΎ 584Β 457 Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»Π°. Π Π°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅ ΠΏΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠΈΡ. 3.

Π ΠΈΡ. 3
ΠΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌ, ΡΠ΅ ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π΅Π½ Π΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²ΡΡ, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΡΠ΄ΡΡΠΆΠ°, ΠΊΠΎΠ΅ΡΠΎ Π΅ Π»ΠΎΠ³ΠΈΡΠ½ΠΎ. Π ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΎΡ Ubuntu ΠΈ Debian Π²ΠΊΠ»ΡΡΠ²Π°Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ (ΠΊΠ°ΠΊΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ, ΡΠ°ΠΊΠ° ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ) Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ CentOS, SUSE ΠΈ RHEL, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π½ΠΎ Π²Π»ΠΈΡΠ΅ Π½Π° ΠΏΠΎΠ²ΡΡΡ Π½ΠΎΡΡΡΠ° Π½Π° Π°ΡΠ°ΠΊΠ° Π½Π° Ubuntu ΠΈ Debian (ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ ΡΠΈΡΡΠΈΡΠ΅ ΠΎΡΡΠ°Π·ΡΠ²Π°Ρ Π²ΡΠΈΡΠΊΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠΈ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ°, Ρ.Π΅. Π½ΡΠΊΠΎΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΡΠΈ). Π’ΠΎΠ²Π° Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΡΠΎ ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅. ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½, ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΈΠΊ Π½Π° Π΅Π΄ΠΈΠ½ ΠΏΠ°ΠΊΠ΅Ρ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ²Π»ΠΈΡΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈ ΠΎΡ Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°, ΠΊΠ°ΠΊΡΠΎ ΡΡΠ·Π²ΠΈΠΌΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ²Π»ΠΈΡΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΊΠΎΠΈΡΠΎ Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠ°Ρ. ΠΠ°ΡΠΎ ΠΎΡΠΏΡΠ°Π²Π½Π° ΡΠΎΡΠΊΠ°, Π½Π΅ΠΊΠ° ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΠΌ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π±ΡΠΎΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΠ‘:
Π ΠΈΡ. 4
ΠΠΎΡΡΠΈ Π²ΡΠ² Π²ΡΠΈΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ 60% ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ ΠΈΠΌΠ°Ρ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΏΠΎ 10 Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΠΏΡΠΈ Π½ΡΠΊΠΎΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π±ΡΠΎΡΡ Π½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ-Π²ΠΈΡΠΎΠΊ (Π½Π°Π΄ 100). Π‘ΡΡΠΎΡΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅: ΠΊΠ°ΠΊΠ²ΠΎΡΠΎ ΠΈ Π΄Π° ΡΠ΅ ΠΎΡΠ°ΠΊΠ²Π°, Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π² Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ°, ΠΏΠΎΡΠ°Π΄ΠΈ ΠΊΠΎΠ΅ΡΠΎ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈΡΠ΅ Π² ΡΠ΅Π·ΠΈ ΠΌΠ°Π»ΠΊΠΎ Π½Π° Π±ΡΠΎΠΉ ΠΈΠΌΠ°Ρ Π²ΠΈΡΠΎΠΊ ΡΠΈΡΠΊ. ΠΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ° ΠΈΠ·Π±ΡΠΎΠ΅Π½ΠΈ 20 ΠΏΠ°ΠΊΠ΅ΡΠ° Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ Π² SLES, Centos 7, Debian 9 ΠΈ Ubuntu 18.04 (Π² Π²ΡΡΠΊΠ° ΠΊΠ»Π΅ΡΠΊΠ° Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅ΡΡΡ ΠΈ Π±ΡΠΎΡΡ Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ).

Π’Π°Π±Π»ΠΈΡΠ° 3
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΡΠ°ΠΊΡ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΠ‘ ΡΠ° ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ΠΈ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° x86_64, Π° ΠΏΡΠΈ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°ΡΠ° Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΊΠ°ΡΠΎ x86_64 ΠΈ x86, ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠ΅ΡΡΠΎ ΡΡΠ΄ΡΡΠΆΠ°Ρ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° Π΄ΡΡΠ³ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, ΠΊΠ°ΠΊΡΠΎ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠΈΡ. 5.

Π ΠΈΡ. 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Π‘ΠΊΡΠΈΠΏΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΏΠ΅Ρ :
- Position Independent Executable (PIE): ΡΠΊΠ°Π·Π²Π° Π΄Π°Π»ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΈΡΡ ΡΠ°Π·Π΄Π΅Π» Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·Π°ΡΠΈΡ, Π°ΠΊΠΎ ASLR Π΅ Π²ΠΊΠ»ΡΡΠ΅Π½ Π² ΡΠ΄ΡΠΎΡΠΎ.
- Stack Protected: Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π»ΠΈ ΡΠ° ΡΡΠ΅ΠΊΠΎΠ²ΠΈ ΠΊΠ°Π½Π°ΡΠ΅ΠΉΠΊΠΈ Π·Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ Π°ΡΠ°ΠΊΠΈ Π½Π° ΡΠ±Π»ΡΡΡΠΊ Π½Π° ΡΡΠ΅ΠΊΠ°.
- Fortify Source: Π·Π°ΠΌΠ΅Π½ΡΡ Π»ΠΈ ΡΠ΅ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, strcpy) Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΠΏΠΎ-Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈ Π°Π½Π°Π»ΠΎΠ·ΠΈ, Π° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°Π½ΠΈΡΠ΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½ΠΈΡ - Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈ Π°Π½Π°Π»ΠΎΠ·ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, memcpy Π²ΠΌΠ΅ΡΡΠΎ __memcpy_chk).
- Read-only relocations (RELRO): ΠΌΠ°ΡΠΊΠΈΡΠ°Π½ΠΈ Π»ΠΈ ΡΠ° Π·Π°ΠΏΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ°Π±Π»ΠΈΡΠ°ΡΠ° Π·Π° ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½Π΅ ΠΊΠ°ΡΠΎ βΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅β, Π°ΠΊΠΎ ΡΠ΅ Π·Π°ΡΠ°Π±ΠΎΡΡΡ ΠΏΡΠ΅Π΄ΠΈ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ.
- Immediate binding (Π½Π΅Π·Π°Π±Π°Π²Π½Π° ΠΏΡΠΈΠ²ΡΡΠ·Π°Π½ΠΎΡΡ): ΡΠ°Π·ΡΠ΅ΡΠ°Π²Π° Π»ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΡΡ Π½Π° ΡΡΠ΅Π΄Π°ΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΈ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° (ΡΠΎΠ²Π° Π΅ Π΅ΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π½Π° ΠΏΡΠ»Π½ΠΎ RELRO).
ΠΠΎΡΡΠ°ΡΡΡΠ½ΠΈ Π»ΠΈ ΡΠ° Π³ΠΎΡΠ΅ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ? ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅, Π½Π΅. ΠΠ·Π²Π΅ΡΡΠ½ΠΈ ΡΠ° Π½Π°ΡΠΈΠ½ΠΈΡΠ΅ Π·Π° Π·Π°ΠΎΠ±ΠΈΠΊΠ°Π»ΡΠ½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π³ΠΎΡΠ΅ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ Π·Π°ΡΠΈΡΠΈ, Π½ΠΎ ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-ΡΡΡΠΎΠ³Π° Π΅ Π·Π°ΡΠΈΡΠ°ΡΠ°, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠ° Π΅ Π»Π΅ΡΠ²Π°ΡΠ° Π·Π° Π°ΡΠ°ΠΊΡΠ²Π°ΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ° ΠΏΠΎ-ΡΡΡΠ΄Π½ΠΈ Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅, Π°ΠΊΠΎ Π΄Π΅ΠΉΡΡΠ²Π°Ρ PIE ΠΈ Π½Π΅Π·Π°Π±Π°Π²Π½Π° ΠΏΡΠΈΠ²ΡΡΠ·Π°Π½ΠΎΡΡ. ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΡΠ»Π½ΠΈΡΡ ASLR ΠΈΠ·ΠΈΡΠΊΠ²Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΡΠ°Π±ΠΎΡΠ° Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ΅Ρ Π΅ΠΊΡΠΏΠ»ΠΎΠΉΡ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π°, ΠΈΠ·ΡΡΠ½ΡΠ΅Π½ΠΈΡΠ΅ Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΈ Π»ΠΈΡΠ° Π²Π΅ΡΠ΅ ΡΠ° Π³ΠΎΡΠΎΠ²ΠΈ Π΄Π° ΡΠ΅ ΡΡΠ΅ΡΠ½Π°Ρ Ρ ΡΠ°ΠΊΠΈΠ²Π° Π·Π°ΡΠΈΡΠΈ: ΡΡΡ Π½ΠΎΡΠΎ ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΊΠΎΡΡΠ²Π° Ρ Π°ΠΊΠ²Π°Π½Π΅ΡΠΎ. ΠΠ°ΡΠΎΠ²Π° Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ ΡΠ΅Π·ΠΈ ΠΌΠ΅ΡΠΊΠΈ Π΄Π° ΡΠ΅ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ ΠΊΠ°ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ. ΠΌΠΈΠ½ΠΈΠΌΡΠΌ.
ΠΡΠΊΠ°Ρ ΠΌΠ΅ Π΄Π° ΠΏΡΠΎΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½ΠΈΡΠ΅ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΠ° Π·Π°ΡΠΈΡΠ΅Π½ΠΈ Ρ ΡΠ΅Π·ΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ Ρ ΠΎΡΠ΅ ΡΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°:
- ΠΠ΅ΠΈΠ·ΠΏΡΠ»Π½ΡΠ΅ΠΌΠΈΡΡ Π±ΠΈΡ () ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π² Π²ΡΡΠΊΠ° ΠΎΠ±Π»Π°ΡΡ, ΠΊΠΎΡΡΠΎ Π½Π΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ΅ΠΌΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΡΡΠ΅ΠΊΠ° ΠΈ Ρ.Π½.
- ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΏΡΡΡ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΎΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ Π·Π° ΡΡΡΡΠ΅Π½Π΅ Π½Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΡΡΠ²ΠΈΡΡ Π΅ Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π΅Π½ Π·Π° Π²ΡΡΠΊΠ° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°: ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ΡΠΎ ΠΌΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π° Π½Π°ΠΏΠ°Π΄Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ Π΄Π° Π·Π°ΠΏΠΈΡΠ²Π°Ρ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΡΠΎΠ²Π°Ρ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° ΠΈ Π΄Π° Π³ΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ ΠΊΠ°ΠΊΡΠΎ Π΅. ΠΠ° Π²ΡΠΎΡΠΎΡΠΎ, Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π° ΠΏΡΡΡ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ ΡΠΏΠΎΠΌΠ°Π³Π°Ρ Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΡΠ΅Π΄ΠΈΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, , Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° ).
- ΠΠ°ΡΠΈΡΠ°ΡΠ° ΠΎΡ ΡΡΠ΅ΠΊΠΎΠ²Π΅ Π½Π° ΡΠ±Π»ΡΡΡΡΠΈ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° Π·Π°ΡΠΈΡΠ° ΡΡΠ΅ΡΡ Π°ΡΠ°ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠΈΠ½ΡΠΆΠ΄Π°Π²Π°Ρ ΡΡΠ΅ΠΊΠ° Π΄Π° ΡΠ΅ Π½Π°Π»ΠΎΠΆΠΈ Π²ΡΡΡ Ρ Π΄ΡΡΠ³ΠΈ ΠΎΠ±Π»Π°ΡΡΠΈ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΡΡ Ρ ΠΊΡΠΏΡΠΈΠ½Π°). Π‘ ΠΎΠ³Π»Π΅Π΄ Π½Π° ΡΠΊΠΎΡΠΎΡΠ½ΠΈΡΠ΅ Π΅ΠΊΡΠΏΠ»ΠΎΠΉΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±ΡΠ²Π°Ρ , ΡΠ΅ΡΠΈΡ ΠΌΠ΅, ΡΠ΅ Π΅ ΡΠΌΠ΅ΡΡΠ½ΠΎ Π΄Π° Π²ΠΊΠ»ΡΡΠΈΠΌ ΡΠΎΠ·ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π² Π½Π°ΡΠΈΡ Π½Π°Π±ΠΎΡ ΠΎΡ Π΄Π°Π½Π½ΠΈ.
Π’Π°ΠΊΠ° ΡΠ΅, Π±Π΅Π· ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ΅ΡΠ΅ΠΌΠΎΠ½ΠΈΠΈ, Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ΠΌ ΠΊΡΠΌ ΡΠΈΡΡΠΈΡΠ΅. Π’Π°Π±Π»ΠΈΡΠΈ 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.
ΠΠ°ΠΊΡΠΎ Π²Π΅ΡΠ΅ Π±Π΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΎ, ΠΌΠ΅ΡΡΠΈΠΊΠΈΡΠ΅ Π² ΡΠ°Π·ΠΈ ΡΠ°Π±Π»ΠΈΡΠ° ΡΠ° ΡΡΠ΅Π΄Π½ΠΈ Π·Π° Π²ΡΠΈΡΠΊΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΠΈΡ ΡΠ°ΠΉΠ». ΠΠΊΠΎ ΡΠ΅ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ ΡΠ°ΠΌΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ΡΠ΅, ΡΠΈΡΡΠΈΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΈΠΆΡΠ΅ ). ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π°, ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°Ρ Π·Π°ΡΠΈΡΠ°ΡΠ° ΡΠ°ΠΌΠΎ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΈΡ ΠΊΠΎΠ΄ ΠΏΡΠΈ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°ΡΠ°, Π° Π² Π½Π°ΡΠΈΡ Π°Π½Π°Π»ΠΈΠ· Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ ΠΈΡΡΠΈΠ½ΡΠΊΠΈΡΡ ΠΏΡΠΎΡΠ΅Π½Ρ Π½Π° ΡΠΊΡΠ΅ΠΏΠ΅Π½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠΎΡΠ°Π΄ΠΈ ΡΠΎΠ²Π°, Π°ΠΊΠΎ Π² Π±ΠΈΠ½Π°ΡΠ½ΠΈΡ ΡΠ°ΠΉΠ» ΡΠ° Π·Π°ΡΠΈΡΠ΅Π½ΠΈ 5 ΠΎΡ 50 ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ΅ ΠΌΡ ΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΡΠ΅Π½ΠΊΠ° 0,1, ΠΊΠΎΠ΅ΡΠΎ ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²Π° Π½Π° 10% ΡΠΊΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ.

Π’Π°Π±Π»ΠΈΡΠ° 4. Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° Π·Π°ΡΠΈΡΠ°ΡΠ° Π·Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ Π½Π° ΡΠΈΡ. 3 (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠΈ ΠΎΡ ΠΎΠ±ΡΠΈΡ Π±ΡΠΎΠΉ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅)

Π’Π°Π±Π»ΠΈΡΠ° 5. Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π·Π°ΡΠΈΡΠ° Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ Π½Π° ΡΠΈΡ. 3 (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠΈ ΠΎΡ ΠΎΠ±ΡΠΈΡ Π±ΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ)
ΠΠΌΠ° Π»ΠΈ Π½Π°ΠΏΡΠ΅Π΄ΡΠΊ? ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ: ΡΠΎΠ²Π° Π»ΠΈΡΠΈ Π² ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°ΡΠ° Π·Π° ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ), Π° ΡΡΡΠΎ ΠΈ ΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ΠΈΡΠ΅ ΠΏΠΎ-Π³ΠΎΡΠ΅ ΡΠ°Π±Π»ΠΈΡΠΈ. ΠΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π° ΡΠΈΡ. 6 Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π·Π°ΡΠΈΡΠ½ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ Π² ΡΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Ubuntu LTS 5 (ΠΏΡΠΎΠΏΡΡΠ½Π°Ρ ΠΌΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠ°ΡΠ° Π·Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ ΡΠ±Π»ΡΡΡΠΊΠ° Π½Π° ΡΡΠ΅ΠΊΠ°). ΠΠ°Π±Π΅Π»ΡΠ·Π²Π°ΠΌΠ΅, ΡΠ΅ ΠΎΡ Π²Π΅ΡΡΠΈΡ Π½Π° Π²Π΅ΡΡΠΈΡ Π²ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΡΠ΅ΠΊΠΎΠ²ΠΈ ΠΊΠ°Π½Π°ΡΡΠ΅ΡΠ°, Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° Π²ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ Ρ ΠΏΡΠ»Π½Π° Π·Π°ΡΠΈΡΠ° RELRO.
Π ΠΈΡ. 6
ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅, ΡΠ΅ΡΠΈΡ ΠΎΡ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΠΏΡΠΈΡΠ΅ΠΆΠ°Π²Π°Ρ Π½ΠΈΡΠΎ Π΅Π΄Π½Π° ΠΎΡ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎ-Π³ΠΎΡΠ΅ Π·Π°ΡΠΈΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Ubuntu 18.04 ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΡ ΡΠ°ΠΉΠ» ngetty (Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π» Π½Π° getty), ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΎΠ±Π²ΠΈΠ²ΠΊΠΈΡΠ΅ mksh ΠΈ lksh, ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡΡ picolisp, ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅ nvidia-cuda-toolkit (ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΠΏΠ°ΠΊΠ΅Ρ Π·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ GPU-ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊΠΈΠ²Π° ΠΊΠ°ΡΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΡΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅) ΠΈ 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, Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π² Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ΅ΠΊΠΎΠ²ΠΈ ΠΊΠ°Π½Π°ΡΠΊΠΈ ΠΈ RELRO ΠΎΡ Π²Π΅ΡΡΠΈΠΈ 6 Π΄ΠΎ 7, Π½ΠΎ ΡΡΠ΅Π΄Π½ΠΎ Π² CentOS Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ Π² RHEL. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ, Π²ΡΠΈΡΠΊΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΠΎΠ±ΡΡΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π·Π°ΡΠΈΡΠ°ΡΠ° PIE, ΠΊΠΎΡΡΠΎ, Ρ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π° Debian 9 ΠΈ Ubuntu 18.04, Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π² ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ 10% ΠΎΡ Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ Π² Π½Π°ΡΠΈΡ Π½Π°Π±ΠΎΡ ΠΎΡ Π΄Π°Π½Π½ΠΈ.
ΠΠ°ΠΊΡΠ°Ρ, ΡΡΡΠ±Π²Π° Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ: ΠΌΠ°ΠΊΠ°Ρ ΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄ΠΎΡ ΠΌΠ΅ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½Π΅ΡΠΎ ΡΡΡΠ½ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, , , ), ΠΊΠΎΠΈΡΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Π°Π½Π°Π»ΠΈΠ· ΠΈ ΠΏΠΎΠΌΠ°Π³Π°Ρ Π΄Π° ΡΠ΅ ΠΈΠ·Π±Π΅Π³Π½Π°Ρ Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠ° ΡΡΠΆΠ°Π»Π΅Π½ΠΈΠ΅, Π΄ΠΎΡΠΈ ΡΠΈΠ»Π½Π°ΡΠ° Π·Π°ΡΠΈΡΠ° Π² ΡΠ°Π·ΡΠΌΠ½ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ° ΠΎΡΡΡΡΡΠ²ΠΈΠ΅ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠΉΡΠΈ. ΠΡΠΎ Π·Π°ΡΠΎ ΡΠΌΠ΅ ΡΠ±Π΅Π΄Π΅Π½ΠΈ, ΡΠ΅ Π΅ ΠΎΡ ΠΆΠΈΠ·Π½Π΅Π½ΠΎΠ²Π°ΠΆΠ½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ , ΡΡΡΡΠ΅Π΄ΠΎΡΠΎΡΠ°Π²Π°ΠΉΠΊΠΈ ΡΠ΅ Π²ΡΡΡ Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° Π΅ΠΊΡΠΏΠ»ΠΎΠ°ΡΠ°ΡΠΈΡ ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π°ΠΉΠΊΠΈ Π³ΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: habr.com
