Fonctionnalités de sécurité UEFI avancées pour Surface Pro 3

Cet article explique comment installer et configurer la mise à jour UEFI v3.11.760.0 pour activer davantage d’options de sécurité pour les appareils Surface Pro 3.

Pour gérer un contrôle plus précis de la sécurité des appareils Surface, la mise à jour UEFI v3.11.760.0 fournit des options de sécurité supplémentaires qui vous permettent de désactiver des appareils matériels spécifiques ou d’empêcher le démarrage à partir de ces appareils. Une fois la mise à jour de l’UEFI installée sur un appareil, vous pouvez la configurer automatiquement ou manuellement en exécutant un script.

Installation manuelle de la mise à jour de l’UEFI

Avant de pouvoir configurer les fonctionnalités de sécurité avancée de votre appareil Surface, vous devez tout d’abord installer la mise à jour v3.11.760.0 de l’UEFI. Cette mise à jour s’installe automatiquement si vous recevez vos mises à jour à partir de Windows Update. Pour en savoir plus sur la configuration de Windows pour recevoir des mises à jour automatiques à partir de Windows Update, voir Comment faire pour configurer et utiliser les mises à jour automatiques dans Windows.

Pour mettre à jour les fonctionnalités UEFI sur Surface Pro 3, vous pouvez télécharger et installer les mises à jour UEFI Surface à partir du pack des microprogrammes et des pilotes Surface Pro 3. Ces packs du microprogramme et des pilotes sont disponibles sur la page Surface Pro 3 du Centre de téléchargement Microsoft. Pour en savoir plus sur le microprogramme et les packs de pilotes, consultez Télécharger les pilotes et le microprogramme pour Surface. Les packs de microprogramme et de pilotes sont disponibles dans deux formats : Windows Installer autonome (.msi) et archive (.zip). Pour en savoir plus sur ces deux formats et sur la façon de les utiliser pour mettre à jour vos pilotes, consultez Gérer et déployer les mises à jour du microprogramme et du pilote Surface.

Configurer manuellement d’autres paramètres de sécurité

Remarque

Pour régler les paramètres de microprogramme sur un appareil Surface, celui-ci doit d’abord être hors tension. Appuyez longuement sur le bouton Augmenter le volume, puis appuyez sur et relâchez le bouton Marche/Arrêt. Relâchez le bouton Augmenter le volume lorsque l’appareil démarre.

Une fois la mise à jour UEFI v3.11.760.0 installée sur un appareil Surface, un autre menu UEFI nommé Advanced Device Security devient disponible. Si vous sélectionnez ce menu, les options suivantes s’affichent :

Option Description Paramètres disponibles (les paramètres par défaut sont en gras)
Démarrage réseau Active ou désactive la possibilité pour l’appareil Surface de démarrer à partir du réseau (également appelé démarrage PXE). Activé, Non démarrable
Port USB latéral Active ou désactive le port USB sur le côté de l’appareil Surface. En outre, le port USB peut être activé, mais sans autoriser le démarrage. Activé, Non démarrable, Désactivé
Port de station d’accueil Active ou désactive les ports sur la station d’accueil de l’appareil Surface. En outre, le port de station d’accueil peut être activé, tout en étant capable de bloquer le démarrage à partir d’un port USB ou Ethernet quelconque dans la station d’accueil. Activé, Non démarrable, Désactivé
Caméra frontale Active ou désactive la caméra frontale de l’appareil Surface. Activé, Désactivé
Caméra arrière Active ou désactive la caméra arrière de l’appareil Surface. Activé, Désactivé
Audio intégré Active ou désactive l’audio sur l’appareil Surface. Activé, Désactivé
microSD Active ou désactive la fente microSD sur l’appareil Surface. Activé, Désactivé
WiFi Active ou désactive le transmetteur Wi-Fi intégré à l’appareil Surface. Désactive également le Bluetooth. Activé, Désactivé
Bluetooth Active ou désactive le transmetteur Bluetooth intégré à l’appareil Surface. Activé, Désactivé

Automatiser davantage de paramètres de sécurité

En tant que professionnel de l’informatique disposant de privilèges administratifs, vous pouvez automatiser la configuration des paramètres UEFI à l’aide des outils de microprogramme Surface Pro 3 (476 Ko) disponibles dans le Centre de téléchargement Microsoft. Ces outils installent un assembly .NET qui peut être appelé à partir d’applications ou de scripts personnalisés quelconques.

