Metadata fingerprinting attack¶
Demonstrates extracting identifying metadata from documents:
from PIL import Image
import exifread
import os
def extract_metadata(file_path):
if file_path.lower().endswith(('.png', '.jpg', '.jpeg')):
with open(file_path, 'rb') as f:
tags = exifread.process_file(f)
print("=== Image Metadata ===")
for tag in tags:
if tag not in ('JPEGThumbnail', 'TIFFThumbnail'):
print(f"{tag}: {tags[tag]}")
# PDF metadata extraction
elif file_path.lower().endswith('.pdf'):
from PyPDF2 import PdfFileReader
with open(file_path, 'rb') as f:
pdf = PdfFileReader(f)
info = pdf.getDocumentInfo()
print("\n=== PDF Metadata ===")
for key in info:
print(f"{key[1:]}: {info[key]}")
Last update:
2025-05-12 12:38