PHP рдореЗрдВ рдХреБрдХреА рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рддреНрд░реБрдЯрд┐

рдореИрдВ COOKIE рдорд╛рди рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕реЗ рдЕрдХреНрд╕рд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рднреБрд▓рд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
2009-2011 рдХреЗ рд▓рд┐рдП рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдкрд░ рд╢реЛрдз рдХрд░рдиреЗ рдХреЗ рдореЗрд░реЗ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рдпрд╣ рддреНрд░реБрдЯрд┐ PHP рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП 87% рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд╣реБрдИред
рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕ рд╕рдВрдХреЗрддрдХ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЗрд╕ рдкрд╛рда рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

рдпрд╣ httpOnly рдзреНрд╡рдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред

рдПрдХ рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
<?php setcookie('foo','bar1'); header('Set-cookie: foo1=bar11'); ?> 


рдпрд╣ рдХреЛрдб рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ foo рдФрд░ foo1 рдирд╛рдореЛрдВ рд╕реЗ рджреЛ рдХреБрдХреА рдореВрд▓реНрдпреЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЕрдм рдореБрдЦреНрдп рдкреНрд░рд╢реНрди рдпрд╣ рд╣реИ рдХрд┐ рдХрд┐рд╕ рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдФрд░ рдХрд┐рд╕ рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде ?

рдЖрдЗрдП рд╣рдо рдореВрд▓ рд╕реНрд░реЛрдд рдХреА рдУрд░ рдореБрдбрд╝реЗрдВ - рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреА HTTP рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛:
рдЫрд╡рд┐

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд░реНрд╡рд░ рдбреЛрдореЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд╣рддрд╛ рд╣реИ, рди рд╣реА рдЭрдВрдбреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред
рдлрд┐рд░ рдкреНрд░рд╢реНрди рджреВрд╕рд░реЗ рд╡рд┐рдорд╛рди рдореЗрдВ рдЬрд╛рддрд╛ рд╣реИ - рдХреМрди рд╕рд╛ рдбреЛрдореЗрди рдФрд░ рдЭрдВрдбреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдРрд╕реЗ рд╣реЗрдбрд░ рдХреЗ рд▓рд┐рдП рдЪреБрдиреЗрдВрдЧреЗ?

Chrome (рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг 18.0.1025.168) рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдм рдХреБрдЫ рдЕрдЪреНрдЫреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдЧрд╛ рдФрд░ рдбреЛрдореЗрди рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдЕрдиреБрд░реЛрдз рдЖрдпрд╛ рдерд╛ред рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, foo.bar.com:
рдЫрд╡рд┐

рдЕрдЧрд░ рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдерд╛, рддреЛ рд╢рд╛рдпрдж рдпрд╣рд╛рдБ рдХреЛрдИ рдкрд╛рда рдирд╣реАрдВ рд╣реЛрдЧрд╛ ...

рдЖрдЗрдП рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред рдЪреВрдБрдХрд┐ рдореИрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреБрдХреА рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрдВрджрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдирд╣реАрдВ рдЬрд╛рдирддрд╛, рдЗрд╕рд▓рд┐рдП рдбреЛрдореЗрди foo.com рдХреЗ рд▓рд┐рдП рдХреБрдХреАрдЬрд╝ рдиреАрдЪреЗ рд░рдЦ рджреВрдВ рдФрд░ рдбреЛрдореЗрди bar.foo.com рд╕реЗ document.cookie рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реБрдБрдЧрд╛:
рдЫрд╡рд┐

рдпрд╣ рдмрд╣реБрдд рджреБрдЦрдж рд╣реИред рдФрд░ рджреВрд╕рд░реА рдУрд░ рдордЬреЗрджрд╛рд░ред
рд╕рд░реНрд╡рд░ рдХреА HTTP рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░
Set-cookie: foo=bar
Internet Explorer рд╕рднреА рдЙрдк рдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП foo = bar рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН * .foo.com рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЭрдВрдбреЗ рдХреЗ, рдЬреИрд╕реЗ httpOnlyред

рд╣рдорд▓рд╛рд╡рд░, рдЬрд┐рд╕рдХреА рднреВрдорд┐рдХрд╛ рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рдСрдбрд┐рдЯ рдХрд░рддреЗ рд╕рдордп рдирд┐рднрд╛рдиреА рдкрдбрд╝рддреА рд╣реИ, рд▓рдХреНрд╖реНрдп рдореЗрдЬрдмрд╛рди рдХреЗ рдХрд┐рд╕реА рднреА рдЙрдкрдбреЛрдореЗрди рдкрд░ XSS рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИ, рдЬреЛ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред

рд▓реЗрдХрд┐рди рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?
рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕12.0рдХреЗрд╡рд▓ Httpрд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб
рд╕рдлрд╛рд░реА5.1.5рдХреЗрд╡рд▓ Httpрд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб
рдУрдкреЗрд░рд╛11.62рдХреЗрд╡рд▓ Httpрд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб


рдЗрд╕рд▓рд┐рдП рдХрдВрд╕реНрдЯреНрд░рдХреНрд╢рди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
 setcookie('foo','bar1'); 

рдФрд░
 header('Set-cookie: foo1=bar11'); 

рдпрджрд┐ рдХреНрд▓рд╛рдЗрдВрдЯ рдЗрдВрдЯрд░рдиреЗрдЯ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ (8-9) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдХреБрдХреА рдХреЛ рдЗрд╕ рд╕рдм рд╕реЗ рд╕рдмрдбреЛрдореЗрди рдкрд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ ред

рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛!

Source: https://habr.com/ru/post/In143276/


All Articles