[Contribution] Oracle Reflected XSS vulnerabilité

04
avril
2015
  • Google Plus
  • LinkedIn
  • Viadeo
Posted by: Yann C.  /   Category: Actualités & News / Contributions / Vulnérabilités, exploits et PoC / XSS   /   Aucun commentaire

Une vulnérabilité de type « Reflected XSS » a été décelée au sein d’un sous-domaine d’Oracle.com.

Ce vecteur d’attaque portait sur la page de désinscription aux newsletters de l’éditeur. Exploitable directement via un paramètre GET, sans nécessiter d’obfuscation quelconque ni de filter-bypass, elle aurait permis à un assaillant de détourner et corrompre le rendu de la page de la navigateur des utilisateurs ciblés.

Les emails reçu automatiquement par l’éditeur lorsque l’on est inscrit aux listes d’informations, contiennent nécessaire un lien « se désinscrire » ou « unsubscribe » en bas de page. La page pointée par ces liens est unique en fonction des inscrits, comprenant un hash d’identification de l’adresse email (token) et l’identifiant de la campagne :

https://dne.oracle.com/pls/uns/OPT_OUT.th?elq_mid=5038&sh=&cmid=EMEAFM14042899MPP002C001&l_code=fr&elq=4c31b8602999476b9d88c2e2fb31ff40&elqCampaignId=5833

Le paramètre GET « elq » ne s’avérait pas suffisamment vérifié et nettoyé avant d’être réutilisé au sein de la page. Il était possible de détourner sa valeur pour injecter du code arbitraire de la sorte :

https://dne.oracle.com/pls/uns/OPT_OUT.th?elq_mid=5038&sh=&cmid=EMEAFM14042899MPP002C001&l_code=fr&elq=4c31b8602999476b9d88c2e2fb31ff40' /><script>alert(0)</script>&elqCampaignId=5833

Démonstration de l’injection via une « alert » canonique :

Reflected XSS dans un sous-domaine Oracle.com

Après plusieurs échanges avec les équipes en charge du portail Oracle vulnérable depuis le 25/08/2014, la vulnérabilité a finalement été comblée fin octobre.

Hello Yann,

Thank you for reporting this issue to Oracle, we validated this issue and have had the system owners implement a fix. This fix has now been deployed on the production site.

We would ask that you verify the fix is adequate in order for us to mark this as resolved.

Regards,

Oracle GIS

A présent, l’injection ne fonctionne plus, et si le paramètre « elq » est altéré, l’utilisateur est directement redirigé vers une page d’erreur :

Patch de l'XSS Reflected

Patch de l’XSS Reflected

Suite à la notification de la vulnérabilité et aux divers échanges dans les équipes technique, la contribution a été annotée sur l’acknowledgement page d’Oracle, recensant également les dernières brèches et correctifs (Q1 2015).

Java/Oracle acknowledgement page 2015 Q1

Java/Oracle acknowledgement page 2015 Q1

Je salue les équipes d’Oracle pour leur amabilité, leur disponibilité et leur acknowledgement.

Sources & ressources :

  • Google Plus
  • LinkedIn
  • Viadeo
Author Avatar

About the Author : Yann C.

Consultant en sécurité informatique et s’exerçant dans ce domaine depuis le début des années 2000 en autodidacte par passion, plaisir et perspectives, il maintient le portail ASafety pour présenter des articles, des projets personnels, des recherches et développements, ainsi que des « advisory » de vulnérabilités décelées notamment au cours de pentest.