ΠΡΠΎΠ΅ΠΊΡ Openwall ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» Π²ΡΠΏΡΡΠΊ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠ΄ΡΠ° LKRG 0.9.0 (Linux Kernel Runtime Guard), ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΠ°ΠΊ ΠΈ Π½Π°ΡΡΡΠ΅Π½ΠΈΠΉ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΡΡΡΡΠΊΡΡΡ ΡΠ΄ΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠ΄ΡΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΡΠΈΡΠΈΡΡ ΠΎΡ Π½Π΅ΡΠ°Π½ΠΊΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Π½Π΅ΡΠ΅Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ ΡΠ΄ΡΠΎ ΠΈ ΠΏΠΎΠΏΡΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡΠΈΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² (ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠΎΠ²). ΠΠΎΠ΄ΡΠ»Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΡΠΈΡΡ ΠΎΡ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠΎΠ² ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ ΡΠ΄ΡΠ° Linux (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠΈΡΡΠ°ΡΠΈΡΡ ΠΊΠΎΠ³Π΄Π° Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ ΡΠ΄ΡΠΎ), ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΠΊΡΠΏΠ»ΠΎΠΈΡΠ°ΠΌ Π΄Π»Ρ Π΅ΡΡ Π½Π΅ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠ΅ΠΉ. ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ GPLv2.
Π‘ΡΠ΅Π΄ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ:
- ΠΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Ρ ΡΠ΄ΡΠ°ΠΌΠΈ Linux Ρ 5.8 ΠΏΠΎ 5.12, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΌΠΈ ΡΠ΄ΡΠ°ΠΌΠΈ 5.4.87 ΠΈ Π½ΠΎΠ²Π΅Π΅ (Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌΠΈ Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ΄Π΅Ρ 5.8 ΠΈ Π½ΠΎΠ²Π΅Π΅) ΠΈ Ρ ΡΠ΄ΡΠ°ΠΌΠΈ ΠΈΠ· Π²Π΅ΡΡΠΈΠΉ RHEL Π²ΠΏΠ»ΠΎΡΡ Π΄ΠΎ 8.4, Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ Π²ΡΠ΅Ρ ΡΠ°Π½Π΅Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ Π²Π΅ΡΡΠΈΠΉ ΡΠ΄Π΅Ρ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΠ΄ΡΠ° ΠΈΠ· RHEL 7;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ LKRG Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠ°ΠΊ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, Π½ΠΎ ΠΈ Π² ΡΠΎΡΡΠ°Π²Π΅ Π΄Π΅ΡΠ΅Π²Π° ΡΠ΄ΡΠ° Linux, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π΅Π³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΠΎΠ±ΡΠ°Π· ΡΠ΄ΡΠ°;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ ΡΠ΄ΡΠ° ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ;
- ΠΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π½Π΅Π΄ΠΎΡΠ°Π±ΠΎΡΠΎΠΊ Π² LKRG;
- Π‘ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΏΡΠΎΡΠ΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² LKRG;
- ΠΠ½Π΅ΡΠ΅Π½Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ LKRG;
- ΠΠ»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ LKRG, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ out-of-tree ΠΈ mkosi;
- Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½ Ρ BitBucket Π½Π° GitHub ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½Π°Ρ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ GitHub Actions ΠΈ mkosi, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ LKRG Π² ΡΠ΄ΡΠ° ΡΠ΅Π»ΠΈΠ·ΠΎΠ² Ubuntu, Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Ubuntu Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΡΠ΅ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ²Π΅ΠΆΠ°ΠΉΡΠΈΡ mainline-ΡΠ΄Π΅Ρ.
Π Π΄Π°Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ LKRG Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΡΠΉ Π²ΠΊΠ»Π°Π΄ (ΡΠ΅ΡΠ΅Π· pull requests Π½Π° GitHub) Π²Π½Π΅ΡΠ»ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠ°Π½Π΅Π΅ Π½Π΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π²ΡΠΈΡ ΡΡΠ°ΡΡΠΈΠ΅ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊ ΠΠΎΡΠΈΡΠΎΠΌ ΠΡΠΊΠ°ΡΠ΅Π²ΡΠΌ Π±ΡΠ»Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ Π² ΡΠΎΡΡΠ°Π²Π΅ Π΄Π΅ΡΠ΅Π²Π° ΡΠ΄ΡΠ° Linux, Π° ΠΠΈΡΠ°Π»ΠΈΠ΅ΠΌ Π§ΠΈΠΊΡΠ½ΠΎΠ²ΡΠΌ ΠΈΠ· ALT Linux — ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ mkosi ΠΈ GitHub Actions.
Π ΡΠ΅Π»ΠΎΠΌ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° LKRG Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΠΊΡΠ°ΡΠ°Π΅ΡΡΡ Π²ΡΠΎΡΠΎΠΉ ΡΠ°Π· ΠΏΠΎΠ΄ΡΡΠ΄ (ΡΠ°Π½Π΅Π΅ ΠΎΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠΊΡΠ°ΡΠΈΠ»ΠΎΡΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΡΠΌΠΈ 0.8 ΠΈ 0.8.1).
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΏΠ°ΠΊΠ΅Ρ Ρ LKRG Π² Arch Linux ΡΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 0.9.0, Π° ΡΡΠ΄ Π΄ΡΡΠ³ΠΈΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π½Π΅Π΄Π°Π²Π½ΠΈΠ΅ git-Π²Π΅ΡΡΠΈΠΈ LKRG ΠΈ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΠΊΠΎΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²ΡΡΡΡ Π΄ΠΎ Π²Π΅ΡΡΠΈΠΈ 0.9.0 ΠΈ Π΄Π°Π»Π΅Π΅.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Π½Π΅Π΄Π°Π²Π½ΡΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΠ‘ ΠΠ²ΡΠΎΡΠ° (ΡΠΎΡΡΠΈΠΉΡΠΊΠΎΠΉ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Sailfish OS) ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΌ ΡΡΠΈΠ»Π΅Π½ΠΈΠΈ LKRG Ρ ΠΏΠΎΠΌΠΎΡΡΡ ARM TrustZone.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ LKRG ΡΠΌ. Π² Π°Π½ΠΎΠ½ΡΠ΅ Π²Π΅ΡΡΠΈΠΈ 0.8 ΠΈ ΡΠΎΡΡΠΎΡΠ²ΡΠ΅ΠΉΡΡ ΡΠΎΠ³Π΄Π° Π΄ΠΈΡΠΊΡΡΡΠΈΠΈ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru