рдмрдмрд▓рд░реЕрдк 0.8 рдЪреЗ рд░рд┐рд▓реАрдЭ, рд╡рд┐рд▓рдЧ рд╡рд╛рддрд╛рд╡рд░рдг рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рд╕реНрддрд░

рдкреГрдердХ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рддреАрд▓ рдХрд╛рдо рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд╛рдзрдирд╛рдВрдЪреЗ рдкреНрд░рдХрд╛рд╢рди рдмрдмрд▓рд░реЕрдк 0.8 рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ, рд╕рд╛рдорд╛рдиреНрдпрдд: рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдирд╕рд▓реЗрд▓реНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╡реИрдпрдХреНрддрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрдирд╛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ. рдкреНрд░реЕрдХреНрдЯрд┐рд╕рдордзреНрдпреЗ, рдлреНрд▓реЕрдЯрдкреЕрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯрджреНрд╡рд╛рд░реЗ рдкреЕрдХреЗрдЬреЗрд╕рдордзреВрди рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗрд▓реЗ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд╡реЗрдЧрд│реЗ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдмрдмрд▓рд░реЕрдкрдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рдкреНрд░рдХрд▓реНрдк рдХреЛрдб C рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ LGPLv2+ рдкрд░рд╡рд╛рдиреНрдпрд╛рдЕрдВрддрд░реНрдЧрдд рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ.

рдЖрдпрд╕реЛрд▓реЗрд╢рдирд╕рд╛рдареА, рдкрд╛рд░рдВрдкрд╛рд░рд┐рдХ рд▓рд┐рдирдХреНрд╕ рдХрдВрдЯреЗрдирд░ рд╡рд░реНрдЪреНрдпреБрдЕрд▓рд╛рдпрдЭреЗрд╢рди рддрдВрддреНрд░рдЬреНрдЮрд╛рди рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддрд╛рдд, cgroups, рдиреЗрдорд╕реНрдкреЗрд╕реЗрд╕, Seccomp рдЖрдгрд┐ SELinux рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд. рдХрдВрдЯреЗрдирд░ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░рд┐рдд рдСрдкрд░реЗрд╢рдиреНрд╕ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдмрдмрд▓рд░реЕрдк рд░реВрдЯ рдЕрдзрд┐рдХрд╛рд░рд╛рдВрд╕рд╣ рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рддреЗ (рд╕реНрдпреВрдб рдлреНрд▓реЕрдЧрд╕рд╣ рдПрдХ рдПрдХреНрдЭрд┐рдХреНрдпреВрдЯреЗрдмрд▓ рдлрд╛рдЗрд▓) рдЖрдгрд┐ рдирдВрддрд░ рдХрдВрдЯреЗрдирд░ рд╕реБрд░реВ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд░реАрд╕реЗрдЯ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд.

