ASP.NET 4.0: Lekérés ellenőrzés kikapcsolása

A lekérés ellenőrzés (request validation) célja a weboldalak közötti keresztlekéréses támadások (Cross-Site Scripting, XSS) megakadályozása oly módon, hogy alapértelemezés szerint az ASP.NET alkalmazás nem fogad el olyan HTML bevitelt szövegdobozokba, amelyek megjelenítve scriptek futását eredményeznék. A szokásos HTML tag-ek, pl. <b>félkövér</b> csak HTML kódolva, &lt;b&gt;fékövér&lt;/b&gt; tárolhatók.

Ha ASP.NET < 4 alatt szükséges kódolás nélkül tárolni a HTML bevitelt, az aspx lap direktívájában lehet kikapcsolni az ellenőrzést:

<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="MyPage.aspx.vb" Inherits="MyProject.MyPage"
Culture="hu-HU"  UICulture="hu-HU" %>

helyett

<%@ Page Language="vb" AutoEventWireup="false"
CodeBehind="MyPage.aspx.vb" Inherits="MyProject.MyPage"
Culture="hu-HU" ValidateRequest="false" UICulture="hu-HU" %>

ASP.NET 4 alatt ezen felül szükség van a korábbi verziók ellenőrzési módjának bekapcsolására is a web.config fájlban:

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <system.web>
    <httpRuntime requestValidationMode="2.0" />
  </system.web>
</configuration>

A fentiek elkerülhetők HTML en/dekódolással.

Advertisements

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s