Conditions préalables

  • Les exemples de scripts de cette page appliquent l’extension mentionnée précédemment et supposent donc que l’outil est installé sur l’appareil géré.
  • Les scripts doivent être exécutés avec des privilèges d’administrateur.
  • La commande Windows PowerShell Set-ExecutionPolicy Unrestricted doit être appelée avant d’exécuter des exemples de scripts s’ils ne sont pas signés numériquement.

Exemples de scripts

Remarque

Le mot de passe UEFI utilisé dans les exemples de scripts est présenté en texte clair. Nous vous recommandons vivement d’enregistrer les scripts dans un emplacement protégé et de les exécuter dans un environnement contrôlé.

Afficher toutes les options configurables :

# Load the extension 
[System.Reflection.Assembly]::Load("SurfaceUefiManager, Version=1.0.5483.22783, Culture=neutral, PublicKeyToken=20606f4b5276c705")  
 
# Get the collection of all configurable settings 
$uefiOptions = [Microsoft.Surface.FirmwareOption]::All() 
 
foreach ($uefiOption in $uefiOptions) 
{ 
    Write-Host "Name:" $uefiOption.Name 
    Write-Host " Description =" $uefiOption.Description 
    Write-Host " Current Value =" $uefiOption.CurrentValue 
    Write-Host " Default Value =" $uefiOption.DefaultValue 
    Write-Host " Proposed Value =" $uefiOption.ProposedValue 
     
    # This gives usage and validation information 
    Write-Host " Allowed Values =" $uefiOption.FriendlyRegEx 
    Write-Host " Regular Expression =" $uefiOption.RegEx 
     
    Write-Host 
}

Définir ou modifier le mot de passe UEFI :

# Load the extension 
[System.Reflection.Assembly]::Load("SurfaceUefiManager, Version=1.0.5483.22783, Culture=neutral, PublicKeyToken=20606f4b5276c705")  
 
# Must supply UEFI administrator Password if set 
# If it is not currently set this is ignored 
[Microsoft.Surface.FirmwareOption]::Unlock("1234") 
 
$Password = [Microsoft.Surface.FirmwareOption]::Find("Password") 
 
# Set New value to 12345 
$Password.ProposedValue = "12345"

Vérifier l’état des modifications proposées :

# Load the extension 
[System.Reflection.Assembly]::Load("SurfaceUefiManager, Version=1.0.5483.22783, Culture=neutral, PublicKeyToken=20606f4b5276c705")  
 
# Check update status 
$updateStatus = [Microsoft.Surface.FirmwareOption]::UpdateStatus 
$updateIteration = [Microsoft.Surface.FirmwareOption]::UpdateIteration 
Write-Host "Last Update Status =" $updateStatus 
Write-Host "Last Update Iteration =" $updateIteration 
 
# Get the individual results for the last proposed update 
# If the device has never had an update attempt this will be an empty list 
$details = [Microsoft.Surface.FirmwareOption]::UpdateStatusDetails 
Write-Host $details.Count "Settings were proposed" 
if ($details.Count -gt 0) 
{ 
    Write-Host "Result Details" 
    foreach ($detail in $details.GetEnumerator()) 
    { 
        Write-Host " " $detail.Key "=" $detail.Value 
    } 
}

Rétablir les valeurs par défaut de l’UEFI :

# Load the extension 
[System.Reflection.Assembly]::Load("SurfaceUefiManager, Version=1.0.5483.22783, Culture=neutral, PublicKeyToken=20606f4b5276c705")  
 
# Must supply UEFI administrator Password if set 
# If it is not currently set this is ignored 
[Microsoft.Surface.FirmwareOption]::Unlock("1234") 
 
# Get the collection of all configurable settings 
$uefiOptions = [Microsoft.Surface.FirmwareOption]::All() 
 
# Reset all options to the factory default 
foreach ($uefiOption in $uefiOptions) 
{ 
    $uefiOption.ProposedValue = $uefiOption.DefaultValue 
}

Interprétation du code d’état

Les codes status suivants aident à interpréter les résultats des modifications de configuration UEFI :

  • 00 - La mise à jour proposée a réussi
  • 02 - L’une des valeurs proposées contenait une valeur non valide
  • 03 - Il y a eu un jeu de valeurs proposé qui n’a pas été reconnu
  • 0F : le mot de passe de déverrouillage ne correspond pas au mot de passe actuellement défini