Гифар - Gifar

Архивы Java в формате обмена графикой (GIFAR) - термин для Гифка файлы в сочетании с БАНКА формат файла. Измененные файлы GIF могут быть загружены на веб-сайты, которые позволяют загружать изображения и запускать код, который работает внутри этого сайта.

В этой атаке файлы архива GIF Java (GIFAR) загружаются на веб-сайты, а модифицированные файлы GIF запускают код при любом просмотре (открытии) такого файла. Этот метод обходит «ту же политику происхождения», которую навязывают браузеры; в обход обычно используемой проверки содержимого. Злоумышленники ссылаются на это вредоносное изображение в коде апплета на размещенном сайте, устанавливая междоменное взаимодействие с (вашим) целевым доменом.

Этот метод работает, потому что изображения GIF (наряду с другими типами файлов: не только файлы GIF и JAR могут действовать таким образом. Существует общий класс уязвимостей комбинаций типов файлов, таких как .doc, .jpg и т. Д.), Хранят свои заголовок в начале файла, а ZIP-архивы (из которых состоят файлы JAR) хранят свои данные в конце.

Короче говоря, GIFAR позволяет хакеру копировать файлы cookie жертвы.

GIFAR - это фотография, которая может «позаимствовать» ваши учетные данные в Интернете и захватить учетные записи пользователей Интернета.

GIFAR - это не исполняемый код, который запускается при просмотре изображения.

Чтобы атака сработала, жертва должна войти на веб-сайт, на котором размещен образ.

Уязвимые сайты

Любой сайт, который включает сеансы входа в систему с загруженными пользователями изображениями, может быть уязвим.

Java ARchive

Архив Java
Значок файла KDE JAR
Расширение имени файла
.банка
Тип интернет-СМИ
приложение / x-java-архив
Единый идентификатор типа (UTI)com.sun.java-архив
РазработанNetscape, Sun Microsystems, Корпорация Oracle
Тип форматафайловый архив, Сжатие данных
Расширен сZIP

Файлы JAR построены на Формат файла ZIP и иметь .банка расширение файла. Пользователи компьютеров могут создавать или извлекать файлы JAR с помощью банка команда, которая идет с JDK. Они также могут использовать застегивать инструменты для этого; однако порядок записей в заголовках zip-файла важен при сжатии, так как манифест часто оказывается первым.

.JAR - это файлы .ZIP, которые переименованы, чтобы Java, установленная в качестве программы по умолчанию, открывала их. Формат файла zip позволяет размещать комментарий метаданных в конце файла после центрального каталога.[1] В zip-архивах, поскольку центральный каталог определяет смещение каждого файла относительно начала, первая запись файла может начинаться со смещения, отличного от нуля.

Это позволяет произвольным данным находиться в файле как до, так и после данных zip-архива, а также для того, чтобы архив все еще читался приложением zip. Побочным эффектом этого является то, что можно создать файл, который одновременно является рабочим zip-архивом и другим форматом; при условии, что другой формат допускает произвольные данные в начале, середине или конце. Воспользуйтесь преимуществом этого преимущества самораспаковывающихся архивов (SFX) формы, поддерживаемой WinZip и DotNetZip - это файлы .exe, которые соответствуют спецификации PKZIP AppNote.txt и могут быть прочитаны совместимыми инструментами или библиотеками zip.

Это свойство zip и формата JAR (который является вариантом zip) можно использовать для сокрытия вредоносных классов Java внутри, казалось бы, нормального файла, такого как изображение GIF, загруженное в Интернет. Так называемый «GIFAR» эксплойт был продемонстрирован как эффективная атака на веб-приложения, такие как Facebook.[2]

Это позволило разрешить "безопасному" сайту запускать Java. Например, веб-мастер может разместить этот файл на своем сайте, заявив, что это апплет, или атакующая сторона может загрузить GIFAR на хост изображения; и браузер конечного пользователя запустит апплет, потому что он заявлен как безопасный.

Дизайн JAR

  • Файлы JAR предназначены для выполнения как автономные программы.
  • Этот файл позволяет средам выполнения Java легко развертывать набор классов.
  • Элементы в файле JAR могут быть сжаты, что, наряду с возможностью загрузки приложения за один запрос, ускоряет загрузку файла JAR, чем отдельную загрузку множества файлов, которые образуют одно приложение.
  • Чтобы распаковать файл JAR, пользователи могут использовать любое программное обеспечение для распаковки. Однако те, у кого установлен Виртуальная машина Java можно использовать эту команду для расширения такого файла: jar -xf foo.jar
  • Разработчики могут цифровая подпись Файлы JAR. В этом случае подпись становится частью (встроенного) файла манифеста. JAR не подписан, но перечислены все файлы внутри архива вместе с подписанной контрольной суммой каждого файла. Несколько объектов могут подписывать файл JAR (который изменяет сам файл JAR с каждой подписью). Когда среда выполнения Java загружает подписанные файлы JAR, она проверяет подпись (и) и избегает несовпадающих классов. Это предотвращает вставку вредоносного кода.
  • Разработчики могут затемнять Файлы JAR, чтобы пользователь файла JAR не мог получить информацию о содержащемся в нем коде.
  • Майкрософт Виндоус пользователи, которые предпочитают Windows EXE файлы могут оборачивать файлы JAR в исполняемые файлы.
  • В Apache Ant инструмент сборки может читать и записывать архивы Zip и JAR, включая поддержку Unix расширения.

СОЛНЦЕ И JRE

В файлах GIFAR виртуальная машина Java распознает часть JAR, которая запускается как апплет в браузере жертвы, как если бы он был написан разработчиками веб-сайта.

