Bulletin de sécurité

Bulletin de sécurité Microsoft MS13-103 - Important

Une vulnérabilité dans ASP.NET SignalR peut autoriser l’élévation de privilèges (2905244)

Publication : 10 décembre 2013

Version : 1.0

Informations générales

Résumé

Cette mise à jour de sécurité résout une vulnérabilité signalée en privé dans ASP.NET SignalR. La vulnérabilité peut autoriser l’élévation de privilèges si un attaquant reflète un code JavaScript spécialement conçu dans le navigateur d’un utilisateur ciblé.

Cette mise à jour de sécurité est évaluée comme importante pour ASP.NET Les versions 1.1.0, 1.1.1, 1.1.2, 1.1.3 et 2.0.0 et toutes les éditions prises en charge de Microsoft Visual Studio Team Foundation Server 2013. Pour plus d’informations, consultez la sous-section, Les logiciels affectés et non affectés, dans cette section.

La mise à jour de sécurité résout la vulnérabilité en veillant à ce que ASP.NET SignalR encode correctement l’entrée utilisateur. Pour plus d’informations sur la vulnérabilité, consultez la sous-section Questions fréquentes (FAQ) sur l’entrée de vulnérabilité spécifique dans la section suivante, Informations sur les vulnérabilités.

Recommandation

Pourles clients qui développent des applications web qui utilisentASP.NET SignalR :
Les clients qui développent des applications web qui utilisent ASP.NET fonctionnalité SignalR sont encouragés à suivre les instructions de mise à jour de la section Security UpdateDeployment de ce bulletin pour obtenir des instructions détaillées sur la façon de mettre à jour ASP.NET SignalR dans leurs environnements.

Pourles clientsexécutant desinstallations deMicrosoft Visual Studio Team Foundation Server2013 :
Pour les clients qui ont la mise à jour automatique activée et qui exécutent Microsoft Visual Studio Team Foundation Server 2013, la mise à jour sera téléchargée et installée automatiquement. Les clients qui n’ont pas activé la mise à jour automatique doivent case activée pour les mises à jour et installer cette mise à jour manuellement. Pour plus d’informations sur les options de configuration spécifiques dans la mise à jour automatique, consultez l’article de la Base de connaissances Microsoft 294871.

Pour les administrateurs et les installations d’entreprise ou les utilisateurs finaux qui souhaitent installer cette mise à jour de sécurité manuellement, Microsoft recommande aux clients d’appliquer la mise à jour au plus tôt à l’aide du logiciel de gestion des mises à jour, ou en case activée pour les mises à jour à l’aide du service Microsoft Update.

Consultez également la section Outils de détection et de déploiement et conseils, plus loin dans ce bulletin.

Article de la base de connaissances

Article de la base de connaissances 2905244
informations relatives aux fichiers Oui
Hachages SHA1/SHA2 Oui
Problèmes connus Aucun

Logiciels affectés et non affectés

Le logiciel suivant a été testé pour déterminer quelles versions ou éditions sont affectées. D’autres versions ou éditions dépassent leur cycle de vie de support ou ne sont pas affectées. Pour déterminer le cycle de vie de prise en charge de votre version ou édition logicielle, consultez Support Microsoft cycle de vie.

Logiciel affecté 

Outils pour développeurs Impact maximal sur la sécurité Évaluation de gravité agrégée Mises à jour remplacé
ASP.NET SignalR 1.1.x[1] \ (2903919) Élévation de privilège Important Aucun
ASP.NET SignalR 2.0.x[1] \ (2903919) Élévation de privilège Important Aucun
Microsoft Visual Studio Team Foundation Server 2013 \ (2903566) Élévation de privilège Important Aucun

[1]S’applique aux serveurs Windows qui hébergent des applications web prenant en charge ASP.NET fonctionnalités SignalR. La mise à jour, disponible en téléchargement uniquement, met à jour les versions 1.1.0, 1.1.1, 1.1.2 et 1.1.3 et 2.0.0 vers les dernières versions prises en charge (1.1.4 et 2.0.1 à la date de ce bulletin). Pour plus d’informations, consultez la section Déploiement des mises à jour de sécurité de ce bulletin.
** **

Logiciels non affectés

