E pensare che abbiamo giusto ieri parlato di "ASP .NET Security".... Ledisendgentlemen, in collaborazione con quel buontempone del Barbieri e grazie ad un thread apparso su Sourceforge, ecco come bucare la Forms Authentication di ASP .NET: scaricate il progetto dimostrativo e pubblicatelo su una macchina IIS5 (IIS6 sembra essere immune) _senza_ URLScan (che come testato da Lorenzo offre protezione da questo bug). Provate a questo punto a fare browsing della pagina securepage.aspx contenuta nel folder wannabesecure:
http://miosito/wannabesecure/securepage.aspx
Come prevedibile, verrete rediretti alla pagina di login. Provate ora:
http://miosito/wannabesecure\securepage.aspx
Se usate IE, il browser efefttuerà un rewrite dello slash "malizioso"ed ancora una volta vedrete la pagina di login (con Mozilla avrete invece già fatto bingo). Provate allora a fare un "encoding (da) manuale":
http://miosito/wannabesecure%5Csecurepage.aspx
BINGO! Forms Authentication bucata e pagina (non più così) sicura in bella vista. Il sospetto è che ci sia un errore di path canonicalization nello httpmodule di ASP .NET...
Technorati Tags: ASP.NET
posted @ venerdì 1 ottobre 2004 19:44