hacktricks/pentesting-web/hacking-with-cookies
2024-09-19 16:40:05 +00:00
..
cookie-bomb.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:20:41 +00:00
cookie-jar-overflow.md Translated ['generic-methodologies-and-resources/basic-forensic-methodol 2024-07-19 10:20:41 +00:00
cookie-tossing.md Translated ['pentesting-web/browser-extension-pentesting-methodology/REA 2024-07-19 16:18:57 +00:00
README.md Translated ['binary-exploitation/libc-heap/README.md', 'binary-exploitat 2024-09-19 16:40:05 +00:00

Cookies Hacking

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

рдХреБрдХреАрдЬрд╝ рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЖрддреА рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЙрдирдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреА рд╣реИрдВред рдпрд╣рд╛рдБ рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд┐рд╡рд░рдг рд╣реИ:

Expires and Max-Age

рдХреБрдХреА рдХреА рд╕рдорд╛рдкреНрддрд┐ рддрд┐рдерд┐ Expires рд╡рд┐рд╢реЗрд╖рддрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, Max-age рд╡рд┐рд╢реЗрд╖рддрд╛ рдЙрд╕ рд╕рдордп рдХреЛ рд╕реЗрдХрдВрдб рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИ рдЬрдм рддрдХ рдПрдХ рдХреБрдХреА рд╣рдЯрд╛ рдирд╣реАрдВ рджреА рдЬрд╛рддреАред Max-age рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ рдкреНрд░рдерд╛рдУрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

Domain

рдХреБрдХреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╣реЛрд╕реНрдЯ Domain рд╡рд┐рд╢реЗрд╖рддрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпрд╣ рдЙрд╕ рд╣реЛрд╕реНрдЯ рдкрд░ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдиреЗ рдХреБрдХреА рдЬрд╛рд░реА рдХреА, рдЗрд╕рдХреЗ рдЙрдкрдбреЛрдореЗрди рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬрдм Domain рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рдЙрдкрдбреЛрдореЗрди рдХреЛ рднреА рд╢рд╛рдорд┐рд▓ рдХрд░рддреА рд╣реИред рдпрд╣ Domain рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЛ рдПрдХ рдХрдо рдкреНрд░рддрд┐рдмрдВрдзрд╛рддреНрдордХ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рддрд╛ рд╣реИ, рдЬреЛ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ рдЬрд╣рд╛рдБ рдЙрдкрдбреЛрдореЗрди рдХреЗ рдмреАрдЪ рдХреБрдХреА рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Domain=mozilla.org рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдЗрд╕рдХреА рдЙрдкрдбреЛрдореЗрди рдЬреИрд╕реЗ developer.mozilla.org рдкрд░ рдХреБрдХреАрдЬрд╝ рд╕реБрд▓рдн рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред

Path

Path рд╡рд┐рд╢реЗрд╖рддрд╛ рдЙрд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ URL рдкрде рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИ рдЬреЛ рдЕрдиреБрд░реЛрдзрд┐рдд URL рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ Cookie рд╣реЗрдбрд░ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХреЗред рдпрд╣ рд╡рд┐рд╢реЗрд╖рддрд╛ / рд╡рд░реНрдг рдХреЛ рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╡рд┐рднрд╛рдЬрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рдореЗрд▓ рдЦрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИред

Ordering Rules

рдЬрдм рджреЛ рдХреБрдХреАрдЬрд╝ рдХрд╛ рдирд╛рдо рд╕рдорд╛рди рд╣реЛрддрд╛ рд╣реИ, рддреЛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдиреА рдЧрдИ рдХреБрдХреА рдЗрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИ:

  • рдЕрдиреБрд░реЛрдзрд┐рдд URL рдореЗрдВ рд╕рдмрд╕реЗ рд▓рдВрдмреЗ рдкрде рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реА рдХреБрдХреАред
  • рдпрджрд┐ рдкрде рд╕рдорд╛рди рд╣реИрдВ, рддреЛ рд╕рдмрд╕реЗ рд╣рд╛рд▓ рдореЗрдВ рд╕реЗрдЯ рдХреА рдЧрдИ рдХреБрдХреАред

SameSite

  • SameSite рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХреБрдХреАрдЬрд╝ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдбреЛрдореЗрди рд╕реЗ рдЙрддреНрдкрдиреНрди рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИрдВред рдпрд╣ рддреАрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ:
  • Strict: рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдкрд░ рдХреБрдХреА рднреЗрдЬрдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИред
  • Lax: рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╢реБрд░реВ рдХрд┐рдП рдЧрдП GET рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдХреА рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  • None: рдХрд┐рд╕реА рднреА рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдбреЛрдореЗрди рд╕реЗ рдХреБрдХреА рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдпрд╛рдж рд░рдЦреЗрдВ, рдХреБрдХреАрдЬрд╝ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп, рдЗрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рд╕рдордЭрдирд╛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗрдВред

Request Type Example Code Cookies Sent When
Link <a href="..."></a> NotSet*, Lax, None
Prerender <link rel="prerender" href=".."/> NotSet*, Lax, None
Form GET <form method="GET" action="..."> NotSet*, Lax, None
Form POST <form method="POST" action="..."> NotSet*, None
iframe <iframe src="..."></iframe> NotSet*, None
AJAX $.get("...") NotSet*, None
Image <img src="..."> NetSet*, None

Table from Invicti and slightly modified.
рдПрдХ рдХреБрдХреА рдЬрд┐рд╕рдореЗрдВ SameSite рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛрдЧреА рд╡рд╣ CSRF рд╣рдорд▓реЛрдВ рдХреЛ рдХрдо рдХрд░реЗрдЧреА рдЬрд╣рд╛рдБ рдПрдХ рд▓реЙрдЧ рдЗрди рд╕рддреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

*рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ Chrome80 (рдлрд░рд╡рд░реА/2019) рд╕реЗ рдмрд┐рдирд╛ рдХреБрдХреА рд╕реИрдорд╕рд╛рдЗрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд╛рд▓реА рдХреБрдХреА рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд▓рдХреНрд╕ рд╣реЛрдЧрд╛ (https://www.troyhunt.com/promiscuous-cookies-and-their-impending-death-via-the-samesite-policy/).
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ, рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, Chrome рдореЗрдВ SameSite рдиреАрддрд┐ рдХреЗ рдмрд┐рдирд╛ рдХреБрдХреАрдЬрд╝ рдХреЛ рдкрд╣рд▓реЗ 2 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП None рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ рдлрд┐рд░ рд╢реАрд░реНрд╖ рд╕реНрддрд░ рдХреЗ рдХреНрд░реЙрд╕-рд╕рд╛рдЗрдЯ POST рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП Lax рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

Cookies Flags

HttpOnly

рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдХреБрдХреА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП Javascript рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ: document.cookie)

Bypasses

  • рдпрджрд┐ рдкреГрд╖реНрда рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдЙрддреНрддрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреБрдХреАрдЬрд╝ рднреЗрдЬ рд░рд╣рд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ PHPinfo рдкреГрд╖реНрда рдореЗрдВ), рддреЛ XSS рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдкреГрд╖реНрда рдкрд░ рдЕрдиреБрд░реЛрдз рднреЗрдЬрдирд╛ рдФрд░ рдЙрддреНрддрд░ рд╕реЗ рдХреБрдХреАрдЬрд╝ рдЪреБрд░рд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ (рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ https://hackcommander.github.io/posts/2022/11/12/bypass-httponly-via-php-info-page/).
  • рдЗрд╕реЗ TRACE HTTP рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рдпрдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рд░реНрд╡рд░ рд╕реЗ рдЙрддреНрддрд░ рдореЗрдВ рднреЗрдЬреА рдЧрдИ рдХреБрдХреАрдЬрд╝ рдХреЛ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рдпрджрд┐ рдпрд╣ HTTP рд╡рд┐рдзрд┐ рдЙрдкрд▓рдмреНрдз рд╣реИ)ред рдЗрд╕ рддрдХрдиреАрдХ рдХреЛ Cross-Site Tracking рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ JS рд╕реЗ TRACE рдЕрдиреБрд░реЛрдз рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рди рджреЗрдХрд░ рдЗрд╕ рддрдХрдиреАрдХ рдХреЛ рдЯрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, IE6.0 SP2 рдХреЗ рд▓рд┐рдП TRACE рдХреЗ рдмрдЬрд╛рдп \r\nTRACE рднреЗрдЬрдиреЗ рдЬреИрд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдореЗрдВ рдХреБрдЫ рдмрд╛рдпрдкрд╛рд╕ рдкрд╛рдП рдЧрдП рд╣реИрдВред
  • рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреА рд╢реВрдиреНрдп/рджрд┐рди рдХреА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХрд╛ рд╢реЛрд╖рдг рдХрд░рдирд╛ рд╣реИред
  • рдПрдХ рдХреБрдХреА рдЬрд╛рд░ рдУрд╡рд░рдлреНрд▓реЛ рд╣рдорд▓реЗ рдХреЛ рдЕрдВрдЬрд╛рдо рджреЗрдХрд░ HttpOnly рдХреБрдХреАрдЬрд╝ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ:

{% content-ref url="cookie-jar-overflow.md" %} cookie-jar-overflow.md {% endcontent-ref %}

  • рдЗрди рдХреБрдХреАрдЬрд╝ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП Cookie Smuggling рд╣рдорд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

Secure

рдЕрдиреБрд░реЛрдз рдХреЗрд╡рд▓ рддрднреА HTTP рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХреБрдХреА рднреЗрдЬреЗрдЧрд╛ рдЬрдм рдЕрдиреБрд░реЛрдз рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдЪреИрдирд▓ (рдЖрдорддреМрд░ рдкрд░ HTTPS) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред

Cookies Prefixes

__Secure- рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рдХреЛ HTTPS рджреНрд╡рд╛рд░рд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдкреГрд╖реНрдареЛрдВ рдХреЗ рд╕рд╛рде secure рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

__Host- рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рдХреЗ рд▓рд┐рдП, рдХрдИ рд╢рд░реНрддреЗрдВ рдкреВрд░реА рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП:

  • рдЗрдиреНрд╣реЗрдВ secure рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдЗрдиреНрд╣реЗрдВ HTTPS рджреНрд╡рд╛рд░рд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рдкреГрд╖реНрда рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдЗрдиреНрд╣реЗрдВ рдПрдХ рдбреЛрдореЗрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдбреЛрдореЗрди рдореЗрдВ рдЙрдирдХреЗ рд╕рдВрдЪрд░рдг рдХреЛ рд░реЛрдХрд╛ рдЬрд╛ рд╕рдХреЗред
  • рдЗрди рдХреБрдХреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ / рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ __Host- рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рдХреЛ рд╕реБрдкрд░рдбреЛрдореЗрди рдпрд╛ рдЙрдкрдбреЛрдореЗрди рдореЗрдВ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдкреНрд░рддрд┐рдмрдВрдз рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреБрдХреАрдЬрд╝ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреБрдХреАрдЬрд╝ рдХреЗ рд▓рд┐рдП __Host- рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЕрд▓рдЧрд╛рд╡ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫреА рдкреНрд░рдерд╛ рдорд╛рдиреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

Overwriting cookies

рддреЛ, __Host- рдЙрдкрд╕рд░реНрдЧ рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рдХреА рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЙрдкрдбреЛрдореЗрди рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдЯ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХрд╛ рдЬрд╛ рд╕рдХреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП Cookie Tossing attacks рдХреЛ рд░реЛрдХрдирд╛ред рд╡рд╛рд░реНрддрд╛ Cookie Crumbles: Unveiling Web Session Integrity Vulnerabilities (paper) рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЙрдкрдбреЛрдореЗрди рд╕реЗ __HOST- рдЙрдкрд╕рд░реНрдЧ рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛, рдкрд╛рд░реНрд╕рд░ рдХреЛ рдзреЛрдЦрд╛ рджреЗрдХрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "=" рдХреЛ рд╢реБрд░реБрдЖрдд рдпрд╛ рдЕрдВрдд рдореЗрдВ рдЬреЛрдбрд╝рдХрд░...:

рдпрд╛ PHP рдореЗрдВ рдХреБрдХреА рдирд╛рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЕрдиреНрдп рд╡рд░реНрдг рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рдерд╛ рдЬреЛ рдЕрдВрдбрд░рд╕реНрдХреЛрд░ рд╡рд░реНрдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рдмрджрд▓ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдЬрд┐рд╕рд╕реЗ __HOST- рдХреБрдХреАрдЬрд╝ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ:

Cookies Attacks

рдпрджрд┐ рдПрдХ рдХрд╕реНрдЯрдо рдХреБрдХреА рдореЗрдВ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ рд╣реИ рддреЛ рдЗрд╕реЗ рдЬрд╛рдВрдЪреЗрдВ (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрджрд┐ рдЖрдк рдПрдХ CTF рдЦреЗрд▓ рд░рд╣реЗ рд╣реИрдВ), рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрдордЬреЛрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

Decoding and Manipulating Cookies

рдХреБрдХреАрдЬрд╝ рдореЗрдВ рдПрдореНрдмреЗрдбреЗрдб рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдбреЗрдЯрд╛ рдХреЛ рд╣рдореЗрд╢рд╛ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред Base64 рдпрд╛ рд╕рдорд╛рди рдкреНрд░рд╛рд░реВрдкреЛрдВ рдореЗрдВ рдПрдиреНрдХреЛрдбреЗрдб рдХреБрдХреАрдЬрд╝ рдХреЛ рдЕрдХреНрд╕рд░ рдбрд┐рдХреЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрдордЬреЛрд░реА рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдХреЛ рдХреБрдХреА рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдирдХрд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЙрдирдХреЗ рд╕рдВрд╢реЛрдзрд┐рдд рдбреЗрдЯрд╛ рдХреЛ рдХреБрдХреА рдореЗрдВ рд╡рд╛рдкрд╕ рдПрдиреНрдХреЛрдб рдХрд░рдХреЗред

Session Hijacking

рдпрд╣ рд╣рдорд▓рд╛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдХреБрдХреА рдЪреБрд░рд╛рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рддрд╛рдХрд┐ рдЙрдирдХреЗ рдЦрд╛рддреЗ рдореЗрдВ рдЕрдирдзрд┐рдХреГрдд рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХреЗред рдЪреБрд░рд╛рдИ рдЧрдИ рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рд╡реИрдз рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдирдХрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

Session Fixation

рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ, рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдПрдХ рдкреАрдбрд╝рд┐рдд рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреЛрдЦрд╛ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдЧрд┐рди рдкрд░ рдПрдХ рдирдИ рдХреБрдХреА рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╣рдорд▓рд╛рд╡рд░, рдЬрд┐рд╕рдХреЗ рдкрд╛рд╕ рдореВрд▓ рдХреБрдХреА рд╣реИ, рдкреАрдбрд╝рд┐рдд рдХреА рдирдХрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рддрдХрдиреАрдХ рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ рдХрд┐ рдкреАрдбрд╝рд┐рдд рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдХреБрдХреА рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рдЗрди рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдкрдиреЗ рдПрдХ XSS рдПрдХ рдЙрдкрдбреЛрдореЗрди рдореЗрдВ рдкрд╛рдпрд╛ рд╣реИ рдпрд╛ рдЖрдк рдПрдХ рдЙрдкрдбреЛрдореЗрди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрдврд╝реЗрдВ:

{% content-ref url="cookie-tossing.md" %} cookie-tossing.md {% endcontent-ref %}

Session Donation

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

рдпрджрд┐ рдЖрдкрдиреЗ рдПрдХ XSS рдПрдХ рдЙрдкрдбреЛрдореЗрди рдореЗрдВ рдкрд╛рдпрд╛ рд╣реИ рдпрд╛ рдЖрдк рдПрдХ рдЙрдкрдбреЛрдореЗрди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкрдврд╝реЗрдВ:

{% content-ref url="cookie-tossing.md" %} cookie-tossing.md {% endcontent-ref %}

JWT Cookies

JWT рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рджреЛрд╖реЛрдВ рдХреЛ рд╕рдордЭрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреГрд╖реНрда рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрд▓реЗ рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдХреБрдХреАрдЬрд╝ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ JSON рд╡реЗрдм рдЯреЛрдХрди (JWT) рднреА рдХрдордЬреЛрд░рд┐рдпрд╛рдБ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрднрд╛рд╡рд┐рдд рджреЛрд╖реЛрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╢реЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧрд╣рди рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, JWT рд╣реИрдХрд┐рдВрдЧ рдкрд░ рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИред

Cross-Site Request Forgery (CSRF)

рдпрд╣ рд╣рдорд▓рд╛ рдПрдХ рд▓реЙрдЧ рдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдХ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рдЕрд╡рд╛рдВрдЫрд┐рдд рдХреНрд░рд┐рдпрд╛рдПрдБ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреНрд░рдорд╛рдгрд┐рдд рд╣реИрдВред рд╣рдорд▓рд╛рд╡рд░ рдЙрди рдХреБрдХреАрдЬрд╝ рдХрд╛ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХрдордЬреЛрд░ рд╕рд╛рдЗрдЯ рдкрд░ рд╣рд░ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИрдВред

Empty Cookies

(рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдореВрд▓ рд╢реЛрдз рджреЗрдЦреЗрдВ) рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдмрд┐рдирд╛ рдирд╛рдо рд╡рд╛рд▓реА рдХреБрдХреАрдЬрд╝ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ JavaScript рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

document.cookie = "a=v1"
document.cookie = "=test value;" // Setting an empty named cookie
document.cookie = "b=v2"

рд╕рдВрджреЗрд╢ рдореЗрдВ рднреЗрдЬреЗ рдЧрдП рдХреБрдХреА рд╣реЗрдбрд░ рдХрд╛ рдкрд░рд┐рдгрд╛рдо a=v1; test value; b=v2; рд╣реИред рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдПрдХ рдЦрд╛рд▓реА рдирд╛рдо рдХреА рдХреБрдХреА рд╕реЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рдХреБрдХреАрдЬрд╝ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЕрдиреНрдп рдХреБрдХреАрдЬрд╝ рдХреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдорд╛рди рд╕реЗрдЯ рдХрд░рдХреЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ:

function setCookie(name, value) {
document.cookie = `${name}=${value}`;
}

setCookie("", "a=b"); // Setting the empty cookie modifies another cookie's value

рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдПрдХ рдХреБрдХреА рд╣реЗрдбрд░ рднреЗрдЬрдиреЗ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ a рдирд╛рдордХ рдХреБрдХреА рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ b рдорд╛рди рдХреЗ рд╕рд╛рде рд╡реНрдпрд╛рдЦреНрдпрд╛рдпрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Chrome рдмрдЧ: рдпреВрдирд┐рдХреЛрдб рд╕рд░реЛрдЧреЗрдЯ рдХреЛрдбрдкреЙрдЗрдВрдЯ рд╕рдорд╕реНрдпрд╛

Chrome рдореЗрдВ, рдпрджрд┐ рдПрдХ рдпреВрдирд┐рдХреЛрдб рд╕рд░реЛрдЧреЗрдЯ рдХреЛрдбрдкреЙрдЗрдВрдЯ рд╕реЗрдЯ рдХреБрдХреА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рддреЛ document.cookie рднреНрд░рд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрддреА рд╣реИ:

document.cookie = "\ud800=meep";

рдпрд╣ document.cookie рдХреЛ рдПрдХ рдЦрд╛рд▓реА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИ, рдЬреЛ рд╕реНрдерд╛рдпреА рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред

рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдХреБрдХреА рд╕реНрдордЧрд▓рд┐рдВрдЧ

(рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдореВрд▓ рд╢реЛрдз рджреЗрдЦреЗрдВ) рдХрдИ рд╡реЗрдм рд╕рд░реНрд╡рд░, рдЬрд┐рдирдореЗрдВ Java (Jetty, TomCat, Undertow) рдФрд░ Python (Zope, cherrypy, web.py, aiohttp, bottle, webob) рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдкреБрд░рд╛рдиреЗ RFC2965 рд╕рдорд░реНрдерди рдХреЗ рдХрд╛рд░рдг рдХреБрдХреА рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓рддреЗ рд╣реИрдВред рд╡реЗ рдПрдХ рдбрдмрд▓-рдХреНрд╡реЛрдЯреЗрдб рдХреБрдХреА рдорд╛рди рдХреЛ рдПрдХрд▓ рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдкрдврд╝рддреЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА рдЗрд╕рдореЗрдВ рд╕реЗрдореАрдХреЛрд▓рди рд╢рд╛рдорд┐рд▓ рд╣реЛрдВ, рдЬреЛ рд╕рд╛рдорд╛рдиреНрдпрддрдГ рдХреБрдВрдЬреА-рдореВрд▓реНрдп рдЬреЛрдбрд╝реЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

RENDER_TEXT="hello world; JSESSIONID=13371337; ASDF=end";

рдХреБрдХреА рдЗрдВрдЬреЗрдХреНрд╢рди рдХрдордЬреЛрд░рд┐рдпрд╛рдБ

(рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдореВрд▓ рд╢реЛрдз рджреЗрдЦреЗрдВ) рд╕рд░реНрд╡рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХреБрдХреАрдЬрд╝ рдХрд╛ рдЧрд▓рдд рдкрд╛рд░реНрд╕рд┐рдВрдЧ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ Undertow, Zope, рдФрд░ рдЬреЛ Python рдХреЗ http.cookie.SimpleCookie рдФрд░ http.cookie.BaseCookie рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдХреБрдХреА рдЗрдВрдЬреЗрдХреНрд╢рди рд╣рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд╡рд╕рд░ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред рдпреЗ рд╕рд░реНрд╡рд░ рдирдП рдХреБрдХреАрдЬрд╝ рдХреА рд╢реБрд░реБрдЖрдд рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕реАрдорд┐рдд рдирд╣реАрдВ рдХрд░рддреЗ, рдЬрд┐рд╕рд╕реЗ рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдХреЛ рдХреБрдХреАрдЬрд╝ рдХреЛ рд╕реНрдкреВрдл рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ:

  • Undertow рдПрдХ рдЙрджреНрдзреГрдд рдорд╛рди рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдПрдХ рдирдП рдХреБрдХреА рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдмрд┐рдирд╛ рд╕реЗрдореАрдХреЛрд▓рди рдХреЗред
  • Zope рдЕрдЧрд▓реА рдХреБрдХреА рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рдХреА рддрд▓рд╛рд╢ рдХрд░рддрд╛ рд╣реИред
  • Python рдХреА рдХреБрдХреА рдХрдХреНрд╖рд╛рдПрдБ рдПрдХ рд╕реНрдкреЗрд╕ рдХреИрд░реЗрдХреНрдЯрд░ рдкрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рддреА рд╣реИрдВред

рдпрд╣ рдХрдордЬреЛрд░реА рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрди рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЦрддрд░рдирд╛рдХ рд╣реИ рдЬреЛ рдХреБрдХреА-рдЖрдзрд╛рд░рд┐рдд CSRF рд╕реБрд░рдХреНрд╖рд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдорд▓рд╛рд╡рд░реЛрдВ рдХреЛ рд╕реНрдкреВрдл рдХрд┐рдП рдЧрдП CSRF-рдЯреЛрдХрди рдХреБрдХреАрдЬрд╝ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдорд╕реНрдпрд╛ Python рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреБрдХреА рдирд╛рдореЛрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рд╕реЗ рдмрдврд╝ рдЬрд╛рддреА рд╣реИ, рдЬрд╣рд╛рдВ рдЕрдВрддрд┐рдо рдШрдЯрдирд╛ рдкрд╣рд▓реЗ рд╡рд╛рд▓реЗ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рджреЗрддреА рд╣реИред рдпрд╣ рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрджрд░реНрднреЛрдВ рдореЗрдВ __Secure- рдФрд░ __Host- рдХреБрдХреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдЪрд┐рдВрддрд╛рдПрдБ рднреА рдЙрдард╛рддрд╛ рд╣реИ рдФрд░ рдЬрдм рдХреБрдХреАрдЬрд╝ рдХреЛ рдмреИрдХ-рдПрдВрдб рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд╕реНрдкреВрдлрд┐рдВрдЧ рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдмрд╛рдпрдкрд╛рд╕ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИред

рдЕрддрд┐рд░рд┐рдХреНрдд рдХрдордЬреЛрд░ рдХреБрдХреАрдЬрд╝ рдЬрд╛рдВрдЪ

рдмреБрдирд┐рдпрд╛рджреА рдЬрд╛рдВрдЪ

  • рдХреБрдХреА рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рд▓реЙрдЧрд┐рди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдПрдХ рдЬреИрд╕реА рд╣реЛрддреА рд╣реИред
  • рд▓реЙрдЧ рдЖрдЙрдЯ рдХрд░реЗрдВ рдФрд░ рдЙрд╕реА рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
  • рдПрдХ рд╣реА рдЦрд╛рддреЗ рдореЗрдВ 2 рдЙрдкрдХрд░рдгреЛрдВ (рдпрд╛ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ) рдХреЗ рд╕рд╛рде рдЙрд╕реА рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдЧ рдЗрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
  • рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдХреА рдореЗрдВ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
  • рд▓рдЧрднрдЧ рд╕рдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХрдИ рдЦрд╛рддреЗ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рд╕рдорд╛рдирддрд╛рдПрдБ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
  • рдпрджрд┐ "рдореБрдЭреЗ рдпрд╛рдж рд░рдЦреЗрдВ" рд╡рд┐рдХрд▓реНрдк рдореМрдЬреВрдж рд╣реИ, рддреЛ рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдХрдордЬреЛрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╣рдореЗрд╢рд╛ рдореБрдЭреЗ рдпрд╛рдж рд░рдЦреЗрдВ рдХреА рдХреБрдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдХреБрдХреА рдХреЗред
  • рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдкрд┐рдЫрд▓реЗ рдХреБрдХреА рдХрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓ рджреЗрдВред

рдЙрдиреНрдирдд рдХреБрдХреА рд╣рдорд▓реЗ

рдпрджрд┐ рдХреБрдХреА рд▓реЙрдЧ рдЗрди рдХрд░рддреЗ рд╕рдордп рд╕рдорд╛рди (рдпрд╛ рд▓рдЧрднрдЧ рд╕рдорд╛рди) рд░рд╣рддреА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╢рд╛рдпрдж рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдХреА рдЖрдкрдХреЗ рдЦрд╛рддреЗ рдХреЗ рдХрд┐рд╕реА рдХреНрд╖реЗрддреНрд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ (рд╕рдВрднрд╡рддрдГ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо)ред рдлрд┐рд░ рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдмрд╣реБрдд рд╕рдорд╛рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХрдИ рдЦрд╛рддреЗ рдмрдирд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреИрд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
  • рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЛ рдмреНрд░реВрдЯрдлреЛрд░реНрд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдпрджрд┐ рдХреБрдХреА рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдзрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдЖрдк рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо "Bmin" рдХреЗ рд╕рд╛рде рдПрдХ рдЦрд╛рддрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреА рдХреБрдХреА рдХреЗ рд╣рд░ рдПрдХ рдмрд┐рдЯ рдХреЛ рдмреНрд░реВрдЯрдлреЛрд░реНрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдЬреЛ рдХреБрдХреА рдЖрдЬрд╝рдорд╛рдПрдВрдЧреЗ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ "admin" рдХреА рд╣реЛрдЧреАред
  • рдкреИрдбрд┐рдВрдЧ рдУрд░рдХрд▓ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ (рдЖрдк рдХреБрдХреА рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рдкреИрдбрдмрд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдкреИрдбрд┐рдВрдЧ рдУрд░рдХрд▓ - рдкреИрдбрдмрд╕реНрдЯрд░ рдЙрджрд╛рд╣рд░рдг

padbuster <URL/path/when/successfully/login/with/cookie> <COOKIE> <PAD[8-16]>
# When cookies and regular Base64
padbuster http://web.com/index.php u7bvLewln6PJPSAbMb5pFfnCHSEd6olf 8 -cookies auth=u7bvLewln6PJPSAbMb5pFfnCHSEd6olf

# If Base64 urlsafe or hex-lowercase or hex-uppercase --encoding parameter is needed, for example:
padBuster http://web.com/home.jsp?UID=7B216A634951170FF851D6CC68FC9537858795A28ED4AAC6
7B216A634951170FF851D6CC68FC9537858795A28ED4AAC6 8 -encoding 2

Padbuster рдХрдИ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдЧрд╛ рдФрд░ рдЖрдкрд╕реЗ рдкреВрдЫреЗрдЧрд╛ рдХрд┐ рдХреМрди рд╕реА рд╕реНрдерд┐рддрд┐ рддреНрд░реБрдЯрд┐ рд╕реНрдерд┐рддрд┐ рд╣реИ (рдЬреЛ рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ)ред

рдлрд┐рд░ рдпрд╣ рдХреБрдХреА рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдЧрд╛ (рдЗрд╕рдореЗрдВ рдХрдИ рдорд┐рдирдЯ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ)

рдпрджрд┐ рд╣рдорд▓рд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдЕрдкрдиреА рдкрд╕рдВрдж рдХреА рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк encrypt user=administrator рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

padbuster http://web.com/index.php 1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lBP+zAD0D0w== 8 -cookies thecookie=1dMjA5hfXh0jenxJQ0iW6QXKkzAGIWsiDAKV3UwJPT2lBP+zAD0D0w== -plaintext user=administrator

рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдЖрдкрдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреБрдХреА рджреЗрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реНрдЯреНрд░рд┐рдВрдЧ user=administrator рд╢рд╛рдорд┐рд▓ рд╣реИред

CBC-MAC

рд╢рд╛рдпрдж рдПрдХ рдХреБрдХреА рдореЗрдВ рдХреБрдЫ рдорд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ CBC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдлрд┐рд░, рдорд╛рди рдХреА рдЕрдЦрдВрдбрддрд╛ рд╡рд╣реА рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╣реИ рдЬреЛ рдЙрд╕реА рдорд╛рди рдХреЗ рд╕рд╛рде CBC рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЪреВрдВрдХрд┐ IV рдХреЗ рд░реВрдк рдореЗрдВ рд╢реВрдиреНрдп рд╡реЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИ, рдпрд╣ рдкреНрд░рдХрд╛рд░ рдХреА рдЕрдЦрдВрдбрддрд╛ рдЬрд╛рдВрдЪ рдХрдордЬреЛрд░ рд╣реЛ рд╕рдХрддреА рд╣реИред

рд╣рдорд▓рд╛

  1. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо administ рдХрд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ = t
  2. рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо rator\x00\x00\x00 XOR t рдХрд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ = t'
  3. рдХреБрдХреА рдореЗрдВ рдорд╛рди рд╕реЗрдЯ рдХрд░реЗрдВ administrator+t' (t' рдПрдХ рдорд╛рдиреНрдп рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╣реЛрдЧрд╛ (rator\x00\x00\x00 XOR t) XOR t = rator\x00\x00\x00

ECB

рдпрджрд┐ рдХреБрдХреА рдХреЛ ECB рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рдпрд╣ рдХрдордЬреЛрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдЬрдм рдЖрдк рд▓реЙрдЧ рдЗрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЬреЛ рдХреБрдХреА рдорд┐рд▓рддреА рд╣реИ рд╡рд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рд╕рдорд╛рди рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдХреИрд╕реЗ рдкрддрд╛ рдХрд░реЗрдВ рдФрд░ рд╣рдорд▓рд╛ рдХрд░реЗрдВ:

рд▓рдЧрднрдЧ рд╕рдорд╛рди рдбреЗрдЯрд╛ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо, рдкрд╛рд╕рд╡рд░реНрдб, рдИрдореЗрд▓, рдЖрджрд┐) рдХреЗ рд╕рд╛рде 2 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдВ рдФрд░ рджрд┐рдП рдЧрдП рдХреБрдХреА рдХреЗ рдЕрдВрджрд░ рдХреБрдЫ рдкреИрдЯрд░реНрди рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" рдирд╛рдо рдХрд╛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдХреА рдореЗрдВ рдХреЛрдИ рдкреИрдЯрд░реНрди рд╣реИ (рдЪреВрдВрдХрд┐ ECB рд╣рд░ рдмреНрд▓реЙрдХ рдХреЛ рдПрдХ рд╣реА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рддреЛ рд╕рдорд╛рди рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдмрд╛рдЗрдЯреНрд╕ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ)ред

рдПрдХ рдкреИрдЯрд░реНрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдПрдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдмреНрд▓реЙрдХ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде)ред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдЬрд╛рдирдХрд░ рдХрд┐ "a" рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдХреИрд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЖрдк рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ: "a"*(рдмреНрд▓реЙрдХ рдХрд╛ рдЖрдХрд╛рд░)+"admin"ред рдлрд┐рд░, рдЖрдк рдХреБрдХреА рд╕реЗ "a" рдХреЗ рдПрдХ рдмреНрд▓реЙрдХ рдХреЗ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдкреИрдЯрд░реНрди рдХреЛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо "admin" рдХреА рдХреБрдХреА рд╣реЛрдЧреАред

рд╕рдВрджрд░реНрдн

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}