Durva ASP.NET forms authentication sebezhetőség

Két kutató, Thai Duong és Juliano Rizzo hibát talált az ASP.NET űrlap alapú hitelesítésében, mégpedig a sütik (cookie) titkosításának megvalósításában. Állításuk szerint az általuk használt Padding Oracle Exploit Tool (POET) segítségével 100%-os biztonsággal, 30-50 perc alatt tetszőleges webhelyre meg tudják határozni a titkosításhoz használt Machine Key értékét. Márpedig ha megvan a Machine Key, akkor lehet offline hamis sütiket sütni, sőt, ha a webhely ezekben a sütikben szerepköröket is tárol, akkor a támadó akár magasabb jogosultságú szerepkörbe is léptetheti magát.

A helyzet ennél rosszabb, ugyanis a hiba a .NET Framework AES implementációjában van, ami akár más komponenseket és rendszereket is érinthet. Szerencsére az ASP.NET esetén elég egyszerű a megoldás, csak a web.configban át kell állítani a titkosítást 3DES-re:

  <machineKey validationKey="AutoGenerate,IsolateApps"         
    validation="3DES"                           
    decryptionKey="AutoGenerate,IsolateApps"
    decryption="3DES" />  

Ennél több részletet egyelőre nem hoztak nyilvánosságra, talán a pénteki Buenos Aires-i ekoparty Security Conference-en többet tudunk meg. A Microsoftnál már vizsgálják az esetet, hivatalos válasz egyelőre nincsen.

Ha kiderül, hogy a sebezhetőség igenis létezik, az bizony elég sok webhelyet érintene. Azonban nem árt tudni, hogy nem ez az egyetlen gyenge pontja az ASP.NET-es alkalmazásoknak. A tavaszi Ethical Hacking konferencián mutattam pár módszert, ami a fejlesztők szokásait és az alapbeállításokat használja ki, sőt a tanszéken saját eszközt is készítettünk ezek tesztelésére. Hamarosan ismét lesz Ethical Hacking képzés és bemutató a BME-n, ott mutatok ebből párat, mindenkit szeretettel várunk!

Technorati-címkék: ,,

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s