рдкреЗрдкрд░рдХреНрд▓рд┐рдк (XSS / RCE) рдореЗрдВ рднреЗрджреНрдпрддрд╛

рдХрд╛рдЧрдЬрд╝ рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ / рдЕрд╡рддрд╛рд░реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЗрдкрд░рдХреНрд▓рд┐рдк рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдЬрд╛рдо рд╣реИред рдЗрд╕рдореЗрдВ рдПрдХ рдХрд╛рдлреА рд╕рд░рд▓ рддрд╛рд░реНрдХрд┐рдХ рдмрдЧ рдкрд╛рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рд╕рд░реНрд╡рд░ рдХреЛ рдПрдХ рдордирдорд╛рдирд╛ рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдХрд┐ рдПрдХ рдордирдорд╛рдирд╛ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╣реИ: file.html, file.php, file.cgi рдФрд░ рдЗрд╕реА рддрд░рд╣ред

рдкреЗрдкрд░рдХреНрд▓рд┐рдк рдореЗрдВ "рдореИрдЬрд┐рдХ" (рд░реЗрд▓ рдкрд░ рд╕рдм рдХреБрдЫ рдХреА рддрд░рд╣) рдПрдбреЗрдкреНрдЯрд░ рд╕рд┐рд╕реНрдЯрдо рд╣реИред рдпрджрд┐ рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рдПрдбреЗрдкреНрдЯрд░ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдЧрд░ рд▓рд╛рдЗрди рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреИрдЯрд░реНрди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ URL http: // * рдЬреИрд╕реА рд▓рд╛рдЗрди рд╣реИ, рддреЛ рдЗрд╕ URL рдкрд░ рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

io_adapters / uri_adapter.rb рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
@original_filename = @target.path.split("/").last @original_filename ||= "index.html" self.original_filename = @original_filename.strip @content_type = @content.content_type if @content.respond_to?(:content_type) @content_type ||= "text/html" 

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рд╛рдордЧреНрд░реА рд╕рд░реНрд╡рд░ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╣реЗрдбрд░ рд╕реЗ рд▓реА рдЧрдИ рд╣реИ, рдЬрд┐рд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ URL рдмрдирд╛рдпрд╛ рдЬреЛ рдПрдХ рдЪрд┐рддреНрд░ рджреЗрддрд╛ рд╣реИ www.sakurity.com/img.jpg.htm рд▓реЗрдХрд┐рди рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ .htm рд╣реЛрдирд╛ред

рдкреЗрдкрд░рдХреНрд▓рд┐рдк рд╕реЛрдЪрддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдХрдВрдЯреЗрдВрдЯ-рдЯрд╛рдЗрдк рдЗрдореЗрдЬ / jpg рдХреЗ рдмрд╛рдж рд╕реЗ рдЗрд╕реЗ рдПрдХ рдЪрд┐рддреНрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ file.jpg.htm рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ (рдЕрдкрд╛рдЪреЗ / рдиреЗрдЧрд┐рди) рдЗрд╕ рдлрд╛рдЗрд▓ рдХреЛ рдкрд░реЛрд╕ рд░рд╣рд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрдВрдд рдореЗрдВ рджрд┐рдЦрддрд╛ рд╣реИред рд╣рдорд╛рд░реА рдлрд╛рдЗрд▓ рдФрд░ рд╕рд╛рдордЧреНрд░реА-рдкреНрд░рдХрд╛рд░ = рдкрд╛рда / рдПрдЪрдЯреАрдПрдордПрд▓ рдХреЗ рдЗрдВрдЯрд░реНрдирд▓ рдХреЗ рд╕рд╛рде рдЙрддреНрддрд░ рджреЗрддрд╛ рд╣реИред рдмреНрд░рд╛рдЙрдЬрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдПрдХ рдирд┐рдпрдорд┐рдд HTML рдкреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИред

рдЕрд░реЗ рд╣рд╛рдБ, рд╣рдо EXIF тАЛтАЛрд╣реЗрдбрд░ рдореЗрдВ рдЕрдкрдиреЗ рд▓реЛрдб рдХреЛ рдЫрд┐рдкрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓ рдЕрднреА рднреА рдорд╛рдиреНрдп JPG рд╣реЛрдЧреА (рдпрджрд┐ рд╕рд░реНрд╡рд░ рдкрд░ рдХреЛрдИ рдЖрдХрд╛рд░ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╣реЛрддреА рд╣реИ)ред

├Ы├Я├Щ4╦Ъ╦Ш╦Ш─▒P─▒ P m ├Ы├Я├Щ ╦З ╦З╦З╦ЗW┬╕w╦З├▓╦Э ╦ЭтИл╦Ы) ╦ЫK╦Ы ╦З╦З╦ЗmтАЪ ┬╖ if EifII *
тАЬ├Е (тДв (1 ├Ь2" ┬г "i ┬пCanonCanon DIGITAL IXUS 70 X-f-spot рд╕рдВрд╕реНрдХрд░рдг 0.3.52008: 09:08 11:29:26 ├╢ Z 'b' ├а P├к 0220

рдЫрд╡рд┐
рдЖрд░рд╕реАрдИ (рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди) рд╕рд░реНрд╡рд░ рдХреЛ .php / .pl / .cgi рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдХрд┐ рд░реЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рджреБрд░реНрд▓рднрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВ, рдЯреИрдЧ рд╕реЗ рдЯрд╛рдЗрдк рдХрд░реЗрдВ = рдлрд╝рд╛рдЗрд▓ рд╣рдЯрд╛рдПрдВ рдФрд░ URL рднреЗрдЬреЗрдВред
рдЫрд╡рд┐

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

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


All Articles