12 ΡΠ½Π²Π°ΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Open Source Security, ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ grsecurity, ΠΎΠ±ΡΡΠ²ΠΈΠ»Π° ΠΎ ΡΠΏΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΡΠΎΠ½ΡΠ΅Π½Π΄Π° ΠΊ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ GCC Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Rust — gccrs.
ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ gccrs ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°Π»ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ Rustc, Π½ΠΎ ΠΈΠ·-Π·Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΉ ΠΊ ΡΠ·ΡΠΊΡ ΠΈ ΡΠ°ΡΡΡΡ Π»ΠΎΠΌΠ°ΡΡΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π° ΡΠ°Π½Π½Π΅ΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΡΠ»Π° Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°Π±ΡΠΎΡΠ΅Π½Π° ΠΈ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΠ»Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π²ΡΡ ΠΎΠ΄Π° Rust 1.0.
Open Source Security ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡ ΡΠ²ΠΎΡ ΡΡΠ°ΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡΠΌ ΠΊΠΎΠ΄Π° Π½Π° Rust Π² ΡΠ΄ΡΠ΅ Linux ΠΈ ΡΠ΅ΠΌ, ΡΡΠΎ ΡΠ΄ΡΠΎ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ gcc. ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΊ ΡΡΠΎΠΌΡ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΡΡΠ°Π·Ρ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΡΠ·Π²ΠΈΠΌΠΎΡΡΠΈ, Π²ΡΠ·Π²Π°Π½Π½ΡΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΈΠΌ ΡΠ°ΠΊΡΠΎΠΌ (ΡΠΌ. Exploiting Mixed Binaries), ΠΊΠΎΡΠΎΡΡΡ Π±Ρ Π½Π΅ Π±ΡΠ»ΠΎ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ Π½Π° ΡΠΈΡΡΠΎΠΌ C ΠΈΠ»ΠΈ C++.
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Open Source Security ΡΠΏΠΎΠ½ΡΠΈΡΡΡΡ ΡΠ°Π±ΠΎΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π°Π΄ gccrs Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π³ΠΎΠ΄Π°, Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² Π½Π° ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΠ°ΡΠ°. Π’Π°ΠΊ ΠΆΠ΅ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΡΠ°ΡΡΠ²ΡΠ΅Ρ Π±ΡΠΈΡΠ°Π½ΡΠΊΠ°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Embercosm, ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΠ°ΡΡΡ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ GCC ΠΈ LLVM ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ²ΡΠ°Ρ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄Π»Ρ Π΄Π°Π½Π½ΠΎΠΉ ΠΈΠ½ΠΈΡΠΈΠ°ΡΠΈΠ²Ρ.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: linux.org.ru