рдерд┐рдпреЛ рдбреЗ рд░рд╛рдб
W^X рдорд╛ рдХрд╛рдо рд╕реБрд░реБ рднрдПрджреЗрдЦрд┐, рдпреЛ рд╕реНрдкрд╖реНрдЯ рдерд┐рдпреЛ рдХрд┐ рдпреЛ рд▓рд╛рдореЛ рдмрд╛рдЯреЛ рдерд┐рдпреЛ, рдХрд┐рдирдХрд┐ рддреНрдпрд╣рд╛рдБ JIT рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╕рдВрдЦреНрдпрд╛ рдерд┐рдпреЛред JIT рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓рд╛рдИ рддреАрди рд╡рд░реНрдЧрдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ:
- W рд░ X рд░рд╛рдЬреНрдпрд╣рд░реВ рдмреАрдЪ рдореЗрдореЛрд░реА рд╕реНрд╡рд┐рдЪ рдЧрд░реНрджреИ, рдкреНрд░рдгрд╛рд▓реА рдХрд▓рдХреЛ "рд▓рд╛рдЧрдд" рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрджреИ
mpprotect . - рдПрдЙрдЯреИ рдореЗрдореЛрд░реАрдХреЛ W рд░ X рдореНрдпрд╛рдкрд┐рдЩрд╣рд░реВ рдмреАрдЪ рдЙрдкрдирд╛рдорд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджреИред
- рд╕рдмреИрднрдиреНрджрд╛ "рдлреЛрд╣реЛрд░" рд╡рд┐рдХрд▓реНрдкрд▓рд╛рдИ W|X рдореЗрдореЛрд░реА рдореЛрдбреЗрд▓ рдЪрд╛рд╣рд┐рдиреНрдЫ рдЬрд╕рд▓реЗ рдПрдХрд╕рд╛рде рд░реЗрдХрд░реНрдбрд┐рдЩ рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
рд╣рд╛рд▓, рддреЗрд╕реНрд░реЛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рд░ рдкрд╣рд┐рд▓реЛ рд░ рджреЛрд╕реНрд░реЛ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдзреЗрд░реИ рдХрдо рдХрд╛рд░реНрдпрдХреНрд░рдорд╣рд░реВ рдЫрдиреНред рдпрджреНрдпрдкрд┐, W|X JIT (рдореБрдЦреНрдп рд░реВрдкрдорд╛ рдХреНрд░реЛрдорд┐рдпрдо рд░ рдЗрд░рд┐рдбрдо) рд╕рдБрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╣рд░реВ рдЪрд▓рд╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рднрдПрдХреЛрд▓реЗ, "wxallowed" рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рдорд╛рдЙрдиреНрдЯ рд╡рд┐рдХрд▓реНрдк рдердкрд┐рдпреЛ, рдЬрд╕рд▓реЗ рдореЗрдореЛрд░реАрд▓рд╛рдИ рд▓реЗрдЦрди рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рджреБрд╡реИрдХрд╛ рд▓рд╛рдЧрд┐ рдПрдХреИрд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдпреЛ, рдпрджрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпреЛрдЧреНрдп ELF рдлрд╛рдЗрд▓ "wxneeded" рдорд╛рд░реНрдХрд░рдХреЛ рд╕рд╛рде рдЪрд┐рдиреНрд╣ рд▓рдЧрд╛рдЗрдПрдХреЛ рдЫ, рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдЖрдлреИрдВрд▓рд╛рдИ рдердк рд░реВрдкрдорд╛ рд╕рдВрдпрдиреНрддреНрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред
рддреНрдпрд╕реНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдорд╛ рдХрдордЬреЛрд░реАрд╣рд░реВрдХреЛ рд╢реЛрд╖рдгрд▓рд╛рдИ рдердк рдЬрдЯрд┐рд▓ рдмрдирд╛рдЙрди, рд╕рдВрдпрдиреНрддреНрд░рдорд╛ рдердк рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░рд┐рдПрдХреЛ рдЫред
рдХреНрд░реЛрдо/рдЗрд░рд┐рдбрд┐рдпрдо рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╣рд░реВ рдкрд╣рд┐рд▓реЗ рдиреИ рдкреНрд░рддрд┐рдЬреНрдЮрд╛ рд░ рдЕрдирд╛рд╡рд░рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдзреЗрд░реИ рднрд░рдкрд░реНрджреЛ рд░реВрдкрдорд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдЫрдиреН, рддрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ рд╣рдЯрд╛рдЙрдБрджрд╛, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд▓реЗрдЦрди(реи) рдкреНрд░рдгрд╛рд▓реА рдХрд▓рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдХреЗрд╣реА рдлрд╛рдЗрджрд╛ рдЫ, рдХрд┐рдирдХрд┐ рдпрд╕рд▓реЗ рдЖрдХреНрд░рдордгрдХрд╛рд░реАрдХрд╛ рд▓рд╛рдЧрд┐ рдердк рдХрдард┐рдирд╛рдЗрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрдЫред рдпрджреНрдпрдкрд┐, JIT рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирд▓реЗ W|X рдореЗрдореЛрд░реАрдмрд╛рдЯ рдиреЗрдЯрд┐рдн рдкреНрд░рдгрд╛рд▓реА рдХрд▓рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрдорд╛ рдкрдирд┐ рдХрдард┐рдирд╛рдЗрд╣рд░реВ рдЙрддреНрдкрдиреНрди рд╣реБрди рд╕рдХреНрдЫрдиреНред рдЬреЗ рд╣реЛрд╕реН, рддреНрдпрд╣рд╛рдБ рдЖрд╢рд╛ рдЧрд░реНрдиреЗ рдХрд╛рд░рдг рдЫ рдХрд┐ рдпреЛ рдХреЗрд╕ рд╣реБрдиреЗрдЫреИрди, рдХрд┐рдирдХрд┐ ABI рдзреЗрд░реИ рдкрдЯрдХ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░рд┐рдПрдХреЛ рдЫ, рддрд░ рдХрд╕реИрд▓реЗ рдкрдирд┐ рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рд░рд┐рдкреЛрд░реНрдЯ рдЧрд░реЗрдХреЛ рдЫреИрдиред
рдкрд░рд┐рд╡рд░реНрддрдирд╣рд░реВ OpenBSD-рд╡рд░реНрддрдорд╛рди рд╢рд╛рдЦрд╛рдХреЛ рдирд┐рдпрдорд┐рдд рд╕реНрдиреНрдпрд╛рдкрд╕рдЯрд╣рд░реВрдорд╛ рдкрд╣рд┐рд▓реЗ рдиреИ рдЙрдкрд▓рдмреНрдз рдЫрдиреН, рдЗрдЪреНрдЫреБрдХ рд╕рдмреИрд▓рд╛рдИ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрди рдЖрдордиреНрддреНрд░рд┐рдд рдЧрд░рд┐рдПрдХреЛ рдЫред
рдХреНрд░реЛрдо/рдЗрд░рд┐рдбрд┐рдпрдордорд╛ рдореЛрдбрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐рдХреЛ рдмрд╛рд░реЗрдорд╛ рд╕рдореНрдмрдиреНрдзрд┐рдд рд╕рдорд╛рдЪрд╛рд░рд╣рд░реВ рдерд┐рдпреЛрдмрд╛рдЯ рдЫреБрдЯреНрдЯреИ рдЯрд┐рдкреНрдкрдгреАрдХреЛ рдпреЛрдЧреНрдп рдЫрдиреН
рд╕реНрд░реЛрдд: opennet.ru