2009-06-16 14 views
15

Czytałem w systemie Runtime Engine Anti-XSS Security i wygląda na to, że jest to dobre rozwiązanie dla formularzy internetowych, ponieważ sprawdza kontrole poprzez odbicie i automatycznie koduje dane w odpowiednich przypadkach. Jednak ponieważ nie używam kontrolek po stronie serwera w ASP.NET MVC, nie wydaje się, aby był on skutecznym rozwiązaniem dla ASP.NET MVC. Czy to prawda, czy też coś mi brakuje?Czy należy używać mechanizmu wykonawczego zabezpieczeń Anti-XSS Security w środowisku ASP.NET MVC?

+1

Interesujące pytanie - niektórzy konsultanci ds. Bezpieczeństwa zachwycają się tym w inny dzień w pracy. Byłbym zainteresowany znalezieniem ludzi, którzy go adoptują. – RichardOD

Odpowiedz

3

Phil Haack ma interesujący post na blogu tutaj http://haacked.com/archive/2009/02/07/take-charge-of-your-security.aspx. Sugeruje użycie Anti-XSS w połączeniu z CAT.NET.

+0

Czytanie tego artykułu potwierdza moje zrozumienie braku kontroli po stronie serwera w ASP.NET MVC. "W MVC wymieniliśmy kontrole serwerów za pomocą naszych metod pomocniczych, które prawidłowo kodują dane wyjściowe" – Blegger

+2

[Zaktualizowany link] (http://haacked.com/archive/2009/02/07/take-charge-of-your- security.aspx) do wpisu na blogu Haacka. – patridge

8

Aparat wykonawczy zabezpieczeń Anti-XSS Security jest modułem HTTP zaprojektowanym głównie z myślą o aktualizowaniu starszych aplikacji ASP.NET. Jeśli już napisałeś aplikację ASP.NET MVC z odpowiednim oczyszczeniem danych za pomocą wbudowanych pomocników HTML (tj. Html.Encode()), to aparat Anti-XSS Engine nie dodaje nic nowego i wymaga dodatkowej konfiguracji (w celu uzyskania niezbędnych białych znaków). list) i sprawdzanie błędów.

Podsumowując, nie powinieneś polegać na silniku Anti-XSS, szczególnie jeśli polegasz na wyraźnej kontroli kiedy wejście jest i nie jest renderowane jako HTML.

+5

Rodzaj - Posiadam AntiXss i SRE i chociaż są częścią tego samego projektu, nie są tym samym. Kodowanie AntiXSS różni się od koderów .NET tym, że używamy bezpiecznych list, a nie niebezpiecznych list, aby zdecydować, które znaki należy zamienić na ich odpowiedniki heksadecymalne, a które nie. Ma to koszt wydajności, ale z natury jest bezpieczniejsze. Tak więc istnieje korzyść z używania tych procedur kodowania. Środowisko wykonawcze zabezpieczeń to inna bestia, jest to prosta zapora aplikacji, która wyszukuje typowe ataki. Części tego są specyficzne dla sieci, części współpracują z webformami i MVC – blowdart

Powiązane problemy