рдиреЗрдорд╕реНрдкреЗрд╕ рд╕рд┐рд╕реНрдЯреАрдордордзреНрдпреЗ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдиреЗрдорд╕реНрдкреЗрд╕ рд╕рдХреНрд░рд┐рдп рдХрд░рдгреЗ, рдЬреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрдВрдЯреЗрдирд░рдордзреНрдпреЗ рддреБрдордЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рдЕрднрд┐рдЬреНрдЮрд╛рдкрдХрд╛рдВрдЪрд╛ рд╕реНрд╡рддрдВрддреНрд░ рд╕рдВрдЪ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ, рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдирд╛рд╣реА, рдХрд╛рд░рдг рддреЗ рдЕрдиреЗрдХ рд╡рд┐рддрд░рдгрд╛рдВрдордзреНрдпреЗ рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдХрд╛рд░реНрдп рдХрд░рдд рдирд╛рд╣реА (рдмрдмрд▓рд░реЕрдк рдорд░реНрдпрд╛рджрд┐рдд рд╕реВрдЯ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдореНрд╣рдгреВрди рд╕реНрдерд┐рдд рдЖрд╣реЗ. рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдиреЗрдорд╕реНрдкреЗрд╕ рдХреНрд╖рдорддрд╛рдВрдЪрд╛ рдЙрдкрд╕рдВрдЪ - рд╕рд░реНрд╡ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЖрдгрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрднрд┐рдЬреНрдЮрд╛рдкрдХрд╛рдВрдирд╛ рдкрд░реНрдпрд╛рд╡рд░рдгрд╛рддреВрди рд╡рдЧрд│рдгреНрдпрд╛рд╕рд╛рдареА, рд╡рд░реНрддрдорд╛рди рд╡рдЧрд│рддрд╛, CLONE_NEWUSER рдЖрдгрд┐ CLONE_NEWPID рдореЛрдб рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддрд╛рдд). рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд░рдХреНрд╖рдгрд╛рд╕рд╛рдареА, Bubblewrap рдЕрдВрддрд░реНрдЧрдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реЗрд▓реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо PR_SET_NO_NEW_PRIVS рдореЛрдбрдордзреНрдпреЗ рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд, рдЬреЗ рдирд╡реАрди рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рд╕ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рддреЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╕реЗрдЯреБрдЗрдб рдзреНрд╡рдЬ рдЙрдкрд╕реНрдерд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕.

рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯреАрдо рд╕реНрддрд░рд╛рд╡рд░ рдЖрдпрд╕реЛрд▓реЗрд╢рди рдирд╡реАрди рдорд╛рдЙрдВрдЯ рдиреЗрдорд╕реНрдкреЗрд╕ рдмрд╛рдп рдбреАрдлреЙрд▓реНрдЯ рддрдпрд╛рд░ рдХрд░реВрди рдкреВрд░реНрдг рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ tmpfs рд╡рд╛рдкрд░реВрди рд░рд┐рдХреНрдд рд░реВрдЯ рд╡рд┐рднрд╛рдЬрди рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рдмрд╛рд╣реНрдп FS рд╡рд┐рднрд╛рдЬрдиреЗ рдпрд╛ рд╡рд┐рднрд╛рдЬрдирд╛рд▓рд╛ тАЬmount тАФbindтАЭ рдореЛрдбрдордзреНрдпреЗ рдЬреЛрдбрд▓реА рдЬрд╛рддрд╛рдд (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЬреЗрд╡реНрд╣рд╛ тАЬbwrap тАФro-bind /usr/usrтАЭ рдкрд░реНрдпрд╛рдпрд╛рдиреЗ рд▓рд╛рдБрдЪ рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рддреЗрд╡реНрд╣рд╛ /usr рд╡рд┐рднрд╛рдЬрди рдореБрдЦреНрдп рдкреНрд░рдгрд╛рд▓реАрд╡рд░реВрди рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рдХреЗрд╡рд│-рд╡рд╛рдЪрдиреАрдп рдореЛрдбрдордзреНрдпреЗ). рдиреЗрдЯрд╡рд░реНрдХ рдХреНрд╖рдорддрд╛ CLONE_NEWNET рдЖрдгрд┐ CLONE_NEWUTS рдлреНрд▓реЕрдЧрджреНрд╡рд╛рд░реЗ рдиреЗрдЯрд╡рд░реНрдХ рд╕реНрдЯреЕрдХ рдЖрдпрд╕реЛрд▓реЗрд╢рдирд╕рд╣ рд▓реВрдкрдмреЕрдХ рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдорд░реНрдпрд╛рджрд┐рдд рдЖрд╣реЗрдд.

