Pwning Opera Unite avec Inferno’s Eleven

Opera Unite, la prochaine version du navigateur Opera a une vision forte pour changer notre façon de voir le web. Pour ceux qui ne connaissent pas cette technologie radicale, il étend votre navigateur dans une suite de collaboration à part entière où vous pouvez discuter avec des gens, laisser des notes, partager des fichiers, lire des médias, héberger vos sites, etc. (Wow !!).


Opera Unite est livré avec un tas de services standard tels que Fridge (Notes), The Lounge (chatroom), etc. Il est important de comprendre que ces services ont deux vues distinctes. Une vue est du Propriétaire du service, qui installe, personnalise et exécute ces services sur son ordinateur. Le propriétaire du service et l'ordinateur exécutant ces services ont des identifiants associés. Par défaut, le nom de l'ordinateur est “Accueil”. Ainsi, votre page d'accueil administrative est http://admin.home.uid.operaunite.com/. N'oubliez pas que même si le protocole de communication ressemble à http, il ne l'est pas. Opera relaie tout le trafic en utilisant un protocole ucp propriétaire (crypté) vers asd.opera.com et auth.opera.com (pas de détails de protocole sauf ici). L'autre vue est celle de la page de service qui est utilisée par vos utilisateurs (amis, clients, etc.) pour accéder à votre contenu sélectionné. Ces utilisateurs de confiance peuvent accéder à vos services à partir de n'importe quel navigateur (et pas seulement de l'opera unite) et utilisent le protocole http simple. La page d'accueil du service est http://home.uid.operaunite.com/.

J'étais fasciné par cette idée, j'ai donc décidé d'examiner les aspects de sécurité du produit (alors qu'il était en version bêta). Voici mes résultats sans ordre de priorité particulier (testé sur 10.00 Beta 3 Build 1703). J'inclus le PoC dans leurs sections respectives. N'oubliez pas de changer “Accueil” avec votre ordinateur et “infernosec2” avec votre ID utilisateur.

1. Énumération des noms d'utilisateur du propriétaire du service - Eh bien, si vous souhaitez mener des attaques ciblées contre un utilisateur particulier, il est plus facile de le faire en devinant son nom d'utilisateur. Les noms d'utilisateur sont généralement prénom / nom / prénom.nom, etc. Cependant, pour les attaques plus génériques, Opera Unite nous facilite la tâche en permettant à Google d'indexer son utilisateur’s pages (configurables). Voici le résultat d'une simple requête - site: operaunite.com

Pwning Opera Unite avec Inferno’s ElevenPwning Opera Unite avec Inferno’s Eleven

2. Énumération des noms d'ordinateurs pour un propriétaire de service particulier - Une fois que vous avez décidé du propriétaire de votre service cible, l'étape suivante consiste à déterminer quels ordinateurs lui appartiennent. Notez que dans le moteur de recherche, vous ne pouvez obtenir que quelques noms d'ordinateurs et pas tous, car le propriétaire peut avoir choisi de ne pas indexer les noms privés. Cependant, si vous visitez la page d'accueil du service avec un nom d'ordinateur inexistant, Opera Unite divulgue volontiers tous les noms d'ordinateur utilisés par cette personne..

Opera Unite Computer Name EnumerationOpera Unite Computer Name Enumeration

3. Énumération de l'adresse IP et du numéro de port du serveur du propriétaire du service - Si vous êtes propriétaire d'un service et que votre identité est masquée par les serveurs proxy Opera Unite, détrompez-vous. Opera Unite divulgue votre adresse IP et votre numéro de port à tout utilisateur (même non authentifié) qui visite vos pages de service. J'ai testé cela pour travailler sur les services de partage de fichiers et de téléchargement de fichiers. Faites juste une vue-source: sur n'importe laquelle de ces pages.

Opera Unite Server IP et divulgation des portsOpera Unite Server IP et divulgation des ports

