Come configurare lo strumento URLScan

Traduzione articoli Traduzione articoli
Identificativo articolo: 326444 - Visualizza i prodotti a cui si riferisce l?articolo.
╚ vivamente consigliabile che tutti gli utenti eseguire l'aggiornamento per Microsoft Internet Information Services (IIS) 7.0 in esecuzione su Microsoft Windows Server 2008. IIS 7.0 aumenta notevolmente la protezione dell'infrastruttura Web. Per ulteriori informazioni su argomenti relativi alla protezione IIS, visitare il sito di Web di Microsoft:
http://www.microsoft.com/technet/security/prodtech/IIS.mspx
Per ulteriori informazioni su IIS 7.0, visitare il sito di Web di Microsoft:
http://www.iis.net/default.aspx?tabid=1
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene illustrato come configurare lo strumento URLScan per impedire che il server Web attacchi e minacce.

Installare URLScan

Per installare URLScan, visitare il seguente Microsoft Developer sito Web Network (MSDN):
http://msdn2.microsoft.com/en-us/library/aa302368.aspx
Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
307608Using URLScan on IIS

Modificare il file URLScan.ini

La configurazione di URLScan avviene tramite il file URLScan.ini file, che si trova nella cartella %WINDIR%\System32\Inetsrv\URLscan. Per configurare URLScan, aprire il file in un editor di testo, ad esempio il blocco note, apportare le modifiche desiderate e quindi salvare il file.

Nota Riavviare Internet Information Services (IIS) per le modifiche abbiano effetto. ╚ possibile eseguire questa operazione rapidamente in un modo consiste nell'eseguire il comando IISRESET dal prompt dei comandi di.

Il file URLScan.ini contiene le sezioni seguenti:
  • [opzioni] : questa sezione viene descritto opzioni generali di URLScan.
  • [AllowVerbs] e [DenyVerbs] : questa sezione definisce i verbi (noto anche come metodi HTTP) che consente di URLScan.
  • [DenyHeaders] : questa sezione sono elencate le intestazioni HTTP che non sono consentite in una richiesta HTTP. Se una richiesta HTTP contiene una delle intestazioni HTTP che sono elencate in questa sezione, URLScan rifiuta la richiesta.
  • [AllowExtensions] e [DenyExtensions] : questa sezione definisce le estensioni di file che consente di URLScan.
  • [DenyURLSequences] : questa sezione sono elencate le stringhe che non sono consentite nel HTTP richiesta. URLScan rifiuta le richieste HTTP che contengono una stringa visualizzata in questa sezione.
Ogni sezione verrÓ descritta in dettaglio in questo documento.

La sezione [Options]