Logiciel et système d’exploitation
ASP.NET SignalR 1.0.0
ASP.NET SignalR 1.0.1
Microsoft Visual Studio .NET 2003 Service Pack 1
Microsoft Visual Studio 2005 Service Pack 1
Microsoft Visual Studio Team Foundation Server 2005 Service Pack 1
Microsoft Visual Studio 2008 Service Pack 1
Microsoft Visual Studio Team Foundation Server 2008 Service Pack 1
Microsoft Visual Studio 2010 Service Pack 1
Microsoft Visual Studio Team Foundation Server 2010 Service Pack 1
Microsoft Visual Studio LightSwitch 2011
Microsoft Visual Studio 2012
Microsoft Visual Studio Team Foundation Server 2012

Faq sur la mise à jour

Qu’est-ceque ASP.NET SignalR ? 
ASP.NET SignalR est une bibliothèque destinée aux développeurs ASP.NET qui simplifie le développement de fonctionnalités web en temps réel. ASP.NET SignalR autorise la communication bidirectionnelle entre le serveur et le client via JavaScript, ce qui permet aux serveurs d’envoyer du contenu aux clients connectés instantanément au fur et à mesure qu’il devient disponible (fonctionnalité Push). Pour plus d’informations sur ASP.NET SignalR, consultez En savoir plus sur ASP.NET SignalR.

Comment faire déterminer quelles versionsdeASP.NET SignalRareinstallé sur monsystème ? 
Pour déterminer les versions de ASP.NET SignalR déployées sur votre système, effectuez une recherche du disque dur système pour « SignalR ». Affichez les propriétés des fichiers Microsoft.AspNet.SignalR.Core.dll retournés dans la recherche pour afficher leurs numéros de version. Toutes les versions 1.1.x antérieures à la version 1.1.4 sont vulnérables et doivent être mises à jour. Toutes les versions 2.0.x antérieures à la version 2.0.1 sont vulnérables et doivent être mises à jour. Les versions 1.0.x trouvées ne sont pas vulnérables.

Comment faire mettre à niveau ma version de ASP.NET SignalR ?
Les instances de ASP.NET SignalR installées avec Visual Studio Team Foundation Server 2013 seront mises à jour via Microsoft Update. Toutefois, d’autres instances de ASP.NET SignalR résidant sur des systèmes de développement et des serveurs d’applications web doivent être mises à jour à l’aide de processus définis dans la section Déploiement des mises à jourde sécurité de ce bulletin.

Cette mise à jour va-t-elle mettre à niveau ma version de ASP.NET SignalR ?  
Non. La mise à jour met à jour la version corrective installée sur un système, mais ne met pas à niveau la version principale ou mineure. À compter de la publication de ce bulletin, deux versions majeures de ASP.NET SignalR sont prises en charge (versions 1.1.x et 2.0.x). La mise à jour met à jour toutes les versions 1.1.x vers la version 1.1.4 et les versions 2.0.x vers la version 2.0.1.

J’utilise une version plus anciennedu logiciel abordé dans ce bulletin de sécurité. Que dois-je faire ? 
Le logiciel concerné répertorié dans ce bulletin a été testé pour déterminer quelles versions sont affectées. D’autres versions sont passées au-delà de leur cycle de vie de support. Pour plus d’informations sur le cycle de vie des produits, consultez le site web Support Microsoft cycle de vie.

Il doit s’agir d’une priorité pour les clients qui ont des versions antérieures du logiciel à migrer vers des versions prises en charge afin d’éviter toute exposition potentielle aux vulnérabilités. Pour déterminer le cycle de vie de prise en charge de votre version logicielle, consultez Sélectionner un produit pour les informations de cycle de vie. Pour plus d’informations sur les Service Packs pour ces versions logicielles, consultez La politique de support du cycle de vie service Pack.

Les clients qui ont besoin d’un support personnalisé pour les logiciels plus anciens doivent contacter leur représentant de l’équipe de compte Microsoft, leur responsable de compte technique ou le représentant partenaire Microsoft approprié pour les options de support personnalisé. Les clients sans contrat Alliance, Premier ou Autorisé peuvent contacter leur bureau de vente Microsoft local. Pour obtenir des informations de contact, consultez le site web Microsoft Worldwide Information , sélectionnez le pays dans la liste des informations de contact, puis cliquez sur Atteindre pour afficher la liste des numéros de téléphone. Lorsque vous appelez, demandez à parler avec le directeur commercial premier support local. Pour plus d’informations, consultez le FAQ Support Microsoft politique de cycle de vie.

Informations sur les vulnérabilités

Évaluations de gravité et identificateurs de vulnérabilité

