diff --git a/core/lib/Drupal/Core/Render/Renderer.php b/core/lib/Drupal/Core/Render/Renderer.php
index a91b14b..4abcdad 100644
--- a/core/lib/Drupal/Core/Render/Renderer.php
+++ b/core/lib/Drupal/Core/Render/Renderer.php
@@ -458,6 +458,13 @@ protected function doRender(&$elements, $is_root_call = FALSE) {
 
     $elements['#markup'] = $prefix . $elements['#children'] . $suffix;
 
+    // @todo Remove when https://www.drupal.org/node/2351015 is fixed.
+    if (isset($elements['#cache']['keys']) && (!isset($elements['#cache']['max-age']) || $elements['#cache']['max-age'] !== 0)) {
+      if (strpos($elements['#markup'], '?token=') !== FALSE || strpos($elements['#markup'], '&token=') !== FALSE || strpos($elements['#markup'], '&amp;token=') !== FALSE) {
+        $elements['#cache']['max-age'] = 0;
+      }
+    }
+
     // We've rendered this element (and its subtree!), now update the stack.
     $this->updateStack($elements);
 
