logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma
commit: 8feec8d390f34114c5f42faf366f899a2b4af9fb
parent: a9bfbcae800e88b85814c718b0c4bfa9d8dfcfaa
Author: Roger Braun <roger@rogerbraun.net>
Date:   Sun, 18 Jun 2017 13:40:35 +0200

Strip unsafe html on output in TwAPI.

Diffstat:

Mlib/pleroma/web/twitter_api/representers/activity_representer.ex2+-
Mtest/web/twitter_api/representers/activity_representer_test.exs4++--
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/pleroma/web/twitter_api/representers/activity_representer.ex b/lib/pleroma/web/twitter_api/representers/activity_representer.ex @@ -105,7 +105,7 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenter do "id" => activity.id, "user" => UserRepresenter.to_map(user, opts), "attentions" => [], - "statusnet_html" => content, + "statusnet_html" => HtmlSanitizeEx.basic_html(content), "text" => HtmlSanitizeEx.strip_tags(content), "is_local" => true, "is_post_verb" => true, diff --git a/test/web/twitter_api/representers/activity_representer_test.exs b/test/web/twitter_api/representers/activity_representer_test.exs @@ -67,7 +67,7 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do } } - content_html = "Some #content #mentioning <a href='#{mentioned_user.ap_id}'>@shp</shp>" + content_html = "<script>alert('YAY')</script>Some #content #mentioning <a href='#{mentioned_user.ap_id}'>@shp</a>" content = HtmlSanitizeEx.strip_tags(content_html) date = DateTime.from_naive!(~N[2016-05-24 13:26:08.003], "Etc/UTC") |> DateTime.to_iso8601 @@ -108,7 +108,7 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do "user" => UserRepresenter.to_map(user, %{for: follower}), "is_local" => true, "attentions" => [], - "statusnet_html" => content_html <> "<br>\n#nsfw", + "statusnet_html" => HtmlSanitizeEx.basic_html(content_html) <> "<br />\n#nsfw", "text" => content <> "\n#nsfw", "is_post_verb" => true, "created_at" => "Tue May 24 13:26:08 +0000 2016",