Les évaluations de gravité suivantes supposent l’impact maximal potentiel de la vulnérabilité. Pour plus d’informations sur la probabilité, dans les 30 jours suivant la publication de ce bulletin de sécurité, de l’exploitabilité de la vulnérabilité par rapport à son impact sur la gravité et la sécurité, consultez l’index exploitabilité dans le résumé du bulletin de décembre. Pour plus d’informations, consultez Microsoft Exploitability Index.

Logiciel affecté Vulnérabilité SignalR XSS - CVE-2013-5042 Évaluation de gravité agrégée
Outils pour développeurs
ASP.NET SignalR 1.1.x (2903919) Élévation de privilège importante Important
ASP.NET SignalR 2.0.x (2903919) Élévation de privilège importante Important
Microsoft Visual Studio Team Foundation Server 2013 (2903566) Élévation de privilège importante Important

Vulnérabilité SignalR XSS - CVE-2013-5042

Une vulnérabilité d’élévation de privilèges existe dans ASP.NET SignalR qui pourrait permettre à un attaquant d’accéder aux ressources dans le contexte de l’utilisateur ciblé.

Pour afficher cette vulnérabilité comme entrée standard dans la liste Des vulnérabilités et des expositions courantes, consultez CVE-2013-5042.

Facteurs d’atténuation

Microsoft n’a pas identifié de facteurs d’atténuation pour cette vulnérabilité.

Solutions de contournement

La solution de contournement fait référence à un paramètre ou à une modification de configuration qui ne corrige pas la vulnérabilité sous-jacente, mais qui permet de bloquer les vecteurs d’attaque connus avant d’appliquer la mise à jour. Microsoft a testé les solutions de contournement et les états suivants dans la discussion si une solution de contournement réduit les fonctionnalités :

  • Pour les serveurs Windows qui hébergent des applicationsweb à l’aidede ASP.NET fonctionnalité SignalR, la désactivation du protocolede transportASP.NET SignalRForever Frameoffre uneprotection temporaire contre la vulnérabilité.

    La désactivation du protocole de transport ASP.NET SignalR Forever Frame côté client et serveur est effectuée dans le code. Consultez les exemples suivants en guise d’aide pour désactiver le protocole dans votre environnement.

    Exemple de code pour désactiver le transport affecté du côté client :

    // If using the default hub connection
    $.connection.hub.start({ transport: ["webSockets", "serverSentEvents", "longPolling"] });
    
    // If using a manually-created connection
    var connection = $.connection("https://sample.com/signalr");
    connection.start({ transport: ["webSockets", "serverSentEvents", "longPolling"] });
    

    Exemple de code pour désactiver le transport affecté côté serveur lors de l’utilisation du programme de résolution de dépendance global par défaut :

    using Microsoft.AspNet.SignalR;
    using Microsoft.AspNet.SignalR.Transports;
    using Owin;
    namespace MyApplication
    {
        public static class Startup
        {
            public static void ConfigureSignalR(IAppBuilder app)
            {
                // If using the global dependency resolver
                TurnOfForeverFrame(GlobalHost.DependencyResolver);
                app.MapSignalR();
            }
            public static void TurnOfForeverFrame(IDependencyResolver resolver)
            {
                var transportManager = resolver.Resolve<itransportmanager>() as TransportManager;
                transportManager.Remove("foreverFrame");
            }
        }
    }
    
    
    Code example to disable the affected transport on the server side when using a custom dependency resolver:
    
    using Microsoft.AspNet.SignalR;
    using Microsoft.AspNet.SignalR.Transports;
    using Owin;
    namespace MyApplication
    {
        public static class Startup
        {
            public static void ConfigureSignalR(IAppBuilder app)
            {
                // If using a custom dependency resolver
                var resolver = GetCustomResolver();
                TurnOfForeverFrame(resolver);
                app.MapSignalR(new HubConfiguration
                {
                    Resolver = resolver
                });
            }
            private static IDependencyResolver GetCustomResolver()
            {
                return new DefaultDependencyResolver();
            }
            public static void TurnOfForeverFrame(IDependencyResolver resolver)
            {
                var transportManager = resolver.Resolve</itransportmanager><itransportmanager>() as TransportManager;
                transportManager.Remove("foreverFrame");
            }
        }
    }
    

    Impact de la solution de contournement. Après avoir implémenté la solution de contournement, les clients Internet Explorer peuvent présenter une vitesse de communication plus lente pour l’application SignalR.

  • Pour les systèmes avec Microsoft Visual Studio Team Foundation Server 2013 installés, Microsoft n’a identifié aucune solution de contournement.

FAQ

Quelle est l’étendue de la vulnérabilité ?
Il s’agit d’une vulnérabilité d’élévation de privilèges.

