ΠŸΠ»Π°Π½ΠΈΡ€Π° Π΄Π° Π³ΠΎ зајакнС бСзбСдносниот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·Π°ΠΌ W^X Π½Π° OpenBSD

Π’Π΅ΠΎ Π”Π΅ Π Π°Π΄Ρ‚ сподСлСни ΠΏΠ»Π°Π½ΠΈΡ€Π° Π΄Π° Π³ΠΎ зајакнС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ Π·Π° Π·Π°ΡˆΡ‚ΠΈΡ‚Π° Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° W^X (Write XOR Execute). Π‘ΡƒΡˆΡ‚ΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ Π΅ Π΄Π΅ΠΊΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅ истоврСмСно Π΄Π° сС пристапи Π΄ΠΎ страницитС Π½Π° процСсната ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° Π·Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ ΠΈ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅. Π’Π°ΠΊΠ°, ΠΊΠΎΠ΄ΠΎΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΠΈ само ΠΎΡ‚ΠΊΠ°ΠΊΠΎ ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ, Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° мСмориска страница Π΅ ΠΌΠΎΠΆΠ½ΠΎ само ΠΎΡ‚ΠΊΠ°ΠΊΠΎ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π΅ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ΠΎ. ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ W^X ΠΏΠΎΠΌΠ°Π³Π° Π΄Π° сС Π·Π°ΡˆΡ‚ΠΈΡ‚Π°Ρ‚ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° корисничкиот простор ΠΎΠ΄ Π²ΠΎΠΎΠ±ΠΈΡ‡Π°Π΅Π½ΠΈ Π½Π°ΠΏΠ°Π΄ΠΈ Π½Π° ΠΏΡ€Π΅Π»Π΅Π²Π°ΡšΠ΅ Π½Π° Π±Π°Ρ„Π΅Ρ€ΠΎΡ‚, Π²ΠΊΠ»ΡƒΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΈ ΠΏΡ€Π΅Π»Π΅Π²Π°ΡšΠ΅ Π½Π° стСк, ΠΈ Π΅ Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Π²ΠΎ OpenBSD стандардно.

Од ΠΏΠΎΡ‡Π΅Ρ‚ΠΎΠΊΠΎΡ‚ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° W^X, бСшС јасно Π΄Π΅ΠΊΠ° ΠΎΠ²Π° Π΅ Π΄ΠΎΠ»Π³ ΠΏΠ°Ρ‚, бидСјќи имашС Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π΅Π½ Π±Ρ€ΠΎΡ˜ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΡˆΡ‚ΠΎ користат JIT. Π˜ΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° JIT ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ΄Π΅Π»ΠΈ Π²ΠΎ Ρ‚Ρ€ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ:

  • ΠŸΡ€Π΅Ρ„Ρ€Π»Π°ΡšΠ΅ Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° ΠΏΠΎΠΌΠ΅Ρ“Ρƒ W ΠΈ X ΡΠΎΡΡ‚ΠΎΡ˜Π±ΠΈ, ΠΏΡ€ΠΈΡ„Π°ΡœΠ°ΡšΠ΅ Π½Π° β€žΡ†Π΅Π½Π°Ρ‚Π°β€œ Π½Π° систСмскиот ΠΏΠΎΠ²ΠΈΠΊ mpprotec.
  • БоздавањС псСвдоними ΠΏΠΎΠΌΠ΅Ρ“Ρƒ ΠΏΠ°Ρ€ W ΠΈ X ΠΌΠ°ΠΏΠΈΡ€Π°ΡšΠ° Π½Π° иста ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°.
  • β€žΠΠ°Ρ˜Π²Π°Π»ΠΊΠ°Π½Π°Ρ‚Π°β€œ ΠΎΠΏΡ†ΠΈΡ˜Π° Π±Π°Ρ€Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° W|X ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡƒΠ²Π° истоврСмСно снимањС ΠΈ ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅.