Хотя Sun исправила уязвимость Java (в сообщении № 244988 (начиная с версий JDK и JRE 6, обновление 11 (2 декабря 2008 г.), JDK и JRE 5.0, обновление 17, а также SDK и JRE 1.4.2_19), поскольку некоторые пользователи запускают установленные версии Java, предшествующие патчу JRE, эту проблему необходимо решать как проблему безопасности браузера.Однако патч Sun не запрещает приложениям брать на себя права владения пользовательским контентом.

От солнца; «... апплетам не разрешено открывать сетевые подключения к любому компьютеру, кроме хоста, который предоставил файлы .class». Можно загрузить GIFAR на сайт, поскольку они будут проверяться как изображения. Вы можете включить встраивание, указывающее на этот GIFAR, на другую страницу (размещенную где угодно) и заставить людей наткнуться на нее. Ему будет разрешено устанавливать любые сетевые подключения к этому сайту от своего имени.

Когда апплет запущен, хакеры могут получить доступ к учетным записям жертвы.

Гифки

Архивы Java в формате обмена графикой
Вращающаяся земля (большой) .gif
Анимированный GIF.
Расширение имени файла
.gif
Тип интернет-СМИ
изображение / gif
Типовой кодГифка
GIFf
Единый идентификатор типа (UTI)com.compuserve.gif
Магическое числоGIF87a/GIF89a
РазработанCompuServe
Тип форматаРастровая графика формат изображения

В Формат обмена графикой (Гифка) основан на файле GIF битовая карта формат изображения это было введено CompuServe в 1987 году. GIF широко используется на Всемирная паутина из-за его широкой поддержки.

Изображения GIF сжимаются с помощью Лемпель-Зив-Велч (LZW) сжатие данных без потерь метод уменьшения размера файла без ухудшения визуального качества. Этот метод был запатентован в 1985 г. Unisys. Срок действия всех соответствующих патентов истек.

GIF хранит несколько изображений в одном файле. Этот метод широко используется в Интернете для создания простых анимации.

GIF был одним из первых двух форматов изображений, широко используемых на веб-сайтах. CompuServe GIF появился в 1987 году, чтобы предоставить формат цветного изображения, чтобы заменить кодирование длин серий (RLE) формат, который был черно-белым XBM. GIF стал популярным, потому что в нем можно было использовать Сжатие данных, что позволило загружать большие изображения за короткое время.

JPEG пришел позже, с Браузер мозаики.

Использование и цвет

  • GIF-файлы подходят для линий с острыми краями, например логотипов, с ограниченным количеством цветов. Это позволяет использовать сжатие без потерь, которое позволяет получить плоские области однородного цвета с определенными краями.
  • GIF-файлы можно использовать для хранения данных с низким уровнем цвета для логотипов, статических изображений, небольших анимаций и видеоклипов с низким разрешением.
  • GIF - это не формат, обычно используемый для цифровая фотография. Фотографы используют форматы файлов, способные воспроизводить более широкий диапазон цветов, например TIFF, СЫРОЙ или же JPEG.
  • В качестве усовершенствования была использована техника, названная дизеринг был использован для аппроксимации более широкого диапазона цветов с помощью цветных пикселей для приближения промежуточных цветов. Эти методы имитируют более высокое цветовое разрешение. Дизеринг мешает сжимаемости данных изображения, что противоречит основной цели GIF.
  • GIF может генерировать 24-битные полноцветные изображения RGB.
  • Файлы GIF могут поддерживать прозрачность.
  • GIF можно создавать без сжатия. До истечения срока действия патента GIF это было сделано, чтобы избежать нарушения.
  • GIF-файлы могут быть чересстрочными. Это позволяет частично отображать изображение, которое можно распознать до того, как будет нарисовано полное изображение.
  • В спецификацию GIF89a добавлена ​​покадровая анимация. Анимация отображает последовательность кадров; остановка, когда отображается последний кадр, и иногда сигнал повторения.[3]

Решения

Некоторые решения этой проблемы могут быть следующими: Если вы веб-пользователь, обновите JRE до последней версии. Веб-мастера не могут гарантировать, что их клиенты будут защищены, потому что они не могут контролировать версию JRE, которую используют их пользователи.

Если вы размещаете изображения, запустите внутренний сценарий, который проверяет отсутствие файлов jar, добавленных к уязвимым типам файлов (см. http://secureoughtts.com/2009/01/easy-server-side-fix-for-the-gifar-security-issue | Решение, которое может помочь разработчику отфильтровать вредоносное содержимое jar-файлов на стороне сервера). Если приложение может ограничить загрузку вредоносных файлов, оно решает проблему, не беспокоясь о том, какая версия JRE запущена на клиенте.

В конечном итоге это проблема веб-приложения. Когда веб-приложение принимает решение стать владельцем управляемого пользователем файла, обслуживая его из своего домена, это ослабляет целостность домена. Влияние этих атак также можно было бы минимизировать, если бы веб-приложения, которые использовали файлы, контролируемые пользователем, обслуживали эти файлы. из домена «выбрасывать». Как разработчик приложения, вы также можете предотвратить подобные атаки, используя отдельный домен для файлов, на которые влияет пользователь.

Рекомендации

  1. ^ "Спецификация формата файла .ZIP - версия 6.3.6". PKWARE Inc. 15 июля 2020 г. Архивировано 15 мая 2019 г.CS1 maint: неподходящий URL (связь)
  2. ^ Макмиллан, Роберт (1 августа 2008 г.). «Фотография, которая может украсть ваши учетные данные в Интернете». Infoworld.com. В архиве из оригинала от 18.09.2020.
  3. ^ Фрейзер, Роял. "Все о GIF89a". В архиве из оригинала на 2020-09-01.

Внешняя ссылка