diff --git a/django/contrib/admin/templates/admin/base.html b/django/contrib/admin/templates/admin/base.html
index d1216a114e1..f3b403bdb3b 100644
--- a/django/contrib/admin/templates/admin/base.html
+++ b/django/contrib/admin/templates/admin/base.html
@@ -25,7 +25,7 @@
{% if user.is_active and user.is_staff %}
{% trans 'Welcome,' %}
- {% firstof user.first_name user.username %}.
+ {% filter force_escape %}{% firstof user.first_name user.username %}{% endfilter %}.
{% block userlinks %}
{% url django-admindocs-docroot as docsroot %}
{% if docsroot %}
diff --git a/docs/ref/templates/builtins.txt b/docs/ref/templates/builtins.txt
index 9e8f9825d65..2d65bb22dc8 100644
--- a/docs/ref/templates/builtins.txt
+++ b/docs/ref/templates/builtins.txt
@@ -113,9 +113,13 @@ You can use any number of values in a ``{% cycle %}`` tag, separated by spaces.
Values enclosed in single (``'``) or double quotes (``"``) are treated as
string literals, while values without quotes are treated as template variables.
-Note that the variables included in the cycle will not be escaped. This is
-because template tags do not escape their content. If you want to escape the
-variables in the cycle, you must do so explicitly::
+Note that the variables included in the cycle will not be escaped.
+This is because template tags do not escape their content. Any HTML or
+Javascript code contained in the printed variable will be rendered
+as-is, which could potentially lead to security issues.
+
+If you need to escape the variables in the cycle, you must do so
+explicitly::
{% filter force_escape %}
{% cycle var1 var2 var3 %}
@@ -203,9 +207,13 @@ passed variables are False::
{% firstof var1 var2 var3 "fallback value" %}
-Note that the variables included in the firstof tag will not be escaped. This
-is because template tags do not escape their content. If you want to escape
-the variables in the firstof tag, you must do so explicitly::
+Note that the variables included in the firstof tag will not be
+escaped. This is because template tags do not escape their content.
+Any HTML or Javascript code contained in the printed variable will be
+rendered as-is, which could potentially lead to security issues.
+
+If you need to escape the variables in the firstof tag, you must do so
+explicitly::
{% filter force_escape %}
{% firstof var1 var2 var3 "fallback value" %}