рд╕рдорд╛рди рдлрд╛рдпрд░рдЬреЗрд▓ рдкреНрд░рдХрд▓реНрдкрд╛рддреАрд▓ рдорд╣рддреНрддреНрд╡рд╛рдЪрд╛ рдлрд░рдХ, рдЬреЛ рд╕реЗрдЯреБрдЗрдб рд▓рд╛рдБрдЪ рдореЙрдбреЗрд▓ рджреЗрдЦреАрд▓ рд╡рд╛рдкрд░рддреЛ, рддреЛ рдореНрд╣рдгрдЬреЗ рдмрдмрд▓рд░реЕрдкрдордзреНрдпреЗ рдХрдВрдЯреЗрдирд░ рдирд┐рд░реНрдорд┐рддреА рд╕реНрддрд░рд╛рдордзреНрдпреЗ рдлрдХреНрдд рдЖрд╡рд╢реНрдпрдХ рдХрд┐рдорд╛рди рдХреНрд╖рдорддрд╛ рдЖрдгрд┐ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рд╕рд╛рдареА, рдбреЗрд╕реНрдХрдЯреЙрдкрд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдлрд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╡рд┐рдирдВрддреНрдпрд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реА рд╕рд░реНрд╡ рдкреНрд░рдЧрдд рдХрд╛рд░реНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЕрд╕рддрд╛рдд. Pulseaudio рд╡рд░, рдлреНрд▓реЕрдЯрдкреЕрдХ рдмрд╛рдЬреВрд▓рд╛ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реЗ рдЖрдгрд┐ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд░реАрд╕реЗрдЯ рдХреЗрд▓реНрдпрд╛рдирдВрддрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реЗ. рджреБрд╕рд░реАрдХрдбреЗ, рдлрд╛рдпрд░рдЬреЗрд▓ рд╕рд░реНрд╡ рд╕рдВрдмрдВрдзрд┐рдд рдлрдВрдХреНрд╢рдиреНрд╕ рдПрдХрд╛ рдПрдХреНрдЭрд┐рдХреНрдпреВрдЯреЗрдмрд▓ рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдПрдХрддреНрд░рд┐рдд рдХрд░рддреЗ, рдЬреНрдпрд╛рдореБрд│реЗ рдСрдбрд┐рдЯ рдХрд░рдгреЗ рдЖрдгрд┐ рдпреЛрдЧреНрдп рд╕реНрддрд░рд╛рд╡рд░ рд╕реБрд░рдХреНрд╖рд╛ рд░рд╛рдЦрдгреЗ рдХрдареАрдг рд╣реЛрддреЗ.

рдирд╡реАрди рдкреНрд░рдХрд╛рд╢рдирд╛рдд:

  • рд╕рдБрдбрдмреЙрдХреНрд╕ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рд╕реНрд╡рддрдГрдЪреЗ рдиреЗрд╕реНрдЯреЗрдб рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдиреЗрдорд╕реНрдкреЗрд╕ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЕрдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА тАЬ--disable-usersтАЭ рдкрд░реНрдпрд╛рдп рдЬреЛрдбрд▓рд╛.
  • "--disable-users" рдкрд░реНрдпрд╛рдп рд╡рд╛рдкрд░рддрд╛рдирд╛ рд╡рд┐рджреНрдпрдорд╛рди рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЖрдпрдбреА рдЬрд╛рдЧрд╛ рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддреЗ рд╣реЗ рддрдкрд╛рд╕рдгреНрдпрд╛рд╕рд╛рдареА "-asssert-users-disabled" рдкрд░реНрдпрд╛рдп рдЬреЛрдбрд▓рд╛.
  • рдХрд░реНрдирд▓рдордзреАрд▓ CONFIG_SECCOMP рдЖрдгрд┐ CONFIG_SECCOMP_FILTER рд╕реЗрдЯрд┐рдВрдЧреНрдЬ рдЕрдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рддреНрд░реБрдЯреА рд╕рдВрджреЗрд╢рд╛рдВрдЪреА рдорд╛рд╣рд┐рддреА рд╕рд╛рдордЧреНрд░реА рд╡рд╛рдврд╡рд▓реА рдЖрд╣реЗ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