PHP рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓, рд╕реНрдирдлрд╝рд▓реБрдкреЗрдЧрд╕ 0.5.1 рдХрд╛ рд╡рд┐рдореЛрдЪрди

рдПрдХ рд╕рд╛рд▓ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рдж рдкреНрд░рдХрд╛рд╢рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдореЛрдЪрди рд╕реНрдирдлрд╝рд▓реБрдкреИрдЧрд╕ 0.5.1, рдЬреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП PHP7 рджреБрднрд╛рд╖рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЙрдбреНрдпреВрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ PHP рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдЖрдкрдХреЛ рдмрдирд╛рдиреЗ рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЖрднрд╛рд╕реА рдкреИрдЪ рдХрдордЬреЛрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦрддреНрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдЬрд╣рд╛рдВ рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдХреА рдУрд╡рд░рд╣реЗрдб рд▓рд╛рдЧрдд рдиреНрдпреВрдирддрдо рд╣реЛрдиреЗ рдХрд╛ рдЕрдиреБрдорд╛рди рд╣реИред рдореЙрдбреНрдпреВрд▓ рд╕реА рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдПрдХ рд╕рд╛рдЭрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ (php.ini рдореЗрдВ "рдПрдХреНрд╕рдЯреЗрдВрд╢рди = рд╕реНрдирдлрд▓рдЕрдкрд╛рдЧрд╕.рд╕реЛ") рдФрд░ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд рдПрд▓рдЬреАрдкреАрдПрд▓ 3.0 рдХреЗ рддрд╣рдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрддред

рд╕реНрдирдлрд╝рд▓реБрдкрд╛рдЧрд╕ рдПрдХ рдирд┐рдпрдо рдкреНрд░рдгрд╛рд▓реА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ, рдпрд╛ рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдирд┐рдпрдо тАЬsp.disable_function.function(тАЬsystemтАЭ).param(тАЬcommandтАЭ).value_r(тАЬ[$|;&`\\n]тАЭ).drop();тАЭ рдЖрдкрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрджрд▓реЗ рдмрд┐рдирд╛ рд╕рд┐рд╕реНрдЯрдо() рдлрд╝рдВрдХреНрд╢рди рддрд░реНрдХреЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд╡рд░реНрдгреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореБрджреНрджреЛрдВ, рдЬреИрд╕реЗ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рд╡рд░реНрдЧреЛрдВ рдХреЛ рдмреНрд▓реЙрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддрд░реАрдХреЗ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред ╤Б╨▓╤П╨╖╨░╨╜╨╜╤Л╨╡ рдбреЗрдЯрд╛ рдХреНрд░рдорд╛рдВрдХрди рдХреЗ рд╕рд╛рде, рдЕрд╕реБрд░рдХреНрд╖рд┐рдд PHP рдореЗрд▓() рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ, XSS рд╣рдорд▓реЛрдВ рдХреЗ рджреМрд░рд╛рди рдХреБрдХреА рд╕рд╛рдордЧреНрд░реА рдХрд╛ рд░рд┐рд╕рд╛рд╡, рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓реЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рд╕рдорд╕реНрдпрд╛рдПрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рд╛рд░реВрдк рдореЗрдВ) рдЪрд░рдг), рдЦрд░рд╛рдм рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реА рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдкреАрдврд╝реА рдФрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд▓рдд XML рдирд┐рд░реНрдорд╛рдг.

рд╕реНрдирдлрд╝рд▓реБрдкрд╛рдЧрд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП PHP рд╕реБрд░рдХреНрд╖рд╛ рд╕рдВрд╡рд░реНрджреНрдзрди рдореЛрдб:

  • рдХреБрдХреАрдЬрд╝ рдХреЗ рд▓рд┐рдП "рд╕реБрд░рдХреНрд╖рд┐рдд" рдФрд░ "рд╕реЗрдорд╕рд╛рдЗрдЯ" (рд╕реАрдПрд╕рдЖрд░рдПрдл рд╕реБрд░рдХреНрд╖рд╛) рдЭрдВрдбреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреБрдХреА;
  • рд╣рдорд▓реЛрдВ рдХреЗ рдирд┐рд╢рд╛рди рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рдордЭреМрддреЗ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХрд╛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реЗрдЯ;
  • "рдХреА рдЬрдмрд░рди рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдХреНрд░рд┐рдпрддрд╛рдХрдареЛрд░" (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рди рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рддрд╛ рд╣реИ) рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рд░реБрджреНрдз рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╣реЗрд░рдлреЗрд░;
  • рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрд╡рд░реЛрдзрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд░реИрдкрд░ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдирдХреА рд╕реНрдкрд╖реНрдЯ рд╢реНрд╡реЗрддрд╕реВрдЪреА рдХреЗ рд╕рд╛рде "рдлрд╝рд╛рд░: //" рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рдирд╛);
  • рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз;
  • eval рдХреЗ рд▓рд┐рдП рд╢реНрд╡реЗрдд-рд╢реНрдпрд╛рдо рд╕реВрдЪрд┐рдпрд╛рдБ;
  • рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЯреАрдПрд▓рдПрд╕ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рдВрдЪ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ
    рдХрд░реНрд▓;
  • рдХреНрд░рдордмрджреНрдз рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдЪрдПрдордПрд╕реА рдЬреЛрдбрд╝рдирд╛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдбрд┐рд╕реЗрд░рд┐рдПрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдореВрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ;
  • рд▓реЙрдЧрд┐рдВрдЧ рдореЛрдб рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВ;
  • XML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рд▓рд┐рдВрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ libxml рдореЗрдВ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд▓реЛрдбрд┐рдВрдЧ рдХреЛ рдЕрд╡рд░реБрджреНрдз рдХрд░рдирд╛;
  • рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдФрд░ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рд╣реИрдВрдбрд▓рд░ (рдЕрдкрд▓реЛрдб_рд╡реИрд▓рд┐рдбреЗрд╢рди) рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛;

рдХреЗ рдмреАрдЪ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдирдИ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ: PHP 7.4 рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд░реНрдерди рдФрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ PHP 8 рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рд╕рдВрдЧрддрддрд╛ рдХреЛ syslog рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдШрдЯрдирд╛рдУрдВ рдХреЛ рд▓реЙрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝реА рдЧрдИ рд╣реИ (sp.log_media рдирд┐рд░реНрджреЗрд╢ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╣реИ, рдЬреЛ php рдпрд╛ syslog рдорд╛рди рд▓реЗ рд╕рдХрддрд╛ рд╣реИ)ред рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╡рд┐рд░реБрджреНрдз рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкрд╣рдЪрд╛рдиреА рдЧрдИ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдФрд░ рдЖрдХреНрд░рдордг рддрдХрдиреАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдирдП рдирд┐рдпрдореЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯ рдХреЛ рдЕрджреНрдпрддрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред MacOS рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд░реНрдерди рдФрд░ GitLab рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд┐рд░рдВрддрд░ рдПрдХреАрдХрд░рдг рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЙрдкрдпреЛрдЧред

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