diff --git a/core/modules/filter/filter.module b/core/modules/filter/filter.module
index ea98965..cb1d8eb 100644
--- a/core/modules/filter/filter.module
+++ b/core/modules/filter/filter.module
@@ -1432,7 +1432,8 @@ function theme_filter_html_image_secure_image(&$variables) {
   $image = $variables['image'];
 
   // Turn an invalid image into an error indicator.
-  $image->setAttribute('src', base_path() . 'core/misc/message-16-error.png');
+  $image->setAttribute('src', base_path() . 'core/misc/icons/ea2800/error.svg');
+  $image->setAttribute('onerror', 'this.onerror=null; this.src=\'' . base_path() . 'core/misc/icons/ea2800/error.png\'');
   $image->setAttribute('alt', t('Image removed.'));
   $image->setAttribute('title', t('This image has been removed. For security reasons, only images from the local domain are allowed.'));
 
diff --git a/core/modules/filter/lib/Drupal/filter/Tests/FilterHtmlImageSecureTest.php b/core/modules/filter/lib/Drupal/filter/Tests/FilterHtmlImageSecureTest.php
index d61bfa1..f422a13 100644
--- a/core/modules/filter/lib/Drupal/filter/Tests/FilterHtmlImageSecureTest.php
+++ b/core/modules/filter/lib/Drupal/filter/Tests/FilterHtmlImageSecureTest.php
@@ -84,7 +84,7 @@ function testImageSource() {
     $csrf_path = $public_files_path . '/' . implode('/', array_fill(0, substr_count($public_files_path, '/') + 1, '..'));
 
     $druplicon = 'core/misc/druplicon.png';
-    $red_x_image = base_path() . 'core/misc/message-16-error.png';
+    $red_x_image = base_path() . '/checkout/core/misc/icons/ea2800/error.svg';
     $alt_text = t('Image removed.');
     $title_text = t('This image has been removed. For security reasons, only images from the local domain are allowed.');
 
