diff options
author | ThibG <thib@sitedethib.com> | 2018-12-23 02:16:35 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2018-12-23 02:16:35 +0100 |
commit | e25947db4a44cd50fa1daa36d5031a950327b646 (patch) | |
tree | 82e146ce7bb5297d8e1c8bc745c569f9170aa7e1 | |
parent | bb62827c16dbf35c70da2dc801f602df3c76fcca (diff) |
Sanitize and sandbox toot embeds (#9552)
-rw-r--r-- | app/controllers/api/web/embeds_controller.rb | 1 | ||||
-rw-r--r-- | app/javascript/mastodon/features/ui/components/embed_modal.js | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/app/controllers/api/web/embeds_controller.rb b/app/controllers/api/web/embeds_controller.rb index 987290a14..6231733b7 100644 --- a/app/controllers/api/web/embeds_controller.rb +++ b/app/controllers/api/web/embeds_controller.rb @@ -10,6 +10,7 @@ class Api::Web::EmbedsController < Api::Web::BaseController render json: status, serializer: OEmbedSerializer, width: 400 rescue ActiveRecord::RecordNotFound oembed = FetchOEmbedService.new.call(params[:url]) + oembed[:html] = Formatter.instance.sanitize(oembed[:html], Sanitize::Config::MASTODON_OEMBED) if oembed[:html].present? if oembed render json: oembed diff --git a/app/javascript/mastodon/features/ui/components/embed_modal.js b/app/javascript/mastodon/features/ui/components/embed_modal.js index 2afb6f3d7..982781db0 100644 --- a/app/javascript/mastodon/features/ui/components/embed_modal.js +++ b/app/javascript/mastodon/features/ui/components/embed_modal.js @@ -77,6 +77,7 @@ class EmbedModal extends ImmutablePureComponent { className='embed-modal__iframe' frameBorder='0' ref={this.setIframeRef} + sandbox='allow-same-origin' title='preview' /> </div> |