Π’ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΈΠΌΠ° Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠΌΠ°Π»ΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ ΠΊΠΎΠΈ ја користат Ρ‚Ρ€Π΅Ρ‚Π°Ρ‚Π° ΠΎΠΏΡ†ΠΈΡ˜Π° ΠΈ повСќС ја користат ΠΏΡ€Π²Π°Ρ‚Π° ΠΈ Π²Ρ‚ΠΎΡ€Π°Ρ‚Π°. ΠœΠ΅Ρ“ΡƒΡ‚ΠΎΠ°, бидСјќи бСшС Π½Π΅ΠΎΠΏΡ…ΠΎΠ΄Π½ΠΎ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ со W|X JIT (Π³Π»Π°Π²Π½ΠΎ Chromium ΠΈ Iridum), Π΄ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ ΠΎΠΏΡ†ΠΈΡ˜Π°Ρ‚Π° Π·Π° ΠΌΠΎΠ½Ρ‚ΠΈΡ€Π°ΡšΠ΅ Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅Ρ‡Π½ΠΈΠΎΡ‚ систСм β€žwxallowedβ€œ, ΡˆΡ‚ΠΎ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΠΈ ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° Π΄Π° сС користи истоврСмСно ΠΈ Π·Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅ ΠΈ Π·Π° ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°ΡšΠ΅, Π²ΠΎ ΡΠ»ΡƒΡ‡Π°Ρ˜ Π°ΠΊΠΎ ΠΈΠ·Π²Ρ€ΡˆΠ½Π°Ρ‚Π° ELF Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π΅ ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π° со ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ΠΎΡ‚ β€žwxneededβ€œ, Π° самитС Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π±Π΅Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π·Π°ΡˆΡ‚ΠΈΡ‚Π΅Π½ΠΈ со помош Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π°Π»ΠΎΠ³ ΠΈ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π° Π·Π° Π΄Π° сС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈ списокот Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π΅Π½ΠΈ систСмски ΠΏΠΎΠ²ΠΈΡ†ΠΈ ΠΈ Π΄Π΅Π»ΠΎΠ²ΠΈ ΠΎΠ΄ Π΄Π°Ρ‚ΠΎΡ‚Π΅Ρ‡Π΅Π½ систСм достапни Π·Π° Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π°Ρ‚Π°, соодвСтно.

Π—Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π΄Π° сС ΠΊΠΎΠΌΠΏΠ»ΠΈΡ†ΠΈΡ€Π° ΠΈΡΠΊΠΎΡ€ΠΈΡΡ‚ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° ранливоститС Π²ΠΎ Ρ‚Π°ΠΊΠ²ΠΈΡ‚Π΅ Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° Π΄ΠΎΠ΄Π°Ρ‚ΠΎΠΊ Π½Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΡ‚ MAP_STACK, кој ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡƒΠ²Π° Π΄Π°Π»ΠΈ систСмскиот ΠΏΠΎΠ²ΠΈΠΊ сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π° ΠΎΠ΄ страница со ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π° ΡˆΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС запишС. Ако страницата ΠΌΠΎΠΆΠ΅ Π΄Π° сС запишС, процСсот Π΅ ΠΏΡ€ΠΈΠ½ΡƒΠ΄Π΅Π½ Π΄Π° сС ΠΏΡ€Π΅ΠΊΠΈΠ½Π΅. На овој Π½Π°Ρ‡ΠΈΠ½, Π½Π°ΠΏΠ°Ρ“Π°Ρ‡ΠΎΡ‚ Π½Π΅ΠΌΠ° Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΈ искористува систСмскитС ΠΏΠΎΠ²ΠΈΡ†ΠΈ ΠΈ ќС Π±ΠΈΠ΄Π΅ ΠΏΡ€ΠΈΠ½ΡƒΠ΄Π΅Π½ Π΄Π° сС ΠΎΠ±ΠΈΠ΄Π΅ Π΄Π° Π³ΠΈ ΠΏΡ€ΠΎΠ½Π°Ρ˜Π΄Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΈΡ‚Π΅ Π³Π°ΡŸΠ΅Ρ‚ΠΈ Π²ΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° JIT ΠΈΠ»ΠΈ Π΄ΡƒΡ€ΠΈ ΠΈ Π΄Π° ја ΠΈΠ·Π²Ρ€ΡˆΠΈ ΠΏΠΎΡ‚Π΅ΡˆΠΊΠ°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π·Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°ΡšΠ΅ Π½ΠΈΠΊΡƒΠ»Ρ†ΠΈ Π·Π° систСмски ΠΏΠΎΠ²ΠΈΡ†ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ Π²Π½Π°Ρ‚Ρ€Π΅. ΡΠ»ΡƒΡ‡Π°Ρ˜Π½ΠΎ ΠΏΠΎΠ²Ρ€Π·Π°Π½ libc.

