Sichere Clientanwendungen

Anwendungen bestehen in der Regel aus vielen Teilen, die alle so geschützt werden müssen, dass keine Daten verloren gehen oder das System nicht anderweitig gefährdet wird. Durch das Erstellen sicherer Benutzeroberflächen lassen sich viele Probleme vermeiden, weil Angreifer damit bereits blockiert werden, bevor sie überhaupt auf Daten oder Systemressourcen zugreifen können.

Validieren von Benutzereingaben

Beim Erstellen einer Anwendung mit Datenzugriff müssen Sie davon ausgehen, dass jede Benutzereingabe an sich schädlich sein kann, solange nichts Gegenteiliges bewiesen ist. Andernfalls gefährden Sie Ihre Anwendung. In .NET Framework gibt es Klassen, mit deren Hilfe Sie für Eingabesteuerelemente festlegen können, wie gültige Werte aussehen müssen. So können Sie z. B. festlegen, wie viele Buchstaben maximal eingegeben werden dürfen. Ereignishooks ermöglichen es Ihnen, Prozeduren zum Prüfen der Gültigkeit von Werten zu schreiben. Benutzereingabedaten können validiert und stark typisiert werden, sodass die Anwendung weniger anfällig für Skriptexploits und SQL Injection-Angriffe ist.

Wichtig

Zusätzlich muss die Benutzereingabe sowohl an der Datenquelle als auch in der Clientanwendung validiert werden, da Angreifer ansonsten Ihre Anwendung umgehen und die Datenquelle direkt angreifen könnten.

Sicherheit und Benutzereingaben
Beschreibt die Vorgehensweise bei kleinen und potenziell gefährlichen Fehlern im Zusammenhang mit der Benutzereingabe.

Überprüfen der Benutzereingabe in ASP.NET Web Pages
Enthält eine Übersicht über das Validieren der Benutzereingabe mit ASP.NET-Validierungssteuerelementen.

Benutzereingaben in Windows Forms
Enthält Links und Informationen zum Validieren von Eingaben mit Maus und Tastatur in einer Windows Forms-Anwendung.

Reguläre Ausdrücke von .NET Framework
Beschreibt die Verwendung der Regex-Klasse, mit der die Gültigkeit der Benutzereingabe geprüft werden kann.

Windows-Anwendungen

Sicherheit in Windows Forms
Erläutert das Sichern von Windows Forms-Anwendungen und stellt Links zu verwandten Themen bereit.

Windows Forms und nicht verwaltete Anwendungen
Beschreibt die Interaktion mit nicht verwalteten Anwendungen in einer Windows Forms-Anwendung.

ClickOnce-Bereitstellung für Windows Forms
Beschreibt die Verwendung einer ClickOnce-Bereitstellung in einer Windows Forms-Anwendung und erläutert die Auswirkungen auf die Sicherheit.

ASP.NET und XML-Webdienste

ASP.NET-Anwendungen müssen im Allgemeinen den Zugriff auf einige Teile der Website einschränken und stellen andere Mechanismen für Datenschutz und die Sicherheit von Websites bereit. Über diese Links erhalten Sie nützliche Informationen zum Absichern Ihrer ASP.NET-Anwendung.

XML-Webdienste stellen Daten bereit, die von ASP.NET-Anwendungen, Windows Forms-Anwendungen oder anderen Webdiensten genutzt werden können. Um die Sicherheit des Webdiensts und die der Clientanwendung müssen Sie sich selbst kümmern.

Weitere Informationen finden Sie in den folgenden Ressourcen.

Resource BESCHREIBUNG
Schützen von ASP.NET-Websites Erläutert das Sichern von ASP.NET-Anwendungen.
Sichern von mit ASP.NET erstellten XML-Webdiensten Veranschaulicht das Implementieren von Sicherheit für einen ASP.NET-Webdienst.
Übersicht über Skript-Exploits Erläutert, wie Sie sich vor Angriffen mit Skriptexploits schützen können, bei denen versucht wird, bösartige Zeichen in eine Webseite einzufügen.
Grundlegende Sicherheitsmaßnahmen für Webanwendungen Enthält allgemeine Sicherheitsinformationen und Links zu weiteren Erläuterungen.

Remoting

Mit .NET-Remoting können Sie auf einfache Weise weit verteilte Anwendungen erstellen, wobei sich die einzelnen Anwendungskomponenten auf demselben Computer oder weltweit an verschiedenen Standorten befinden können. Sie können Clientanwendungen erstellen, die Objekte in anderen Prozessen auf demselben Computer oder auf einem beliebigen anderen Computer im Netzwerk verwenden. Sie können .NET Remoting auch für die Kommunikation mit anderen Anwendungsdomänen im selben Prozess verwenden.

Resource BESCHREIBUNG
Konfiguration von Remoteanwendungen Erläutert, wie Sie Remoting-Anwendungen so konfigurieren können, dass allgemeine Probleme vermieden werden.
Sicherheit beim Remoting Beschreibt die Authentifizierung und Verschlüsselung und enthält darüber hinaus weitere Sicherheitsthemen im Zusammenhang mit Remoting.
Überlegungen zu Sicherheit und Remoting Beschreibt Sicherheitsprobleme mit geschützten Objekten und dem anwendungsdomänenübergreifenden Arbeiten.

Siehe auch