Vulnerabilità in ASP.NET

Vulnerabilità in ASP.NET

Microsoft sta indagando per una vulnerabilità in ASP.NET che permette l'accesso alle directory protette dei server

di pubblicata il , alle 09:01 nel canale Sicurezza
Microsoft
 
Microsoft ha lanciato l'allarme per una presunta vulnerabilità individuata in Microsoft ASP.NET.
Il bug, che consiste in un errato controllo delle autorizzazioni presente nel modulo UrlAuthorizationModule, permette ad un attacker di poter navigare all'interno delle directory con accesso ristretto senza le necessarie credenziali.
La vulnerabilità affligge tutte le versioni di ASP.NET che girano su Microsoft Windows 2000, Windows 2000 Server, Windows XP Professional e Windows Server 2003.
Per sfruttare la vulnerabilità bisogna semplicemente sostituire il carattere '/' con '\' o '%5C' all'interno dell'URL, così da bypassare la richiesta di password.
In attesa di fix ufficiali è possibile sistemare il bug in vari modi:
  • applicare i suggerimenti pubblicati da Microsoft nell'articolo KB887459
  • installare il programma URLScan, che filtra gli indirizzi web
  • modificare il file global.asax con il seguente codice:

    HttpContext context = ((HttpApplication)sender). Context ;

    if (context ! = null)

    {
    HttpRequest request = context. Request ;
    string path = request.Path.ToUpper () ;
    if (path. IndexOf("\ \") > -1 || path.IndexOf("%5c") > -1)
    {
    path = path. Replace("\ \", "/").Replace("%5C", "/") ;
    context. RewritePath (path) ;
    }
    }


68 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
DjLode08 Ottobre 2004, 09:06 #1
Ma pork
SleepyBlack08 Ottobre 2004, 09:10 #2

Che cosaaa??

Aiuto, mega baco! Questa va corretta al volo, se no sai quanti begli accessi non autorizzati!!!... GULP!!!
ImperatoreNeo08 Ottobre 2004, 09:24 #3

ma pensa te...

"Per sfruttare la vulnerabilità bisogna semplicemente sostituire il carattere '/' con '\' o '%5C' all'interno dell'URL, così da bypassare la richiesta di password."

Ma come c@##o è possibile?? Questa non mi sembra un baco da poco.. ma alla M$ sono diventati scemi?
Hal200108 Ottobre 2004, 09:33 #4
Originariamente inviato da DjLode
Ma pork


Ieri che ti avevo detto? dovresti vedermi, sto ridendo come un pazzo
Jumbalaya08 Ottobre 2004, 09:34 #5
Il bello è che non è un bug troppo difficile da scovare (anche per caso).... il fatto che sia uscito solo ora mi fa pensare che in tutto questo tempo qualcuno potrebbe averlo usato per scopi maligni indisturbatamente
gionapper08 Ottobre 2004, 09:37 #6
A me mi da errore:
BC30188: Declaration expected.
Allora ho messo questo:

Sub Application_BeginRequest(Sender as Object, E as EventArgs)
If (Request.Path.IndexOf(chr(92)) >= 0 OR _
System.IO.Path.GetFullPath(Request.PhysicalPath) <> Request.PhysicalPath) then
Throw New HttpException(404, "Not Found"
End If
End Sub
DjLode08 Ottobre 2004, 09:46 #7
Originariamente inviato da Hal2001
Ieri che ti avevo detto? dovresti vedermi, sto ridendo come un pazzo


Che mi avevi detto?
Non ricordo e se c'ero
Hal200108 Ottobre 2004, 09:48 #8
Vediamo un aiutino.. al posto di Asp di usare..
DjLode08 Ottobre 2004, 09:54 #9
E vabbhè ma la colpa non è mia come ti ho detto, fosse per me sai quanta roba cambierei?
Hal200108 Ottobre 2004, 10:04 #10
Quanta? OpenOffice già lo hai escluso a priori :-|

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^