mirror of
https://github.com/discourse/discourse.git
synced 2025-09-05 08:59:27 +08:00
SECURITY: Ensure only image uploads can be inlined
This prevents malicious files (for example special crafted XMLs) to be used in XSS attacks.
This commit is contained in:
parent
dc6b02f050
commit
adfa793731
2 changed files with 15 additions and 3 deletions
|
@ -207,10 +207,10 @@ class UploadsController < ApplicationController
|
|||
content_type: MiniMime.lookup_by_filename(upload.original_filename)&.content_type
|
||||
}
|
||||
|
||||
if params[:inline]
|
||||
opts[:disposition] = "inline"
|
||||
elsif !FileHelper.is_supported_image?(upload.original_filename)
|
||||
if !FileHelper.is_supported_image?(upload.original_filename)
|
||||
opts[:disposition] = "attachment"
|
||||
elsif params[:inline]
|
||||
opts[:disposition] = "inline"
|
||||
end
|
||||
|
||||
file_path = Discourse.store.path_for(upload)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue