Bulletin d'alerte Debian

DLA-958-1 libonig -- Mise à jour de sécurité pour LTS

Date du rapport :
28 mai 2017
Paquets concernés :
libonig
Vulnérabilité :
Oui
Références dans la base de données de sécurité :
Dans le système de suivi des bogues Debian : Bogue 863312, Bogue 863314, Bogue 863315, Bogue 863316, Bogue 863318.
Dans le dictionnaire CVE du Mitre : CVE-2017-9224, CVE-2017-9226, CVE-2017-9227, CVE-2017-9228, CVE-2017-9229.
Plus de précisions :
  • CVE-2017-9224

    Un problème a été découvert dans Oniguruma 6.2.0, tel qu’utilisé dans Oniguruma-mod dans Ruby jusqu’à 2.4.1 et mbstring dans PHP jusqu’à 7.1.5. Une lecture hors limites de pile se produit dans match_at() lors de recherche par expression rationnelle. Une erreur de logique impliquant l’ordre de validation et d’accès dans match_at() pourrait aboutir à une lecture hors limites d’un tampon de pile.

  • CVE-2017-9226

    Un problème a été découvert dans Oniguruma 6.2.0, tel qu’utilisé dans Oniguruma-mod dans Ruby jusqu’à 2.4.1 et mbstring dans PHP jusqu’à 7.1.5. Une écriture ou lecture hors limites de tas se produit dans next_state_val() lors de la compilation d’expression rationnelle. Des nombres octaux supérieurs à 0xff ne sont pas gérés correctement dans fetch_token() et fetch_token_in_cc(). Une expression rationnelle mal formée contenant un nombre octal de la forme « \700 » produirait une valeur de point de code non valable et supérieure à 0xff dans next_state_val(), aboutissant à une corruption de mémoire d'écriture hors limites.

  • CVE-2017-9227

    Un problème a été découvert dans Oniguruma 6.2.0, tel qu’utilisé dans Oniguruma-mod dans Ruby jusqu’à 2.4.1 et mbstring dans PHP jusqu’à 7.1.5. Une lecture hors limites de pile se produit dans mbc_enc_len() lors de recherche par expression rationnelle. Un traitement non valable de reg->dmin dans forward_search_range() pourrait aboutir à un déréférencement de pointeur non valable, tel qu’une lecture hors limites d’un tampon de pile.

  • CVE-2017-9228

    Un problème a été découvert dans Oniguruma 6.2.0, tel qu’utilisé dans Oniguruma-mod dans Ruby jusqu’à 2.4.1 et mbstring dans PHP jusqu’à 7.1.5. Une écriture hors limites de tas se produit dans bitset_set_range() lors de la compilation d’expression rationnelle due à une variable non initialisées d’une transition d’état incorrecte. Une telle transition dans parse_char_class() pourrait créer un chemin d’exécution laissant une variable locale critique non initialisée jusqu’à son exécution comme index, aboutissant à une corruption de mémoire d’écriture hors limites.

  • CVE-2017-9229

    Un problème a été découvert dans Oniguruma 6.2.0, tel qu’utilisé dans Oniguruma-mod dans Ruby jusqu’à 2.4.1 et mbstring dans PHP jusqu’à 7.1.5. Un SIGSEGV se produit dans left_adjust_char_head() lors de la compilation d’expression rationnelle. Un traitement non valable de reg->dmax dans forward_search_range() pourrait aboutir à un déréférencement de pointeur non valable, généralement comme une condition de déni de service immédiat.

Pour Debian 7 Wheezy, ces problèmes ont été corrigés dans la version 5.9.1-1+deb7u1.

Nous vous recommandons de mettre à jour vos paquets libonig.

Plus d’informations à propos des annonces de sécurité de Debian LTS, comment appliquer ces mises à jour dans votre système et les questions fréquemment posées peuvent être trouvées sur : https://wiki.debian.org/LTS.