Nella sezione [Options] , Ŕ possibile configurare numerose opzioni di URLScan. In ogni riga in questa sezione presenta il seguente formato:
OptionName= OptionValue
Le opzioni disponibili e i valori predefiniti sono i seguenti:
  • UseAllowVerbs = 1

    Per impostazione predefinita, questa opzione Ŕ impostata su 1. Se questa opzione Ŕ impostata su 1, URLScan consente solo le richieste HTTP che utilizzano i verbi sono elencati nella sezione [AllowVerbs] . URLScan blocca tutte le richieste che non utilizzano tali verbi. Se questa opzione Ŕ impostata su 0, URLScan Ignora la sezione [AllowVerbs] e invece blocca solo le richieste che utilizzare i comandi elencati nella sezione [DenyVerbs] .
  • UseAllowExtensions = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 0, URLScan blocca le richieste di estensioni di file che sono elencate nella sezione [DenyExtensions] , ma consente le richieste di tutte le altre estensioni di file. Se questa opzione Ŕ impostata su 1, URLScan consente solo le richieste di file con estensioni elencate nella sezione [AllowExtensions] e blocca le richieste di tutti gli altri file.
  • NormalizeUrlBeforeScan = 1

    IIS riceve le richieste codificato in URL. Ci˛ significa che alcuni caratteri potrebbero essere sostituite con un segno di percentuale (%) seguito da un determinato numero. Ad esempio, % 20 corrisponde a uno spazio, in modo che una richiesta di http://myserver/My%20Dir/My%20File.htm sia lo stesso una richiesta di http://myserver/My Dir/My File.htm. La normalizzazione Ŕ il processo di decodifica le richieste con codifica URL. Per impostazione predefinita, questa opzione Ŕ impostata su 1. Se l'opzione NormalizeUrlBeforeScan Ŕ impostata su 1, URLScan analizza la richiesta decodificata. Se Ŕ impostata su 0, URLScan analizza la richiesta di undecoded invece. L'impostazione di questa opzione su 0 si impedisce la capacitÓ di URLScan di bloccare alcuni tipi di attacchi.
  • VerifyNormalization = 1

    PoichÚ il segno di percentuale (%) stesso pu˛ essere codificato in URL, un utente malintenzionato pu˛ di inoltrare una richiesta di attentamente predisposta a un server che Ŕ sostanzialmente doppia codifica. In questo caso, IIS pu˛ accettare una richiesta in caso contrario potrebbe rifiutare come non validi. Per impostazione predefinita, questa opzione Ŕ impostata su 1. Se l'opzione VerifyNormalization Ŕ impostata su 1, URLScan normalizza l'URL due volte. Se l'URL dopo la normalizzazione prima Ŕ diverso dall'URL dopo la normalizzazione seconda, URLScan rifiuta la richiesta. Questo impedisce gli attacchi che utilizzano le richieste di doppia codifica.
  • AllowHighBitCharacters = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 0, URLScan rifiuta le richieste che contengono caratteri non ASCII. Questo pu˛ impedire determinati tipi di attacchi, ma potrebbe bloccare anche le richieste di determinati file legittimi, ad esempio file con nomi non in lingua inglese.
  • AllowDotInPath = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 0, URLScan rifiuta le richieste che contiene pi¨ punti (.). Ci˛ impedisce tentativi di nascondere le richieste di estensioni di file pericolosi l'inserimento di estensione di file sicuro nella parte di stringa di informazioni o la query del percorso dell'URL. Ad esempio, se questa opzione Ŕ impostata su 1, URLScan potrebbe consentire una richiesta di http://servername/BadFile.exe/SafeFile.htm perchÚ esisto negativo che Ŕ una richiesta per una pagina HTML, quando si tratta di effettivamente una richiesta per un file eseguibile (exe) con il nome di una pagina HTML nell'area di PATH_INFO. Quando questa opzione Ŕ impostata a 0, URLScan potrebbero rifiutare le richieste di directory che contengono i periodi.
  • RemoveServerHeader = 0

    Per impostazione predefinita, un server Web restituisce un'intestazione che identifica quale software del server Web Ŕ in esecuzione in tutte le risposte. Questo pu˛ migliorare la vulnerabilitÓ del server in quanto un utente malintenzionato pu˛ determinare che un server Ŕ in esecuzione IIS e quindi problemi di IIS, anzichÚ tentare di attaccare un server IIS con gli attacchi sono progettati per altri server Web di attacco. Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se l'opzione RemoveServerHeader Ŕ impostato su 1, si impedisce al server di invio dell'intestazione che la identifica come un server IIS. Se RemoveServerHeader Ŕ impostato su 0, questa intestazione viene comunque inviata.
  • AlternateServerName =(not specified by default)

    Se RemoveServerHeader Ŕ impostato su 0, Ŕ possibile specificare una stringa con l'opzione AlternateServerName per specificare che verrÓ passato nuovamente nell'intestazione del server. Se RemoveServerHeader Ŕ impostato su 1, questa opzione viene ignorata.
  • EnableLogging = 1

    Per impostazione predefinita, URLScan conserva un registro completo di tutte le richieste bloccate in % WINDIR%\System32\Inetsrv\URLScan. ╚ possibile impostare EnableLogging su 0 se non si desidera mantenere questo registro.
  • PerProcessLogging = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 1, URLScan crea un registro separato per ogni processo che ospita URLScan.dll. Se Ŕ impostato su 0, tutti i processi di accedere allo stesso file.
  • PerDayLogging = 1

    Per impostazione predefinita, questa opzione Ŕ impostata su 1. Se questo valore Ŕ impostato su 1, URLScan crea un nuovo file di log ogni giorno. Ciascun file registro Ŕ denominato URLScan. MMDDYY .log, dove MMDDYY Ŕ la data del file di registro. Se questo valore Ŕ impostato su 0, tutte le registrazione viene salvato nello stesso file, indipendentemente dalla data.
  • AllowLateScanning = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 0, URLScan che viene eseguita come un filtro a prioritÓ alta, che significa che viene eseguito prima di eventuali altri ISAPI Internet Server Application Programming Interface () i filtri che viene installati sul server. Se questa opzione Ŕ impostata su 1, URLScan viene eseguito come un filtro a bassa prioritÓ, in modo che altri filtri possono modificare l'URL prima che URLScan esegua un'analisi. Le estensioni del server di FrontPage (FPSE) richiede questa opzione per essere impostato su 1.
  • RejectResponseUrl =(not specified by default)

    Questa opzione specifica il percorso virtuale a un file viene eseguita quando URLScan blocca una richiesta. Consente di personalizzare la risposta inviata al client per le richieste bloccate. ╚ necessario specificare un percorso virtuale del file appropriato, ad esempio /Path/To/RejectResponseHandler.asp RejectResponseUrl . ╚ possibile specificare un file che URLScan in genere blocchi, ad esempio una pagina ASP (Active Server Pages). ╚ inoltre possibile utilizzare le seguenti variabili server dalla pagina:
    • HTTP_URLSCAN_STATUS_HEADER : la specifica perchÚ Ŕ stata bloccata la richiesta.
    • HTTP_URLSCAN_ORIGINAL_VERB : si specifica il verbo originale dalla richiesta bloccato (ad esempio GET, POST, HEAD o DEBUG).
    • HTTP_URLSCAN_ORIGINAL_URL : la specifica dell'URL originale della richiesta bloccati.
    Se Ŕ impostata RejectResponseUrl sul valore speciale di / ~ * , URLScan utilizza la modalitÓ di sola registrazione. Questo consente a IIS di fornire tutte le richieste, ma aggiunge una voce nel Registro di URLScan per tutte le richieste sono in genere bloccate. Ci˛ risulta utile se si desidera verificare il file URLScan.ini file.

    Se non si specifica un valore per RejectResponseUrl , URLScan utilizza il valore di impostazione predefinita di /<Rejected-By-UrlScan>.

  • UseFastPathReject = 0

    Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se questa opzione Ŕ impostata su 1, URLScan ignora l'impostazione di RejectResponseUrl e restituisce immediatamente un messaggio di 404 errore al browser. Questo Ŕ pi¨ veloce rispetto all'elaborazione di RejectResponseUrl , ma non consente di tante opzioni di registrazione. Se questa opzione Ŕ impostata su 0, URLScan utilizza l'impostazione di RejectResponseUrl per elaborare la richiesta.

