From 5b5743eeeb799cfcbb7386a36fc92dd3c31ac678 Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Sun, 26 May 2019 17:55:44 +0200 Subject: [places] Prevent some abuse of smart queries. --- dom/events/DataTransfer.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'dom/events/DataTransfer.cpp') diff --git a/dom/events/DataTransfer.cpp b/dom/events/DataTransfer.cpp index 40a0f42e6..35e80fea4 100644 --- a/dom/events/DataTransfer.cpp +++ b/dom/events/DataTransfer.cpp @@ -39,6 +39,7 @@ #include "mozilla/dom/OSFileSystem.h" #include "mozilla/dom/Promise.h" #include "nsNetUtil.h" +#include "nsReadableUtils.h" namespace mozilla { namespace dom { @@ -644,6 +645,13 @@ DataTransfer::PrincipalMaySetData(const nsAString& aType, NS_WARNING("Disallowing adding x-moz-file or x-moz-file-promize types to DataTransfer"); return false; } + + // Disallow content from creating x-moz-place flavors, so that it cannot + // create fake Places smart queries exposing user data. + if (StringBeginsWith(aType, NS_LITERAL_STRING("text/x-moz-place"))) { + NS_WARNING("Disallowing adding moz-place types to DataTransfer"); + return false; + } } return true; } -- cgit v1.2.3