Quelles sont les causes de la vulnérabilité ?
La vulnérabilité est due au fait que ASP.NET SignalR encode incorrectement l’entrée utilisateur.

Qu’est-ce qu’un attaquant peut utiliser la vulnérabilité pour faire ?
Dans un scénario de navigation web, un attaquant peut refléter un code JavaScript spécialement conçu dans le navigateur de l’utilisateur, ce qui peut permettre à l’attaquant de modifier le contenu de la page, d’effectuer un hameçonnage ou d’effectuer des actions pour le compte de l’utilisateur ciblé.

Comment un attaquant pourrait-il exploiter lavulnérabilité ?
Dans un scénario d’attaque, un attaquant peut introduire dans le navigateur d’un utilisateur ciblé du contenu spécialement conçu pour fournir à l’attaquant l’accès aux ressources disponibles pour l’utilisateur ciblé.

Quels systèmes sont principalement exposés à la vulnérabilité ?
Dans un scénario de navigation web, l’exploitation réussie de cette vulnérabilité nécessite qu’un utilisateur soit connecté à un site web qui héberge ASP.NET SignalR. Par conséquent, tous les systèmes dans lesquels les navigateurs web sont fréquemment utilisés, tels que les stations de travail ou les serveurs terminal, sont les plus exposés à cette vulnérabilité. Les serveurs peuvent être plus risqués si les administrateurs autorisent les utilisateurs à parcourir et lire les e-mails sur les serveurs. Toutefois, les meilleures pratiques découragent fortement cette autorisation.

Que fait la mise à jour ?
La mise à jour résout la vulnérabilité en veillant à ce que ASP.NET SignalR encode correctement l’entrée utilisateur.

Quand ce bulletin de sécurité a été émis, cette vulnérabilité a-t-elle été divulguée publiquement ?
Non. Microsoft a reçu des informations sur cette vulnérabilité par le biais d’une divulgation coordonnée des vulnérabilités.

Quand ce bulletin de sécurité a été émis, Microsoft a-t-il reçu des rapports indiquant que cette vulnérabilité était exploitée ?
Non. Microsoft n’avait reçu aucune information pour indiquer que cette vulnérabilité avait été utilisée publiquement pour attaquer les clients lorsque ce bulletin de sécurité a été émis à l’origine.

Mettre à jour les informations

Outils et conseils de détection et de déploiement

Plusieurs ressources sont disponibles pour aider les administrateurs à déployer des mises à jour de sécurité. 

  • Microsoft Baseline Security Analyzer (Mo SA) permet aux administrateurs d’analyser les systèmes locaux et distants pour détecter les mises à jour de sécurité manquantes et les configurations incorrectes de sécurité courantes. 
  • Windows Server Update Services (WSUS), Systems Management Server (SMS) et System Center Configuration Manager aident les administrateurs à distribuer les mises à jour de sécurité. 
  • Les composants de l’évaluateur de compatibilité de mise à jour inclus avec la compatibilité des applications Shared Computer Toolkit facilitent le test et la validation des mises à jour Windows sur les applications installées. 

Pour plus d’informations sur ces outils et d’autres outils disponibles, consultez Outils de sécurité pour les professionnels de l’informatique. 

Déploiement des mises à jour de sécurité

Logiciel affecté

Pour plus d’informations sur la mise à jour de sécurité spécifique pour votre logiciel concerné, cliquez sur le lien approprié :

ASP.NET SignalR (toutes les versions)

Plusieurs options de mise à jour sont disponibles en fonction de votre scénario de déploiement. Choisissez la meilleure option pour votre scénario :

Pour les développeurs d’applications web compatibles avec SignalR ASP.NET

  • Option 1 :Mettre à jour vos packages de projet Visual Studio à l’aide de NuGet, recompiler votre application et déployer

    1. Ouvrez votre solution dans Visual Studio.
    2. Dans Explorateur de solutions, cliquez avec le bouton droit sur le nœud Références, puis cliquez sur Gérer les packages NuGet.
    3. Sélectionnez l’onglet Mises à jour. Une liste de packages avec mises à jour s’affiche dans le volet central.
    4. Sélectionnez le package Microsoft.AspNet.SignalR , puis cliquez sur Mettre à jour.
    5. Compilez et déployez votre application web.

    Pour plus d’informations sur la gestion des packages NuGet à l’aide de la boîte de dialogue NuGet, consultez Gestion des packages NuGet à l’aide de la boîte de dialogue.

  • Option 2 :Mettre à jour vos packages de projet Visual Studio à l’aide de l’interface utilisateur de la console Gestionnaire de package, recompiler votre application et déployer

    1. Ouvrez votre solution dans Visual Studio.
    2. Cliquez sur le menu Outils, sélectionnez Bibliothèque Gestionnaire de package, puis cliquez sur Gestionnaire de package Console.
    3. Dans la fenêtre du gestionnaire de package, entrez Update-Package Microsoft.AspNet.SignalR.
    4. Compilez et déployez votre application web.

    Pour plus d’informations sur l’utilisation de la console Gestionnaire de package, consultez Utilisation de la console Gestionnaire de package.

