Biztonsági fejlesztések az ASP.NET 4.5-ben

Az ASP.NET számos funkcióját már kezdettől fogva a biztonsági szempontok szem előtt tartásával tervezték, – lásd például a ViewState védelmét – ez a kezdet azonban nem tegnap volt. A funkciók többsége utoljára a .NET 2.0-ban változott komolyabban és annak is már pár nap híján 7 éve, márpedig a biztonság alapjául szolgáló kriptográfia felett pedig ennyi év alatt könnyen eljárhat az idő. A másik probléma a kriptográfiával, hogy tudni kell helyesen használni, ami viszont nem mindig magától értetődő, és ez könnyen óriási hibákhoz vezethet (lásd MS10-070).

Ezen elvektől vezérelve az ASP.NET 4.5-ben jelentős változásokat vezettek be a biztonsági szolgáltatásokban, melyekről a .NET Web Development and Tools Blogon az elmúlt napokban Levi Broderick egy kiváló háromrészes sorozatot publikált Cryptographic Improvements in ASP.NET 4.5 címmel:

  1. Background regarding the use of cryptography in ASP.NET 4.
  2. Changes that were introduced in ASP.NET 4.5.
  3. Usage notes and miscellaneous Q&A.

Mindenkinek javaslom a teljes cikkek végigolvasását, nem zavaróan hosszúak, de azért röviden összefoglalom a lényeget:

  • Megnövelték a machine key entrópiáját, biztonságosabbá tették a használatát és újabb alkalmazás izolációs lehetőségeket vezettek be.
  • Szétválasztották a machine key felhasználási területeit (purpose), így ha az egyik helyen (például ScriptResource.axd) később hibát találnak, az nem veszélyeztet másik helyeket (például ViewState).
  • Új MachineKey.Protect és MachineKey.Unprotect függvények, ahol megadható a felhasználási terület, valamint egyszerre titkosít és MAC-kel. Egyúttal a korábbi Encode és Decode függvények deprecated-dé váltak.

Mindez persze nagyon mélyen érinti az ASP.NET számos területét, ami kompatibilitási problémákhoz vezethet. A problémák minimalizálása érdekében a fejlesztő csapat minden felhasználási területre egyedileg meghatározta, hogy alapértelmezés szerint a régivel kompatibilis, vagy az új rendszer szerint működik-e ASP.NET 4.5 esetén. Ezek gyönyörűen le vannak írva a sorozat 2. és a 3. részében az ide kapcsolódó web.config beállításokkal együtt, érdemes őket átnézni.

Ide kapcsolódó hír, hogy a Windows Azure Web Site-ok már ASP.NET 4.5-ön mennek, ami ugye in-place upgrade!

 

Technorati-címkék: ,

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