Sichere Anwendungen, die auf dem .NET Framework

In diesem Artikel werden wichtige Überlegungen zum Schützen von Anwendungen beschrieben, die auf Microsoft .NET Framework basieren.

Ursprüngliche Produktversion: .NET Framework
Ursprüngliche KB-Nummer: 818014

Zusammenfassung

Dieser Artikel gehört zu einer Reihe von Artikeln, die detaillierte Informationen zu Anwendungen enthalten, die auf dem .NET Framework basieren.

Die Artikel in dieser Reihe umfassen die folgenden:

Anpassen .NET Framework Sicherheit auf Zonenbasis

Die .NET Framework weist verwalteten Assemblys Vertrauensebenen zu. Diese Zuweisungen basieren teilweise auf der Zone, in der die Assembly ausgeführt wird. Die Standardzonen sind "Mein Computer", "Lokales Intranet", "Internet", "Vertrauenswürdige Sites" und "Nicht vertrauenswürdige Websites". Möglicherweise müssen Sie die Vertrauensstufe erhöhen oder verringern, die einer dieser Zonen zugeordnet ist. Die .NET Framework enthält Tools zum Anpassen dieser Einstellungen.

Anpassen der Vertrauensebene in einer .NET Framework Assembly

Die .NET Framework enthält viele Möglichkeiten, die Vertrauensebene zu bestimmen, die Sie einer Assembly gewähren sollten. Sie können jedoch Ausnahmen von den Regeln vornehmen, damit eine bestimmte Assembly eine höhere Vertrauensebene erhält, als sie normalerweise basierend auf den Beweisen erhält, die für die Common Language Runtime bereitgestellt werden. Die .NET Framework stellt ein Assistententool bereit, das speziell für diesen Zweck verwendet wird.

Wiederherstellungsrichtlinienebenen, die angepasst wurden

Als Administrator haben Sie vollständige Kontrolle über den Zugriff, den Sie Assemblys gewähren, die auf den verschiedenen Vertrauensebenen ausgeführt werden. Wenn Sie Vertrauensebenen anpassen, können Probleme auftreten, wenn Sie eine Anwendung ausführen, die in der Regel unter einer Standardvertrauensstufe ausgeführt wird. Sie können Richtlinienebenen jedoch schnell auf ihre Standardeinstellungen wiederherstellen.

Auswerten der Berechtigungen, die einer Assembly erteilt werden

Wenn Sie über Sicherheitskonfigurationsrichtlinien für Unternehmen, Computer und Benutzer und anpassbare Vertrauensebenen verfügen, kann es schwierig sein, die Berechtigungen zu bewerten, die einer verwalteten Assembly erteilt wurden. Das .NET Framework-Konfigurationstool enthält eine einfache Methode zum Auswerten dieser Berechtigungen.

Überwachen Sie die Sicherheit von . MIT NET verbundene Anwendungen

Während Upgrades, Tests und Problembehandlungen kann sich die Konfiguration von Produktionssystemen auf unbeabsichtigte Weise ändern. Beispielsweise kann ein Administrator einem Benutzer Administratoranmeldeinformationen gewähren, während er bestimmt, ob ein Fehler mit Zugriffsrechten zusammenhängt. Wenn dieser Administrator nach Abschluss der Problembehandlung vergisst, diese erhöhten Anmeldeinformationen zu widerrufen, wird die Integrität des Systems gefährdet.

Da die Systemsicherheit durch diese Art von Aktion im Laufe der Zeit beeinträchtigt werden kann, ist es eine gute Idee, regelmäßige Überwachungen auszuführen. Dokumentieren Sie dazu die wichtigsten Aspekte eines unberührten Systems, um ein Baselinemeasure zu erstellen. Vergleichen Sie diese Einstellungen im Laufe der Zeit mit der Baseline, um festzustellen, ob Probleme aufgetreten sind, die das Sicherheitsrisiko erheblich reduzieren könnten.

Konfigurieren Sie eine . MIT NET verbundene Anwendung und SQL Server, eine alternative Portnummer für die Netzwerkkommunikation zu verwenden

Viele automatisierte Tools identifizieren verfügbare Dienste und Sicherheitsrisiken, indem sie bekannte Portnummern abfragen. Diese Tools umfassen sowohl legitime Sicherheitsbewertungstools als auch Tools, die böswillige Benutzer möglicherweise verwenden.

Eine Möglichkeit, die Gefährdung dieser Arten von Tools zu verringern, besteht darin, die Portnummer zu ändern, die von den Anwendungen verwendet wird. Sie können diese Methode auf anwenden. MIT NET verbundene Anwendungen, die auf einer Back-End-SQL Server-Datenbank basieren. Diese Methode funktioniert, wenn sowohl der Server als auch der Client ordnungsgemäß konfiguriert sind.

Sperren einer ASP.NET-Webanwendung oder eines Webdiensts

Es gibt viele Möglichkeiten, die Sicherheit von ASP.NET Webanwendungen und Webdiensten zu erhöhen. Sie können beispielsweise Paketfilterung, Firewalls, restriktive Dateiberechtigungen, den ISAPI-Filter (URL Scan Internet Server Application Programming Interface) und sorgfältig kontrollierte SQL Server-Berechtigungen verwenden. Es ist eine gute Idee, diese verschiedenen Methoden zu überprüfen, um die Sicherheit für ASP.NET Anwendungen zu gewährleisten.

Konfigurieren von NTFS-Dateiberechtigungen zum Erhöhen der Sicherheit von ASP.NET Anwendungen

Ntfs-Dateiberechtigungen (New Technology File System) sind weiterhin eine wichtige Sicherheitsebene für Webanwendungen. ASP.NET Anwendungen enthalten viel mehr Dateitypen als frühere Webanwendungsumgebungen. Die Dateien, auf die anonyme Benutzerkonten Zugriff haben müssen, sind nicht offensichtlich.

Konfigurieren SQL Server Sicherheit für Anwendungen, die auf dem .NET Framework

Standardmäßig gewährt SQL Server Benutzern nicht die Möglichkeit, Datenbanken abzufragen oder zu aktualisieren. Diese Regel gilt auch für ASP.NET Anwendungen und das ASPNET-Benutzerkonto. Damit ASP.NET Anwendungen zugriff auf Daten erhalten können, die in einer SQL Server-Datenbank gespeichert sind, muss der Datenbankadministrator Berechtigungen für das ASPNET-Konto gewähren.

Weitere Informationen zum Konfigurieren von SQL Server, um Abfragen und Updates von ASP.NET Anwendungen zuzulassen, finden Sie unter Konfigurieren von Berechtigungen für Datenbankobjekte.

Konfigurieren von URLScan zum Erhöhen des Schutzes von ASP.NET Webanwendungen

Wenn Sie URLScan auf einem Iis 5.0-Server (Internet Information Services 5.0) installieren, ist es so konfiguriert, dass ASP 3.0-Anwendungen ausgeführt werden können. Wenn Sie die .NET Framework installieren, wird die URLScan-Konfiguration jedoch nicht aktualisiert, um die neuen ASP.NET-Dateitypen einzuschließen. Wenn Sie die zusätzliche Sicherheit des URLScan ISAPI-Filters für Ihre ASP.NET Anwendungen wünschen, passen Sie die URLScan-Konfiguration an.

Authentifizierung für ASP.NET Webanwendungen erforderlich

Viele ASP.NET Anwendungen lassen keinen anonymen Zugriff zu. Eine ASP.NET Anwendung, die eine Authentifizierung erfordert, kann eine der folgenden drei Methoden verwenden: Formularauthentifizierung, .NET Passport-Authentifizierung und Windows-Authentifizierung. Jede Authentifizierungsmethode erfordert eine andere Konfigurationsmethode.

Einschränken des Zugriffs bestimmter Benutzer auf angegebene Webressourcen

ASP.NET umfasst die Formularauthentifizierung. Dies ist eine einzigartige Möglichkeit, Benutzer zu authentifizieren, ohne Windows-Konten zu erstellen. ASP.NET umfasst auch die Möglichkeit, diesen Benutzern den Zugriff auf verschiedene Webressourcen zu gewähren oder zu verweigern.

Weitere Informationen zum Steuern des Zugriffs auf Webressourcen pro Benutzer finden Sie unter Einschränken des Zugriffs bestimmter Benutzer auf angegebene Webressourcen.

Einschränken der Webdienstprotokolle, die ein Server zulässt

Standardmäßig unterstützt ASP.NET drei Möglichkeiten für Webdienstclients, Anforderungen an Webdienste auszustellen: SOAP, HTTP GET und HTTP PUT. Die meisten Anwendungen erfordern jedoch nur eine dieser drei Methoden. Es ist eine gute Idee, die Angriffsfläche zu reduzieren, indem Sie nicht verwendete Protokolle deaktivieren.

Lassen Sie keinen Browserzugriff auf zu. NET-verbundene Webdienste

ASP.NET Webdienste bieten eine browserfreundliche Oberfläche, die Entwicklern das Erstellen von Webdienstclients erleichtert. Diese benutzerfreundliche Schnittstelle ermöglicht es jedem, der den Webdienst erreichen kann, die vollständigen Details der verfügbaren Methoden und alle erforderlichen Parameter anzuzeigen. Dieser Zugriff ist für öffentliche Webdienste nützlich, die nur öffentlich verfügbare Methoden enthalten. Es kann jedoch die Sicherheit privater Webdienste verringern.

Weitere Informationen zum Steuern des Zugriffs auf Webressourcen pro Benutzer finden Sie unter Einschränken des Zugriffs bestimmter Benutzer auf angegebene Webressourcen.

Verwenden von ASP.NET zum Schützen von Dateitypen

Die Struktur von ASP.NET Anwendungen bewirkt, dass viele private Dateien mit Dateien gespeichert werden, die Endbenutzer anfordern. ASP.NET schützt diese Dateien, indem Anforderungen für die Dateien abgefangen und ein Fehler zurückgegeben wird. Sie können diesen Schutztyp mithilfe von Konfigurationseinstellungen auf jeden Dateityp erweitern. Wenn Ihre Anwendung ungewöhnliche Dateitypen enthält, die privat bleiben sollten, können Sie ASP.NET Dateischutz verwenden, um diese Dateien zu schützen.

References

Weitere Informationen zum Schützen von Anwendungen, die auf dem .NET Framework basieren, finden Sie unter Neuerungen in Windows 10 Bereitstellung.