Sécurité
Pages enfant
  • ESUP-2026-AVI-001 - Vulnérabilité dans esup-otp-api

Vous regardez une version antérieure (v. /wiki/spaces/SECU/pages/1697611810/ESUP-2026-AVI-001+-+Vuln%C3%A9rabilit%C3%A9+dans+esup-otp-api) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 3) afficher la version suivante »

Utilisation et diffusion de ce document

Les avis de sécurité du consortium ESUP-Portail portent sur des vulnérabilités des logiciels diffusés par le consortium. Il est de la responsabilité de chacun des destinataires de ce document de ne pas le rediffuser en dehors du cadre pour lequel il a été écrit, pour des raisons évidentes de sécurité des Systèmes d'Information de tous les établissements du consortium ESUP-Portail.

Objet

Vulnérabilité dans esup-otp-api

Référence

ESUP-2026-AVI-001

Date de la première version

13 mars 2026

Date de la dernière version

13 mars 2026

Source

Université Paris 1 Panthéon-Sorbonne

Diffusion de cette version

Publique

Historique

  • 18 mars 2026 : faille détectée par Florian Nari, développeur à l'Université Paris 1 Panthéon-Sorbonne.
  • 19 mars 2026 : correction d'esup-otp-api en 2.2.2 (Florian Nari)
  • 19 mars 2026 : amélioration de la correction d'esup-otp-api en 2.2.3 (Florian Nari)
  • 19 mars 2026 : envoi de l'avis de sécurité à securite@esup-portail.org

Planning prévisionnel

-

Pièces jointes

-

Risque

  • Possibilité de valider la demande de MFA à la place de l'utilisateur légitime

Systèmes affectés

  • Cette vulnérabilité affecte l'ensemble des versions esup-otp-api depuis Août 2019 : version 2.0.0 et supérieures.

Description

Une vulnérabilité a été découverte dans le module esup-papercut, logiciel utilisé pour permettre à l'utilisateur de recréditer son compteur Papercut via un paiement Paybox ou/et IzlyPay.
Cette vulnérabilité permet à un attaquant de ne pas avoir besoin de payer ni même s'authentifier pour créditer un compte dans papercut via une faille d'esup-papercut.

Cette faille exploite la possibilité de paiement via izlypay.
esup-papercut ne sécurise pas son mécanisme de callback en /izlypaycallback qui ne devrait être appelé que par les serveurs izly.

Complexité d'exploitation

Relativement faible, une commande curl permet de procéder au crédit.

Conditions préalables 

Il faut connaître l'URL d'esup-papercut, le nom d'un contexte, le login à créditer et le préfixe des numéros de commandes lié au contexte.

Solutions

Mise à jour d'esup-papercut

Les administrateurs système sont encouragés à mettre à jour esup-papercut vers la version 2.1.0 ou ultérieure qui corrige ce problème.

Cf https://github.com/EsupPortail/esup-papercut

Interdiction des URL en /izlypaycallback

Si vous ne pouvez pas mettre à jour votre esup-papercut et que vous n'utilisez pas izlypay, vous pouvez interdire les URL en /izlypaycallback au niveau de votre frontal ; une solution simple est de bloquer toutes les URL contenant izlypaycallback par exemple sous Apache : 

RewriteEngine On
RewriteRule izlypaycallback - [F,L]

Applications concernées

esup-papercut version 2.0.0 et supérieur jusqu'à 2.1.0, même si izlypay n'est pas mis en œuvre par l'établissement.

Analyse des logs

Une analyse des logs d'accès peut permettre de déterminer si la faille a été exploitée : tout POST avec réponse en 200 sur une url finissant en /izlypaycallback et dont l'IP ne correspond pas à un serveur izly (crous) est à considérer comme illégitime.

Si vous n'avez pas mis en place izlypay dans votre esup-papercut, les logs en base de données peuvent rapidement vous permettre d'identifier un paiement illégitime, d'autant que, même si vous les avez anonymisés via la procédure interne d'esup-papercut, le mode de paiement est conservé.
Ainsi la requête SQL suivante ne doit vous renvoyer aucun résultat (à condition que vous n'utilisiez pas vous-même IzlyPay, mais uniquement le paiement par Paybox) :

select * from public.pay_papercut_transaction_log where pay_mode='IZLYPAY';

Liens


  • Aucune étiquette