[AllowVerbs] e [DenyVerbs] sezioni

Le sezioni [AllowVerbs] e [DenyVerbs] definiscono i verbi HTTP (noto anche come metodi) che consente di URLScan. I verbi HTTP comuni sono GET, POST, HEAD e PUT. Altre applicazioni, ad esempio FPSE e Web Distributed Authoring and Versioning (WebDAV), utilizzare verbi aggiuntivi.

Sia sezioni [DenyVerbs] di [AllowVerbs] e hanno la stessa sintassi. Sono state backup di un elenco di HTTP verbi e ciascun verbo viene visualizzato sulla propria riga.

URLScan decide quale sezione utilizzare in base al valore dell'opzione UseAllowVerbs nella sezione [Options] . Per impostazione predefinita, questa opzione Ŕ impostata su 1. Se UseAllowVerbs Ŕ impostato su 1, URLScan consente solo le richieste che utilizzano i verbi sono elencati nella sezione [AllowVerbs] . Una richiesta che non utilizza uno di questi verbi viene rifiutata. In questo caso, la sezione [DenyVerbs] viene ignorata.

Se UseAllowVerbs Ŕ impostato su 0, URLScan impedisce le richieste che utilizzano comandi elencati in modo esplicito nella sezione [DenyVerbs] . Qualsiasi richiesta di utilizzare verbi che non vengono visualizzati in questa sezione Ŕ consentiti. In questo caso, URLScan Ignora la sezione [AllowVerbs] .

La sezione [DenyHeaders]

Quando un client richiede una pagina da un server Web, invia in genere su alcune intestazioni HTTP che contenere informazioni aggiuntive relative alla richiesta. Le intestazioni HTTP pi¨ comuni includono:
  • host:

    Questa intestazione contiene il nome del server Web.
  • accettare:

    Questa intestazione definisce i tipi di file che pu˛ gestire il client.
  • agente utente:

    Questa intestazione contiene il nome del browser che richiede la pagina.
  • autorizzazione:

    Questa intestazione definisce i metodi di autenticazione supportati dal client.
I client possono inviare altre intestazioni al server di specificare informazioni aggiuntive.

Nella sezione [DenyHeaders] , Ŕ possibile definire intestazioni HTTP che rifiuterÓ URLScan. Se URLScan riceve una richiesta contenente qualsiasi intestazione di elencati in questa sezione, respinge la richiesta. In questa sezione Ŕ costituita da un elenco di HTTP intestazioni, con ogni intestazione di visualizzazione sulla propria riga. I nomi di intestazione devono essere seguiti da due punti (:) (ad esempio, nome di intestazione: ).

[AllowExtensions] e [DenyExtensions] sezioni

