SOME - Same Origin Method Execution

Support HackTricks

Same Origin Method Execution

рдРрд╕реЗ рдЕрд╡рд╕рд░ рд╣реЛрдВрдЧреЗ рдЬрд╣рд╛рдБ рдЖрдк рдПрдХ рдкреГрд╖реНрда рдореЗрдВ рдХреБрдЫ рд╕реАрдорд┐рдд рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрд╣рд╛рдБ рдЖрдк рдПрдХ рдХреЙрд▓рдмреИрдХ рдорд╛рди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдЧрд╛ред

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

рдРрд╕реЗ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ, рдпрд╣ рд╣рдорд▓рд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рд▓рдХреНрд╖реНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рд╣реА рдбреЛрдореЗрди рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдкреГрд╖реНрда рд╕реЗ DOM рдХреЗ рдЕрдВрджрд░ рд╕реАрдорд┐рдд JS рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ рдЬрд┐рд╕рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рджрд┐рд▓рдЪрд╕реНрдк рдХреНрд░рд┐рдпрд╛рдПрдБ рд╣реИрдВред

рдмреБрдирд┐рдпрд╛рджреА рд░реВрдк рд╕реЗ, рд╣рдорд▓реЗ рдХрд╛ рдкреНрд░рд╡рд╛рд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:

  • рдПрдХ рдХреЙрд▓рдмреИрдХ рдЦреЛрдЬреЗрдВ рдЬрд┐рд╕реЗ рдЖрдк рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ [\w\._] рддрдХ рд╕реАрдорд┐рдд)ред

  • рдпрджрд┐ рдпрд╣ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЖрдк рдХреЛрдИ рднреА JS рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп XSS рдХреЗ рд░реВрдк рдореЗрдВ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  • рд╢рд┐рдХрд╛рд░ рдХреЛ рдПрдХ рдкреГрд╖реНрда рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░реЗрдВ рдЬреЛ рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реИред

  • рдкреГрд╖реНрда рд╕реНрд╡рдпрдВ рдПрдХ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдВрдбреЛ рдореЗрдВ рдЦреБрд▓реЗрдЧрд╛ (рдирдИ рд╡рд┐рдВрдбреЛ рдореЗрдВ opener рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдПрдХ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░реЗрдЧрд╛)ред

  • рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреГрд╖реНрда рдЙрд╕ рдкреГрд╖реНрда рдХреЛ рд▓реЛрдб рдХрд░реЗрдЧрд╛ рдЬрд╣рд╛рдБ рджрд┐рд▓рдЪрд╕реНрдк DOM рд╕реНрдерд┐рдд рд╣реИред

  • рджреВрд╕рд░рд╛ рдкреГрд╖реНрда рдХреЙрд▓рдмреИрдХ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХрдордЬреЛрд░ рдкреГрд╖реНрда рдХреЛ рд▓реЛрдб рдХрд░реЗрдЧрд╛ рдФрд░ opener рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреГрд╖реНрда рдореЗрдВ рдХреБрдЫ рдХреНрд░рд┐рдпрд╛ рддрдХ рдкрд╣реБрдБрдЪ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдЧрд╛ (рдЬреЛ рдЕрдм рджрд┐рд▓рдЪрд╕реНрдк DOM рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИ)ред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рднрд▓реЗ рд╣реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреГрд╖реНрда рджреВрд╕рд░реЗ рдкреГрд╖реНрда рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж рдПрдХ рдирдП URL рддрдХ рдкрд╣реБрдБрдЪрддрд╛ рд╣реИ, рджреВрд╕рд░реЗ рдкреГрд╖реНрда рдХрд╛ opener рдСрдмреНрдЬреЗрдХреНрдЯ рдирдП DOM рдореЗрдВ рдкрд╣рд▓реЗ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рдПрдХ рдорд╛рдиреНрдп рд╕рдВрджрд░реНрдн рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рджреВрд╕рд░реЗ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдУрдкрдирд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛрдиреЛрдВ рдкреГрд╖реНрдареЛрдВ рдХрд╛ рдПрдХ рд╣реА рдореВрд▓ рдореЗрдВ рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐, рдЗрд╕ рднреЗрджреНрдпрддрд╛ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХрд╛ XSS рдПрдХ рд╣реА рдореВрд▓ рдореЗрдВ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

Exploitation

  • рдЖрдк рдЗрд╕ рдлреЙрд░реНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рднреЗрджреНрдпрддрд╛ рдХрд╛ рд╢реЛрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ PoC рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: https://www.someattack.com/Playground/SOMEGenerator

  • рдПрдХ рдХреНрд▓рд┐рдХ рдХреЗ рд╕рд╛рде HTML рддрддреНрд╡ рдХреЗ рд▓рд┐рдП DOM рдкрде рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдЗрд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: https://www.someattack.com/Playground/targeting_tool

Example

  • рдЖрдк рдПрдХ рдХрдордЬреЛрд░ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдБ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ: https://www.someattack.com/Playground/

  • рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╕рд░реНрд╡рд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ HTML рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИ: <script>opener.{callbacl_content}</script>ред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЖрдкрдХреЛ opener рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

  • рдЗрд╕ CTF рд▓реЗрдЦрди рдХреЛ рднреА рджреЗрдЦреЗрдВ: https://ctftime.org/writeup/36068

References

Support HackTricks

Last updated