Скрытая угроза геотегов EXIF: как цифровые камеры раскрывают ваше физическое местоположение
Каждая цифровая фотография, сделанная с помощью современного смартфона или специальной цифровой камеры, содержит невидимую вторичную полезную нагрузку, известную какМетаданные EXIF (сменный формат файлов изображений). Стандартизированный JEITA (Японской ассоциацией индустрии электроники и информационных технологий), EXIF изначально был разработан для помощи фотографам, фоторедакторам и полиграфическим лабораториям путем сохранения параметров экспозиции — диафрагмы, выдержки, чувствительности ISO и фокусного расстояния объектива.
Однако с массовым внедрением навигационных чипсетов GPS, Galileo и ГЛОНАСС в мобильных устройствах в прошивку камеры начали добавлятьсяточные координаты спутника (широта, долгота и высота)прямо в заголовок изображения. Когда вы делаете фотографию в гостиной, на балконе или на заднем дворе, в файле изображения навсегда проставляются координаты вашего дома с точностью до нуля.от 3 до 5 метров.
Техническая анатомия сегмента EXIF: маркеры APP1 и порядок байтов TIFF
В стандартном файле изображения JPEG двоичные данные начинаются с 2-байтового маркера начала изображения.0xFFD8(СОИ). Метаданные, специфичные для приложения, встроены в специализированные сегменты, помеченные какот APP0 до APP15. Метаданные EXIF находятся исключительно вМаркер APP1 (0xFFE1):
- Маркер и длина:
0xFFE1за которым следует 2-байтовое целое число без знака, объявляющее общий размер сегмента в байтах. - Подпись заголовка:6 байт, содержащих
45 78 69 66 00 00— строка ASCII"Exif"за которыми следуют два нулевых байта. - Заголовок TIFF:8 байтов, объявляющих порядок байтов. Если первые два байта
0x4949(Intel, Little-Endian, сначала младший байт) или0x4D4D(Motorola, Big-Endian, сначала старший байт), за которым следует магическая константа42(0x002A) и 4-байтовый указатель на основной каталог файлов изображений (IFD0). - Справочники ИФД:IFD0 ссылается на вторичные подкаталоги, включаяExifIFD (тег
0x8769)для показателей оптического воздействия иGPSInfo IFD (тег0x8825)для записей геолокации.
Удаление EXIF без потерь и повторное сжатие холста с потерями
Многие базовые онлайн-инструменты удаляют метаданные, отображая фотографию в формате HTML5.<canvas>элемент и вызовcanvas.toDataURL('image/jpeg'). Хотя этот метод отбрасывает заголовки метаданных, он заставляет все изображение пройти этап декомпрессии JPEG с потерями и повторного кодирования. Это приводит к заметным артефактам сжатия, ухудшению субдискретизации цветности и изменению значений яркости пикселей.
FlashSoftОнлайн-стрипер EXIFвыполняетчистое удаление двоичных сегментовнепосредственно в байтовом буфере необработанного файла. Он хирургически удаляет маркеры APP1 (EXIF/XMP), APP2 (ICC), APP13 (Photoshop/IPTC) и COM, оставляя при этом энтропийные полезные данные таблиц квантования (DQT), таблиц Хаффмана (DHT), начала кадра (SOF0/SOF2) и начала сканирования (SOS). Полученное чистое изображение сохраняет100% побитовая оптическая точностьс нулевыми потерями сжатия.