La Fibre

Télécom => Télécom => télécom TV et codecs => Discussion démarrée par: vivien le 24 août 2023 à 07:44:00

Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 24 août 2023 à 07:44:00
Les formats d'image sont-ils tous équivalents pour la sécurité ?

Non !

La complexité de TIFF en fait un format difficile à sécuriser.

On découvre encore tous les mois des failles sur les librairies qui permettent de lire ce vieux format de fichier.

Ce n'est pas juste des failles inexploitables. C'est en exploitant des failles de TIFF qu'il est possible de débloquer des équipements tels que les PSP de Sony et des iPhone d'Apple afin de lancer du code non officiel qui permet de "rooter" l'équipement.

Vous comprenez pourquoi votre navigateur web ne sait pas lire de fichiers TIFF...

Voici une liste de failles découvertes ces derniers mois :
- CVE-2023-38289 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-38289) (trop récent, l'info sur la faille n'est pas publique)
- CVE-2023-38288 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-38288) (trop récent, l'info sur la faille n'est pas publique)
- CVE-2023-26966 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-26966) libtiff 4.5.0 is vulnerable to Buffer Overflow in uv_encode() when libtiff reads a corrupted little-endian TIFF file and specifies the output to be big-endian.
- CVE-2023-26965 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-26965) loadImage() in tools/tiffcrop.c in LibTIFF through 4.5.0 has a heap-based use after free via a crafted TIFF image.
- CVE-2023-25433 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-25433) libtiff 4.5.0 is vulnerable to Buffer Overflow via /libtiff/tools/tiffcrop.c:8499. Incorrect updating of buffer size after rotateImage() in tiffcrop cause heap-buffer-overflow and SEGV.
- CVE-2023-3618 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3618) A flaw was found in libtiff. A specially crafted tiff file can lead to a segmentation fault due to a buffer overflow in the Fax3Encode function in libtiff/tif_fax3.c, resulting in a denial of service.
- CVE-2023-3316 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3316) A NULL pointer dereference in TIFFClose() is caused by a failure to open an output file (non-existent path or a path that requires permissions like /dev/null) while specifying zones.
- CVE-2023-2908 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-2908) A null pointer dereference issue was found in Libtiff's tif_dir.c file. This issue may allow an attacker to pass a crafted TIFF image file to the tiffcp utility which triggers a runtime error that causes undefined behavior. This will result in an application crash, eventually leading to a denial of service.
- CVE-2022-48281 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-48281) processCropSelections in tools/tiffcrop.c in LibTIFF through 4.5.0 has a heap-based buffer overflow (e.g., "WRITE of size 307203") via a crafted TIFF image.


Mise à jour TIFF pour Ubuntu :

(https://lafibre.info/testdebit/ubuntu/202308_tiff_mise_a_jour_de_securite.webp)
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: zoc le 24 août 2023 à 09:22:43
Je ne suis pas certain que la complexité de TIFF soit la vraie raison de la présence de nombreuses vulnérabilités.

L'ancienneté du format TIFF fait que tout le monde réutilise des libraires existantes, conçues à l'époque où la cybersécurité n'était pas un concept vraiment pris en compte (l'époque de "tout le monde il est beau tout le monde il est gentil" de l'informatique et des réseaux).

Pas certain que si on implémentait from scratch une librairie TIFF en appliquant les standards de cybersécurité actuels (et surtout en utilisant des langages plus modernes), on aurait encore ces mêmes problèmes.

Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 25 août 2023 à 13:41:02
TIFF est intrinsèquement difficile à sécuriser.

Il supporte des dizaines de solutions pour compresser les images, des extensions à gogo, presque sans limite,...

D'autres formats sont eut très strictes et en même temps bien moins évolutif.

Si TIFF est toujours utilisé de nos jours, c'est qu'il a su régulièrement évoluer. On est loin du format noir et blanc de ses origines.
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 11 octobre 2023 à 10:05:33
Et encore une faille pour TIFF, c'est 3 fois par an minimum...

⇒ CVE-2023-1916 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-1916)


(https://lafibre.info/images/format/202310_tiff_cve-2323-1916.webp)
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: Cochonou le 12 octobre 2023 à 22:02:06
Je suis quand même surpris par toutes ces failles des librairies TIFF.
Le format est assez simple à coder et décoder, même s'il est très extensible. Quand je vois la page support (http://www.libtiff.org/support.html) de libTIFF, à part quelques formats de compression rarement inutilisés, il n'y a rien de très renversant... même certaines parties optionnelles de la spec ne sont pas prises en charge.
Il doit y avoir quelque chose qui m'échappe (et du coup le décodeur TIFF que j'ai écrit il y a longtemps doit être aussi très peu sécurisé !)
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 25 février 2024 à 08:41:56
Encore plusieurs failles de sécurité pour le format d'image TIFF.

C'est un puits sans fond de failles de sécurité.

Les dernières :

⇒ CVE-2023-52356 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-52356)
⇒ CVE-2023-6228 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6228)
⇒ CVE-2023-6277 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6277)

(https://lafibre.info/images/format/202402_tiff_cve-2323-6228.webp)
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 12 juin 2024 à 14:28:33
Encore une faille pour le format d'image TIFF.

=> CVE-2023-3164 (https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-3164)

A heap-buffer-overflow vulnerability was found in LibTIFF, in extractImageSection() at tools/tiffcrop.c:7916 and tools/tiffcrop.c:7801. This flaw allows attackers to cause a denial of service via a crafted tiff file.

(https://lafibre.info/images/format/202406_tiff_cve-2323-3164.webp)
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: rooot le 12 juin 2024 à 17:55:42
c'est LibTIFF qui a une faille, pas le format TIFF...l'image TIFF c'est le vecteur pour exploiter la faille dans LibTIFF, ou alors j'ai pas compris. Mais l'image en elle meme si on a rien pour la décoder, elle peut embarquer tout ce quon veut dedans on aura aucun moyen de déclencher ce qui est malveillant à l'intérieur.
Titre: TIFF: un format d'image difficile à sécuriser
Posté par: vivien le 12 juin 2024 à 18:07:53
Oui, c'est toujours les librairies qui sont vulnérables.

Maintenant TIFF permettant de faire beaucoup de choses contrairement aux autres formats, il a une surface d'attaque immense qui est régulièrement sujet à des vulnérabilités.

Là où les formats d'image se contente d'un type de compression, TIFF en propose 6 (brut, PackBits, LZW, CCITT Fax 3 et 4, JPEG).
Il accepte les espaces colorimétriques noir et blanc, monochrome, palette de couleurs (de toute taille), RVB, YCbCr, CMJN, CIE Lab.