La maggior parte dei file abbia l'estensione nome di file identifica il tipo di file sono. Ad esempio, i nomi di file per Word, in genere documenti terminano con estensione doc, i nomi di file HTML in genere terminano in htm o HTML e nomi di file di testo normale in genere estensione txt. Le sezioni [AllowExtensions] e [DenyExtensions] consentono di definire le estensioni che URLScan bloccherÓ. Ad esempio, Ŕ possibile configurare URLScan per rifiutare le richieste per impedire agli utenti di Web di esecuzione delle applicazioni nel sistema i file con estensione exe.

Sia il [AllowExtensions] che le sezioni [DenyExtensions] hanno la stessa sintassi. Essi sono costituiti da un elenco delle estensioni del nome di file e viene visualizzato ogni estensione sulla propria riga. L'estensione inizia con un punto (.) (ad esempio, .ext).

URLScan decide quale sezione utilizzare basato sul valore di UseAllowExtensions nella sezione [Options] . Per impostazione predefinita, questa opzione Ŕ impostata su 0. Se UseAllowExtensions Ŕ impostato su 0, URLScan impedisce solo le richieste di file nome estensioni elencate nella sezione [DenyExtensions] . Eventuali estensioni di nome file non sono elencate in questa sezione sono consentite. La sezione [AllowExtensions] viene ignorata.

Se UseAllowExtensions Ŕ impostato su 1, URLScan rifiuta le richieste per qualsiasi file di estensioni che non sono elencate in modo esplicito nella sezione [AllowExtensions] . Sono consentite sola richieste per un'estensione di file elencato nella sezione. La sezione [DenyExtensions] viene ignorata.

Per ulteriori informazioni su come configurare URLScan per consentire le richieste di file che non dispongono di un'estensione, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
312376Come configurare URLScan per consentire richieste con estensione null in IIS

La sezione [DenyUrlSequences]

╚ possibile configurare URLScan per bloccare le richieste che contengono determinate sequenze di caratteri nell'URL. Ad esempio, Ŕ possibile bloccare le richieste che contengono due punti consecutivi (.), che spesso vengono utilizzati con gli attacchi che sfruttano le vulnerabilitÓ di attraversamento delle directory. Per specificare una sequenza di caratteri per bloccare, inserire la sequenza in una riga da solo nella sezione [DenyUrlSequences] .

Si noti che l'aggiunta di sequenze di caratteri pu˛ influire negativamente interessare Outlook Web Access (OWA) per Microsoft Exchange. Quando si apre un messaggio da OWA, la riga oggetto del messaggio di Ŕ contenuta nell'URL richiesto dal server. PoichÚ il file URLScan.ini blocca le richieste che contengono il segno di percentuale (%) e il simbolo di e commerciale (&), gli utenti visualizzato un messaggio di 404 errore quando si tenta di aprire un messaggio con un oggetto, ad esempio "Vendite aumentare da 100 %" o "Bob e Sue provengono per cittÓ". Per risolvere il problema, Ŕ possibile rimuovere queste sequenze dalsezione [DenyUrlSequences] . Si noti che questo riduce la protezione poichÚ consente potenzialmente dannose richieste per raggiungere il server.

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
325965Lo strumento URLScan pu˛ causare problemi in Outlook Web Access

Configurare URLScan per l'utilizzo con le applicazioni dipendenti da IIS

Applicazioni quali Exchange, le estensioni del server di FrontPage e Microsoft Visual Studio .NET dipendono da IIS per la corretta funzionalitÓ. Se non si configura URLScan correttamente, Ŕ possibile che queste applicazioni interrompa di funziona correttamente.

Per ulteriori informazioni su come configurare URLScan per lavorare con queste applicazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportato di seguito:
309508Configurazioni di IISlockD e URLscan in ambiente Exchange
309394L'utilizzo di URLScan con FrontPage 2000
318290L'utilizzo di URLScan con FrontPage 2002
310588Toolkit di protezione interrompe il debug ASP.NET in Visual Studio .NET

Informazioni

Se il file URLScan.ini non esiste nella cartella %WINDIR%\System32\Inetsrv\URLscan, il client riceverÓ una risposta di 404 errore. Per risolvere il problema, Ŕ necessario ripristinare il file URLScan.ini da un backup o copiare il file di URLScan.ini da un server identico.

Riferimenti

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito riportato:
325864Come installare e utilizzare IIS Lockdown

ProprietÓ

Identificativo articolo: 326444 - Ultima modifica: lunedý 7 luglio 2008 - Revisione: 6.1
Le informazioni in questo articolo si applicano a:
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Services 5.0
Chiavi:á
kbmt kbhowtomaster KB326444 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 326444
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com