Pour les administrateurs système qui ne peuvent pas recompiler ASP.NET applications web compatibles SignalR

  • Mettre à jour ASP.NET SignalR sur les systèmes d’administration

    Pour protéger les serveurs avant de mettre à jour des projets et redéployer des applications web, installez la mise à jour à l’aide du lien fourni dans le tableau ci-dessous. Cela doit être considéré comme une protection intermédiaire pour les administrateurs informatiques jusqu’à ce que les applications déployées qui utilisent ASP.NET SignalR puissent être mises à jour.

    Mettre à jour le fichier SignalR-Ko 2903919.msi
    Commutateurs d’installation Consultez l’article 262841 de la Base de connaissances Microsoft
    Mettre à jour lefichier journal Non applicable
    Configuration requise pour le redémarrage Le redémarrage du système n’est pas obligatoire ; toutefois, IIS redémarre.
    Informations de suppression Utilisez Ajouter ou supprimer des programmes dans Panneau de configuration.
    Informations sur le fichier Consultez l’article 2903919 de la Base de connaissances Microsoft

Microsoft Visual Studio Team Foundation Server 2013 (toutes les versions)

Tableau de référence

Le tableau suivant contient les informations de mise à jour de sécurité pour ce logiciel.

Noms de fichiers de mise à jour de sécurité Pour Microsoft Visual Studio Team Foundation Server 2013 :\ TFS2013-Ko 2903566.exe
Commutateurs d’installation Consultez l’article 262841 de la Base de connaissances Microsoft
Mettre à jour le fichier journal Non applicable
Configuration requise pour le redémarrage Cette mise à jour peut nécessiter un redémarrage si les fichiers sont en cours d’utilisation.
Informations de suppression Utilisez Ajouter ou supprimer des programmes dans Panneau de configuration.
Informations sur le fichier Consultez l’article de la Base de connaissances Microsoft 2903566
Vérification de la clé de Registre Pour Microsoft Visual Studio Team Foundation Server 2013 :\ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\tfs\Servicing\12.0

Autres informations

Programme Microsoft Active Protections (MAPP)

Pour améliorer les protections de sécurité pour les clients, Microsoft fournit des informations sur les vulnérabilités aux principaux fournisseurs de logiciels de sécurité avant chaque version mensuelle de la mise à jour de sécurité. Les fournisseurs de logiciels de sécurité peuvent ensuite utiliser ces informations de vulnérabilité pour fournir des protections mises à jour aux clients via leurs logiciels ou appareils de sécurité, tels que les systèmes antivirus, les systèmes de détection d’intrusion basés sur le réseau ou les systèmes de prévention des intrusions basés sur l’hôte. Pour déterminer si les protections actives sont disponibles auprès des fournisseurs de logiciels de sécurité, accédez aux sites web de protection actifs fournis par les partenaires du programme, répertoriés dans les partenaires microsoft Active Protections Program (MAPP).

Support

Comment obtenir de l’aide et de la prise en charge de cette mise à jour de sécurité

Exclusion de responsabilité

Les informations fournies dans la Base de connaissances Microsoft sont fournies « telles quelles » sans garantie. Microsoft exclut toutes les garanties, expresses ou implicites, y compris les garanties de marchandabilité et d’adéquation à un usage particulier. En aucun cas, Microsoft Corporation ou ses fournisseurs ne sont responsables de dommages-intérêts, y compris les dommages directs, indirects, accessoires, accessoires, les pertes de bénéfices commerciaux ou les dommages spéciaux, même si Microsoft Corporation ou ses fournisseurs ont été informés de la possibilité de tels dommages- intérêts. Certains États n’autorisent pas l’exclusion ou la limitation de responsabilité pour des dommages indirects ou accessoires afin que la limitation ci-dessus ne s’applique pas.

Révisions

  • V1.0 (10 décembre 2013) : Bulletin publié.

Construit à 2014-04-18T13 :49 :36Z-07 :00