ΠŸΡ€ΠΎΡ†Π΅ΡΠΈΡ‚Π΅ Π½Π° Chrome/Iridium сС вСќС сосСма сигурно Π·Π°ΡˆΡ‚ΠΈΡ‚Π΅Π½ΠΈ со ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅ Π½Π° Π·Π°Π»ΠΎΠ³ ΠΈ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°ΡšΠ΅, Π½ΠΎ ΠΎΡ‚ΡΡ‚Ρ€Π°Π½ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° моТноста Π·Π° ΠΊΠΎΡ€ΠΈΡΡ‚Π΅ΡšΠ΅, Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€, систСмскиот ΠΏΠΎΠ²ΠΈΠΊ Π·Π° ΠΏΠΈΡˆΡƒΠ²Π°ΡšΠ΅(2) ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π½ΠΎ ΠΈΠΌΠ° ΠΎΠ΄Ρ€Π΅Π΄Π΅Π½Π° прСдност, бидСјќи создава Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ Ρ‚Π΅ΡˆΠΊΠΎΡ‚ΠΈΠΈ Π·Π° Π½Π°ΠΏΠ°Ρ“Π°Ρ‡ΠΎΡ‚. Π‘Π΅ΠΏΠ°ΠΊ, ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΡ˜Π°Π²Π°Ρ‚ ΠΏΠΎΡ‚Π΅ΡˆΠΊΠΎΡ‚ΠΈΠΈ Π°ΠΊΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° JIT користи домашни систСмски ΠΏΠΎΠ²ΠΈΡ†ΠΈ ΠΎΠ΄ W|X ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°. Π‘Π΅ΠΏΠ°ΠΊ, ΠΈΠΌΠ° ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π΄Π° сС Π½Π°Π΄Π΅Π²Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° Ρ‚ΠΎΠ° Π½Π΅ΠΌΠ° Π΄Π° Π±ΠΈΠ΄Π΅ ΡΠ»ΡƒΡ‡Π°Ρ˜, бидСјќи ABI бСшС ΠΌΠ΅Π½ΡƒΠ²Π°Π½ Π½Π΅ΠΊΠΎΠ»ΠΊΡƒ ΠΏΠ°Ρ‚ΠΈ, Π½ΠΎ никој никогаш Π½Π΅ ΠΏΡ€ΠΈΡ˜Π°Π²ΠΈΠ» ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ.

ΠŸΡ€ΠΎΠΌΠ΅Π½ΠΈΡ‚Π΅ сС вСќС достапни Π²ΠΎ Ρ€Π΅Π΄ΠΎΠ²Π½ΠΈΡ‚Π΅ снимки ΠΎΠ΄ Π³Ρ€Π°Π½ΠΊΠ°Ρ‚Π° OpenBSD-Current, ситС заинтСрСсирани сС ΠΏΠΎΠΊΠ°Π½Π΅Ρ‚ΠΈ Π΄Π° тСстираат.

ΠŸΠΎΠ²Ρ€Π·Π°Π½ΠΈ вСсти Π·Π° ΠΈΠ·Π³Π»Π΅Π΄ΠΎΡ‚ Π½Π° Ρ€Π΅ΠΆΠΈΠΌΠΎΡ‚ Π²ΠΎ Chrome/Iridium заслуТуваат посСбСн ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ ΠΎΠ΄ Π’Π΅ΠΎ JITless. Од Π½Π΅Π³ΠΎΠ²Π° Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°, ΠΎΠ²Π° Π΅ ΠΏΡ€ΠΈΡ„Π°Ρ‚Π»ΠΈΠ²ΠΎ Π·Π° Π½Π΅ΠΊΠΎΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°, Π½ΠΎ Π²Π΅Ρ€ΠΎΡ˜Π°Ρ‚Π½ΠΎ Π½Π΅ Π·Π° ситС, бидСјќи овој Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‡ΠΈΠ³Π»Π΅Π΄Π½ΠΎ ќС Π³ΠΎ Π·Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠΏΡ‚ΠΎΠ²Π°Ρ€ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π½Π° процСсорот. Π’ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚ΠΎΠ², Chrome Π½Π°Ρ˜ΠΌΠ½ΠΎΠ³Ρƒ ќС Ρ€Π°Π±ΠΎΡ‚ΠΈ Π°ΠΊΠΎ Π³ΠΎ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠΈΡ‚Π΅ β€žwxallowedβ€œ Π·Π° /usr/local, ΠΈΠ°ΠΊΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ со Π½Π΅ΠΊΠΎΠΈ СкстСнзии (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΅ ghostery). На Π΅Π΄Π΅Π½ ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ Π½Π°Ρ‡ΠΈΠ½, Π’Π΅ΠΎ сС Π½Π°Π΄Π΅Π²Π° Π΄Π΅ΠΊΠ° ΠΏΠΎΠ»Π½ΠΎΠΏΡ€Π°Π²Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌ Π±Π΅Π· JIT ќС Π±ΠΈΠ΄Π΅ Π΄ΠΎΠ²Π΅Π΄Π΅Π½Π° Π²ΠΎ цСлосно ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Π° ΡΠΎΡΡ‚ΠΎΡ˜Π±Π° Π²ΠΎ блиска ΠΈΠ΄Π½ΠΈΠ½Π°.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€