4. Détournement de communications non sécurisées dans les pages de service - Alors que Opera Team a pris les mesures adéquates pour sécuriser le propriétaire du service’s la communication avec les serveurs Opera Unite (en utilisant ucp propriétaire), cependant, la communication des utilisateurs de la page de service avec Opera’s Le serveur est un simple http et il n'y a pas de choix pour utiliser https (comme vous ne pouvez pas faire https://home.infernosec2.operaunite.com/file_sharing/content/). Ces utilisateurs utilisent des informations d'identification sensibles pour se connecter à vos services et ont besoin du même type de sécurité que le propriétaire du service. Ce qui est plus choquant, c'est que le système de gestion des utilisateurs de my.opera.com ne prend pas en charge https. Essayez de visiter https://my.opera.com/

Communication HTTP Opera Unite non sécuriséeCommunication HTTP Opera Unite non sécurisée

5. Hébergement de pages de phishing et autres logiciels malveillants sur Trusted Operaunite.com - En tant qu'attaquant, vous pouvez utiliser Opera Unite pour diffuser des pages de phishing et du contenu malveillant à partir de votre profil. Les services de partage de fichiers et de téléchargement de fichiers rendent le contenu du propriétaire du service à l'intérieur du navigateur, ce qui rend l'utilisateur vulnérable au phishing et à d'autres attaques de logiciels malveillants. Par exemple, avant de diffuser du contenu, j'hameçonne l'utilisateur pour lui fournir ses informations d'identification de l'opéra. L'utilisateur pourrait penser que le contenu provient de confiance operaunite.com et a donc une forte probabilité de tomber dans cette parodie.

Hébergement de pages de phishing et de logiciels malveillants Opera UniteHébergement de pages de phishing et de logiciels malveillants Opera Unite

6. CSRF-un téléchargement de fichier à partir d'un utilisateur de confiance - Supposons qu'un utilisateur de confiance utilise votre service de téléchargement de fichiers, c'est-à-dire qu'il a fourni des informations d'identification pour y accéder. Dans le même temps, si cet utilisateur se rend sur mon site malveillant, je peux lui faire télécharger des fichiers arbitraires sur votre ordinateur, brisant ainsi la confiance que vous avez en cet utilisateur. Si le propriétaire du service clique accidentellement sur ce fichier, il s'affiche à l'intérieur du navigateur (grâce à la détection automatique du type MIME) et le poof de votre XSS s'exécute. Dans l'exemple ci-dessous, j'ai écrit du code pour voler votre mot de passe d'accès au service. Veuillez noter que cet exploit nécessite que votre utilisateur de confiance accède au service à partir de n'importe quel navigateur autre qu'Opera car Opera échappe correctement les noms de fichiers. Cet exploit est sorti depuis un an et demi, mais les éditeurs de navigateurs n'ont pas’t ressenti le besoin de résoudre ce problème (fonctionne toujours pour IE8, Firefox 3.5.2).

01.
02.
03. 04.Type de contenu: texte / html; «>
05.
06.
07.var xhr = new XMLHttpRequest ();
08.xhr.onreadystatechange = function () {
09.if (xhr.readyState == 4) {
10.si (xhr.status == 200) {
11. modèle de var = /<[^>] * unite-aclPassword ”valeur =” ([^>] *) ”>/je;
12.if (pattern.test (xhr.responseText))
13. {
14.alert («Votre mot de passe acl est:« + RegExp. $ 1);
15.}
16.}
17.}
18.};
19.
20.xhr.open («GET», «http://admin.home.infernosec2.operaunite.com/file_uploader/admin/», true);
21.xhr.send (null);
22.
23.
24.
25.
26.
27.document.forms [0] .submit ();
28.
29.

Opera Unite CSRF ing un téléchargement de fichier sur File UploaderOpera Unite CSRF ing un téléchargement de fichier sur File Uploader

Opera Unite Uploaded File XSS révèle un mot de passe d'accès sensibleOpera Unite Uploaded File XSS révèle un mot de passe d'accès sensible

sept. CSRF-ing une note sur le réfrigérateur - Le service Réfrigérateur est un service non authentifié qui est destiné aux utilisateurs de laisser des notes sur votre ordinateur. Si vous activez ce service, un attaquant peut laisser d'étranges notes amusantes désobligeantes ou simplement remplir la file d'attente (limite par défaut -24) afin que personne d'autre ne puisse rien publier. Cependant, il ne voudra peut-être pas le faire car son adresse IP, etc. peut être enregistrée par Opera Servers. Donc, le meilleur ou le plus furtif est de faire en sorte que d'autres utilisateurs le fassent pour lui. Tout utilisateur qui visite son site malveillant peut être amené à publier automatiquement des notes sur n'importe quel profil Opera Unite. Cela inclut également le propriétaire du service qui peut être contraint de publier quelque chose sur son ordinateur :):) .

01.
02.
03.
04.
05.
06.
07.
08.
09.document.forms [0] .submit ();
dix.
11.

Opera Unite CSRF ing une note sur le réfrigérateurOpera Unite CSRF ing une note sur le réfrigérateur

8. CSRF-Ing anyuserid pour rejoindre un salon de discussion - Semblable à (6), vous pouvez forcer tout utilisateur de confiance (qui est déjà authentifié sur votre salon de discussion avec un ID utilisateur particulier) à se joindre à d'autres noms d'utilisateur. Il ou elle ne peut pas être forcé de publier quoi que ce soit (protection csrf), cependant, cela peut être abusé pour perturber toute conversation existante. J'ai encore du mal à comprendre pourquoi quelqu'un veut autoriser une telle fonctionnalité ?

1.
2.
3.
4.
5.
6.document.forms [0] .submit ();
sept.
8.

Opera Unite CSRF ing anyfakeid user to join the LoungeOpera Unite CSRF ing anyfakeid user to join the Lounge

9. XSS ing le cookie unite-session-id, fonctionne pour presque tous les services - Il y a un problème XSS dans le cookie unite-session-id, dont la valeur est répercutée dans le javascript de la réponse http. J'appellerais cela un problème de faible gravité car cette attaque d'écrasement des en-têtes http n'est possible qu'avec les anciennes versions de Flash (comme 7,8, les versions inférieures de 9) et IE6. Encore un bug :):)

Opera Unite XSS utilisant le cookie unite-session-id à l'aide de Flash plus ancienOpera Unite XSS utilisant le cookie unite-session-id à l'aide de Flash plus ancien

dix. Clickjacking n'importe quelle page de service - Opera Team a pris les mesures nécessaires pour protéger les pages du propriétaire du service contre tout type d'exploitation de détournement de clics. Cependant, ils n'offrent aucune protection pour les pages de service. Avec la liste actuelle des services et opérations par défaut autorisés par les utilisateurs de confiance, je ne peux pas penser à des exploits intéressants. Un exemple peut être de cliquer sur un utilisateur de chat et de le forcer à se déconnecter d'une conversation. Je n'ai pas’t avoir beaucoup de temps à consacrer à cela. Mais lorsque de plus en plus de personnes commenceront à écrire leurs propres services d'opera unite qui permettent des interactions dynamiques avec les utilisateurs, ce type de protection sera certainement requis.

11. Incohérence dans la politique de mot de passe pour certains services - La plupart des services Opera Unite sont initialisés et protégés par un mot de passe alphanumérique à 8 ou 9 chiffres par défaut. Cependant, le service photo est protégé par un mot de passe par défaut de 4 caractères, qui est facilement cassable par la force brute (les photos sont considérées comme moins privées que les fichiers). De plus, chatroom n'est pas prêt à l'emploi et même si vous activez la protection par mot de passe, il récupère un mot de passe par défaut “défaut”. Ainsi, vos utilisateurs devront générer eux-mêmes un mot de passe fort, ce qui est très peu probable.

Les références :-

1. Détournement de clics - Jeremiah Grossman et Robert “RSnake” Hansen
http://ha.ckers.org/blog/20081007/clickjacking-details/

2. Forger des en-têtes de requête HTTP avec Flash - Amit Klein
http://www.securityfocus.com/archive/1/441014

3. Exploiter les vulnérabilités XSS sur les cookies - Sirdarckcat
http://sirdarckcat.blogspot.com/2008/01/exploiting-xss-vulnerabilities-on.html

4. Champs de téléchargement de fichiers CSRF - Kuza55
http://kuza55.blogspot.com/2008/02/csrf-ing-file-upload-fields.html

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me