Während einer Diskussion über Sicherheit fragte ein Entwickler in meinem Team, ob es eine Möglichkeit gäbe zu sagen, ob ViewState manipuliert wurde. Es ist mir peinlich zu sagen, dass ich die Antwort nicht kannte. Ich sagte ihm, ich würde es herausfinden, dachte aber, ich würde hier jemandem die Chance geben, zuerst zu antworten. Ich weiß, dass es eine automatische Validierung gibt, aber gibt es eine Möglichkeit, dies manuell zu tun, wenn die Ereignisvalidierung nicht aktiviert ist?Wie können Sie feststellen, ob der Viewstatus in einer ASP.Net-Anwendung manipuliert wurde?
1
A
Antwort
6
EnableViewStateMac Seite Richtlinie
0
Sie könnten in der Lage sein, es manuell zu tun, aber Sie würden nur den gleichen Algorithmus implementieren, die bereits für Sie da ist. Es ist im Allgemeinen eine schlechte Idee, die ViewState-Überprüfung auf einer Seite zu deaktivieren.
2
ViewState ist standardmäßig MIME-codiert und mit einem MAC-Schlüssel (entweder von der Maschine oder von der Datei web.config) gehashed, was dazu beiträgt, Manipulationen zu verhindern (d. H. Die Dekodierung explodiert). Sie können ViewState auch verschlüsseln und komprimieren, wenn Sie weiteren Schutz und weniger Overhead benötigen. Siehe MS ViewState und CodeProject.com
Verwandte Themen
- 1. In CakePHP, wie können Sie feststellen, ob ein Feld in einer Bearbeitungsaktion geändert wurde?
- 2. Wie können Sie feststellen, wann eine Android-Aktivität geladen wurde?
- 3. Wie können Sie feststellen, ob Sie sich gerade in der letzten Zeile einer HTML-Tabelle befinden?
- 4. Wie Sie feststellen können, ob Sie sich in einer Rake-Aufgabe befinden oder nicht
- 5. Wie können Sie feststellen, ob ein Rohroperator der letzte (oder erste) in einer Kette ist?
- 6. Wie können Sie feststellen, ob ein Formular vom Benutzer oder von Ihrem Code geschlossen wurde?
- 7. Wie können Sie feststellen, ob ein UIPrintInteractionController angezeigt wird?
- 8. Wie können Sie feststellen, ob Ihre MFC-Anwendung nicht reagiert?
- 9. Wie können Sie feststellen, ob Sitzungscookies verwendet werden?
- 10. Wie können Sie feststellen, ob Sie aufgrund Ihrer Gruppe in eine Datei mit SFTP schreiben können?
- 11. Django: Können Sie feststellen, ob ein zugehöriges Feld vorab abgerufen wurde, ohne es abgerufen zu haben?
- 12. Wie Sie feststellen, ob ein Ordner in einer Sharepoint-Liste
- 13. Wie kann ich feststellen, ob eine Datei umbenannt wurde?
- 14. Wie kann ich feststellen, ob ein Prozess beendet wurde?
- 15. Wie Sie feststellen, ob die Timer-Task
- 16. Wie Sie feststellen können, ob das XML-Element in der XSD-Datei als erforderlich markiert ist
- 17. Wie kann ich feststellen, ob ein Bild photoshopped wurde?
- 18. Wie kann man feststellen, ob Swift mit Optimization kompiliert wurde?
- 19. Wie kann ich feststellen, ob ein `NSManagedObject` gelöscht wurde?
- 20. , wie Sie feststellen, ob die Variable
- 21. Wie kann ich feststellen, ob die Einfügetaste gedrückt wurde?
- 22. xsl: Wie kann ich feststellen, ob eine Variable deklariert wurde?
- 23. Validierung der Viewstatus-MAC in Safari fehlgeschlagen
- 24. Wie kann ich feststellen, ob ein Realm erfolgreich aktualisiert wurde?
- 25. Wie kann ich feststellen, ob eine jQuery-Dialogabfrage initialisiert wurde?
- 26. Wie kann ich feststellen, ob ein UILabel berührt wurde?
- 27. Wie können Sie feststellen, ob Sie sich im Haupt-UI-Thread befinden? (In CF)
- 28. Wie kann eine Spring-Bean feststellen, ob sie selbst in einen AOP-Proxy eingebettet wurde?
- 29. Wie kann ich feststellen, ob eine Entität gespeichert wurde?
- 30. Wie kann ich feststellen, ob pc.onnegotiationneeded ausgelöst wurde, weil der Stream entfernt wurde?
Um genauer zu sein, können Sie EnableViewStateMac Seite für Seite oder in der Datei web.config aktivieren. –
Gut zu wissen, Scott! – Kilhoffer