Empfohlene Vorgehensweisen für die Sicherheit in Visual Studio SDK
VSIP-Partner sollten sicherstellen, dass sie eine Aufgabe verfügen, um Sicherheitslücken zu verstehen, sodass die möglichen besten Produkte erstellen können.
Unterstützt eines sicher produkts schützen Folgendes:
Vertraulichkeit, Integrität und Verfügbarkeit Informationen des Kunden.
Integrität und Verfügbarkeit der Verarbeitungsressourcen unter Kontrolle des Systems besitzers oder - Administrators.
Sicherheitslücke
Eine Sicherheitslücke ist eine Schwäche in einem Produkt, das es unmöglich, die bösartigen Aktivitäten des Angreifers zu verhindern, auch wenn das Produkt ordnungsgemäß verwendet wird. Im Folgenden werden einige mögliche böswillige Aktivitäten:
Abrufen von Berechtigungen auf einem Computer, die höher ist als die des Benutzers befinden.
Der Vorgang des Computers des Benutzers übernehmen.
Daten auf dem Computer des Benutzers gefährden.
Wichtig
Gehen Sie nicht davon aus, dass Ihre Anwendung nur in bestimmten Umgebung ausgeführt wird.Die Anwendung wird in den Einstellungen verwendet werden, die nicht erwarteten, insbesondere wenn die Anwendung gängig wird.Gehen Sie stattdessen, dass der Code in feindliche Umgebung ausgeführt wird, und Entwurf, den Code zu schreiben und entsprechend zu testen.
Die Produkte und Systemen, die mit Sicherheit als Funktion entwickelt wurden, und die Startseite erstellt wurden, sind als robuster als nachträgliche Konto mit Sicherheit geschrieben werden. Speichern Sie Produkte sind auch immuner für die Medien kritik, attraktiver für Benutzer und weniger aufwändig und Unterstützung und Upgrades.
Gefährliches API
Viele Personen kündigen eine bestimmte API an, z. B. gefährlich. Obwohl Aufrufe von einigen Funktionen unerwünschte Sicherheitslücken führen können, wenn sie falsch verwendet werden, deren Verwendung nicht unbedingt verbietend sicherer Code erzeugt. Trotzdem können mehrere Softwareprojekte erhaltene messbare Gewinne in der Sicherheit, indem Funktionen, die nicht sicher zu verwenden sind, als eine von vielen Sichere Entwicklung Verfahren verbieten. Weitere Informationen finden Sie im Anhang A der Microsoft Press-Buches Secure Code „von Michael Howard“ Schreiben und David LeBlanc.
Die wichtigste Aufgabe, die in jeder API gefährliches Erläuterung zu verstehen ist, dass die meisten Sicherheitsprobleme in der vertrauend Eingaben entstehen, ohne diese angemessen zu überprüfen. Stellen Sie sicher, dass Sie Ablaufverfolgungsdaten, wie sie in Code und in Frage die Auswirkungen von Vorgängen über die Daten stammen. Sie können sicherem Code schreiben, indem Sie die meisten Funktionen verwenden, wenn die Dateneingaben wohl geformt und für Vertrauensstellungsinformationen verwenden " aktiviert sind.
Benutzerkontensteuerung (User Account Control, UAC) in Windows Vista
Windows Vista fügt eine Funktion, die Benutzerkontensteuerung (User Account Control, UAC) bezeichnet wird, die Auswirkungen auf die Sicherheit hat, die VSPackage-Entwickler verstehen müssen. UAC reduziert die Angriffs belichtung Anwendungen und des Betriebssystems. Weitere Informationen finden Sie unter Entwickler-Methoden und Richtlinien für Anwendungen in einer Umgebung am wenigsten privilegiertenunter.
Um Visual Studio auf Windows Vistazu installieren, müssen Sie Administratorrechte verfügen.
Bei aktivierter Benutzerkontensteuerung verfügt über ein Administrator die gleichen Berechtigungen, z. B. einen Standardbenutzer auf einen Prozess, der Administratorrechte benötigt, angefordert wird. Der angeforderte Vorgang erfordert den Administrator, damit ein Benutzer über die Berechtigung fortgesetzt wird. Wenn diese Berechtigung erteilt wird, nimmt nur, wenn der Prozess beendet wird. Zum Beispiel erfordert das Schreiben in einem Schlüssel in den HKEY_LOCAL_MACHINE-Registrierungshiven oder ein Verzeichnis im Ordner Programme Administratorrechte. mit aktivierter Benutzerkontensteuerung ist die explizite Berechtigung von einem Administrator Benutzer erforderlich, um die Schreibvorgang abzuschließen.
Um die Anzahl der Eingabeaufforderungen zu minimieren, wirkt sich UAC-Ausweitung von Rechten einen ganzen Prozess und tritt nur dann, wenn die Prozess gestartet wird. Ausweitung von Rechten für VSPackages tritt ein, sobald Windows Vista auf Start. VSPackage kann nicht auf einer anderen Ebene von Rechten als Visual Studio und andere VSPackages ausgeführt werden.
Bevor Windows Vista UAC einführte, können Entwickler i. d. R. Visual Studio mit Administratorberechtigungen ausgeführt, auch wenn sie nicht erforderlich waren. Deshalb können sie auch nur VSPackages aus, das über Administratorberechtigungen verfügt. Dies ist jedoch weiterhin erfüllt.
Visual Studio 2005 muss in einem verstärkten Prozess auf Windows Vistaausgeführt werden. Daher VSPackages ausgeführt werden auch in einem verstärkten Prozess. Allerdings müssen möglicherweise in zukünftigen Versionen von Visual Studio Ausweitung nicht. Stellen Sie sicher, dass der in der Zukunft VSPackages nicht unnötigerweise erhöhte Rechte erforderlich sind.
Beachten Sie, dass auch UAC Bereitstellung auswirken. müssen von Windows Installer-Paketen korrekt erstellt werden, um UAC zu unterstützen. Bewirkt einen verweigerte Zugriff eines „falsch erstellte Paket normalerweise“ Fehler, weil das Windows Installer-Modul versucht, standardmäßigen rechte zu verwenden, eine Aufgabe auszuführen, die erweiterte Berechtigungen erforderlich sind.
Siehe auch
Konzepte
Empfohlene Vorgehensweisen für die Sicherheit in VSPackages