Π’ ядрото Π½Π° Linux 6.18 Π΅ ΠΏΡ€ΠΈΠ΅Ρ‚Π° рСализация Π½Π° Binder IPC Π·Π° Android, написана Π½Π° Rust

Π’ ΠΊΠΎΠ΄Π° Π½Π° ядрото Π½Π° Linux, Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° ΠΊΠΎΠ΅Ρ‚ΠΎ сС Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° вСрсия 6.18, Π΅ ΠΏΡ€ΠΈΠ΅Ρ‚Π° рСализация Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° мСТдупроцСсно взаимодСйствиС Binder, написан Π½Π° Π΅Π·ΠΈΠΊΠ° Rust. Binder сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Android Π·Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° взаимодСйствиСто ΠΌΠ΅ΠΆΠ΄Ρƒ процСситС ΠΈ Π·Π° ΠΎΡ‚Π΄Π°Π»Π΅Ρ‡Π΅Π½ΠΎΡ‚ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ (Π΅Π΄ΠΈΠ½ Android процСс ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π²ΠΈΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ»ΠΈ функция Π² Π΄Ρ€ΡƒΠ³ Android процСс, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Binder Π·Π° идСнтификация, ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ процСситС). ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° Binder бСшС прСнаписан Π½Π° Rust Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π·Π° ΡƒΠΊΡ€Π΅ΠΏΠ²Π°Π½Π΅ Π½Π° бСзопасността, популяризиранС Π½Π° Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈΡ‚Π΅ Π·Π° бСзопасно ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ ΠΈ повишаванС Π½Π° СфСктивността ΠΏΡ€ΠΈ откритията Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π² Android (ΠΎΠΊΠΎΠ»ΠΎ 70% ΠΎΡ‚ всички опасни уязвимости, ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ Π² Android, са ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΈ ΠΎΡ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π°).

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Rust ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° някои ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, с ΠΊΠΎΠΈΡ‚ΠΎ сС ΡΠ±Π»ΡŠΡΠΊΠ²Π°Ρ…Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° Binder, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π³Ρ€Π΅ΡˆΠΊΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с прСброяванС Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π³Ρ€Π°Π½ΠΈΡ†ΠΈ, Π° ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ намалява слоТността ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ. РСализацията Π½Π° Binder Π½Π° Rust Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° Π½Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½Π°Ρ‚Π° вСрсия Π½Π° C, ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° всички тСстовС Π½Π° AOSP (Android Open-Source Project) ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° създаванС Π½Π° Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ Π½Π° Android Ρ„ΡŠΡ€ΠΌΡƒΠ΅Ρ€. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Π½Π°ΠΏΡ€Π΅Π΄Π½Π°Π»ΠΈΡ‚Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ със слоТна сСмантика Π½Π° ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π½ΠΈΠ΅, Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΡŠΡ‚ Π½Π° Rust сС ΠΎΠΊΠ°Π·Π° ΠΏΠΎ-малък ΠΎΡ‚ вСрсията Π½Π° C β€” 5.5 спрямо 5.8 хиляди Ρ€Π΅Π΄Π° ΠΊΠΎΠ΄.

Π’ описаниСто Π½Π° ΠΊΠΎΠΌΠΈΡ‚Π° Π°Π²Ρ‚ΠΎΡ€ΡŠΡ‚ спомСнава слСднитС ΠΌΠΎΡ‚ΠΈΠ²ΠΈ Π·Π° прСнаписванСто Π½Π° Binder:

  • Binder, ΠΊΠΎΠΉΡ‚ΠΎ сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π²Π΅Ρ‡Π΅ 15 Π³ΠΎΠ΄ΠΈΠ½ΠΈ, ΠΈ Π·Π° Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° функционалност ΠΈ слоТност Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ нараснаха β€” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ сС Π½Π°ΠΌΠΈΡ€Π° Π½Π° Π³Ρ€Π°Π½ΠΈΡ†Π°Ρ‚Π° Π½Π° всички ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° Android ΠΈ ΠΎΠ±Ρ…Π²Π°Ρ‰Π° мноТСство Π·Π°Π΄Π°Ρ‡ΠΈ, извън ΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ Π½Π° IPC:
    • ΠΊΠΎΡ€Π΅ΠΊΡ‚Π΅Π½ Π°Π½Π°Π»ΠΈΠ· ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ няколко ΠΎΠ±Π΅ΠΊΡ‚Π° ΠΎΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ, Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΈ дСскриптори), взаимодСйстват ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си;
    • ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΏΡƒΠ»ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° нишки Π² потрСбитСлското пространство ΠΈ осигуряванС Π½Π° Π½Π°Π·Π½Π°Ρ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π½Π° нишки ΠΏΠΎ Ρ‚Π°ΠΊΡŠΠ² Π½Π°Ρ‡ΠΈΠ½, Ρ‡Π΅ Π΄Π° сС ΠΈΠ·Π±Π΅Π³Π½Π°Ρ‚ Π²Π·Π°ΠΈΠΌΠ½ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΏΡ€ΠΈ ΠΈΠ·Ρ‡Π΅Ρ€ΠΏΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½ΠΈΡˆΠΊΠΈΡ‚Π΅ Π² ΠΏΡƒΠ»Π°;
    • прослСдяванС Π½Π° броя Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, ΡΡŠΠ²ΠΌΠ΅ΡΡ‚Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΎΡ‚ няколко процСса, ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎ прСнасочвайки ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ Π² броя Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈΡ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ процСситС;
    • ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° мноТСство сцСнарии Π·Π° възникванС Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°Π½Π΅ Π½Π° 13 Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ, 7 броячи Π½Π° Π»ΠΈΠ½ΠΊΠΎΠ²Π΅ ΠΈ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ. Π’ ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅, Ρ‚Π΅Π·ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ трябва Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ максимално Π±ΡŠΡ€Π·ΠΎ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ.
  • Π’ стария ΠΊΠΎΠ΄ сС Π΅ Π½Π°Ρ‚Ρ€ΡƒΠΏΠ°Π» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π΅Π½ тСхничСски дълг, ΠΊΠΎΠΉΡ‚ΠΎ услоТнява ΠΊΠ°ΠΊΡ‚ΠΎ откритията Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΡˆΠ½ΠΎΡ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅. НапримСр, Π² ядрото сС срСщат Π³ΠΎΠ»Π΅ΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ хиляда Ρ€Π΅Π΄Π° ΠΊΠΎΠ΄, ΡΡŠΠΌΠ½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ ΠΎΠ±ΡŠΡ€ΠΊΠ°Π½ΠΈ структури.
  • Binder Π΅ критичСски ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ с ΠΎΠ³Π»Π΅Π΄ Π½Π° сигурността Π² Android, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ sandbox срСди, ΠΊΠ°Ρ‚ΠΎ процСса Π½Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π² Chrome ΠΈ SW Codec, ΠΈΠΌΠ°Ρ‚ пряк Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π½Π΅Π³ΠΎ, Π° уязвимост Π² Binder Ρ‰Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ заобикалянС Π½Π° изолацията. Високата слоТност Π² комбинация с тСхничСския дълг Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ услоТняват ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½Π΅ Π½Π° високото Π½ΠΈΠ²ΠΎ Π½Π° сигурност Π² Binder.

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

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster