Grundlagen der Sicherheit in ASP.NET MVC

Im Moment, in dem wir unsere Webanwendung für die Öffentlichkeit freigeben müssen, ergeben sich einige Sicherheitsanforderungen . Dies liegt hauptsächlich daran, dass es Tausende von Agenten gibt, die sich auf unsere Anwendung auswirken können, unabhängig davon, ob sie böswillig sind oder nicht, z. B .: fehlerhafte Daten, unsichere Kennwörter , Benutzerberechtigungen usw. Wenn wir auch böswillige Agenten wie SQL-Injections, Denial-of-Service-Angriffe, nicht autorisierten Zugriff usw. einbeziehen Wir sehen dann, dass wir unsere Anwendung sicherstellen müssen, um zumindest die offensichtlichsten Fälle zu vermeiden.

Um unsere Anwendung zu gewährleisten , müssen wir einige klare Grundlagen haben, das heißt, die Grundlagen müssen bereits unter Berücksichtigung der Sicherheit unserer Daten erstellt werden. Dadurch können wir sicherere Anwendungen und weniger Probleme haben, wenn wir in der Luft sind.

Sicherheit jeder Schicht

Es kann vorkommen, dass wir nur an die Sicherheit der Ebene denken, die direkt mit den Benutzern kommuniziert . Die Wahrheit ist, dass jede Ebene der Anwendung ihre eigenen Sicherheitsmaßnahmen haben muss.

Man kann sich vorstellen, dass durch das Sichern eines Formulars der Controller, der Ihre Daten automatisch empfängt, kein Risiko eingeht. In der Praxis ist dies jedoch nicht der Fall. Daher sollten wir Maßnahmen ergreifen, damit der Controller sicher ist, unabhängig davon, was im Formular geschieht.

asp_funda_seg.jpg

Damit wir jeden Abschnitt der Anwendung erweitern können, sehen wir, dass wir ziemlich detailliert sein müssen, aber dies zahlt sich letztendlich aus, wenn wir das Risiko um einen großen Prozentsatz reduzieren.

Vertraue niemals dem Benutzer

Obwohl wir möglicherweise eine ganze Benutzererfahrung entworfen haben, können die von Ihnen in unsere Anwendung eingegebenen Daten letztendlich gegen uns verwendet werden, dh wir sollten nicht darauf vertrauen, dass der Benutzer alles richtig platziert.

Was meinen wir, wenn wir niemals vertrauen?
Wir verweisen darauf, dass wir die eingegebenen Daten nicht ohne jegliche Behandlung verwenden sollten. Wir müssen den Typ jedes Elements, das der Benutzer in unsere Formulare eingibt, debuggen und validieren, um falsche Daten oder SQL-Injection- Versuche zu vermeiden.

Prinzip des Nebenprivilegs

Die Standardbenutzer sollten die geringstmögliche Anzahl an Berechtigungen haben , damit sie ihre Aufgaben nur erfüllen können. Wenn ein Benutzerprofil keine Dateien hochladen soll, sollte der Systembenutzer dieses Profils nicht einmal über diese Art von Berechtigungen verfügen.

Eventualverbindlichkeiten
Damit erreichen wir, dass im Moment einer Kontingenz nur autorisierte Benutzer die Daten ändern können und damit die externen Angreifer im Falle eines unzulässigen Zugriffs weniger Schaden anrichten können.

Wie wir sehen, haben wir einige Prinzipien, nach denen wir, wenn wir sie zum Zeitpunkt der Entwicklung unserer Anwendung berücksichtigen, die Sicherheitsrisiken zu einem großen Teil reduzieren können. Es versteht sich von selbst, dass jedes System, das an die Öffentlichkeit gerichtet ist, anfällig ist, so dass es niemals sein wird andere treffen die richtigen Vorsichtsmaßnahmen, auch wenn dies etwas länger dauert, bis das Projekt abgeschlossen ist.

See also  Ändern Sie die Verschlüsselungsstufe für die Dateifreigabe in Windows 10

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *