Modulo di prova dei servizi Web di Microsoft ASMX disponibile su macchine remote

2

Ho fatto qualche ricerca sulla sicurezza dei servizi Web. Ho notato che alcuni siti utilizzano Ajax e JQuery per utilizzare ASMX WebServices. Ho navigato fino al Web Service EndPoint e mi sono reso conto che, dalla mia macchina, ero in grado di utilizzare il modulo Test per consumare il servizio, a parte il fatto che ero in grado di vedere il meccanismo HTTP per inviare SOAP su HTTP. Rendere queste informazioni disponibili agli utenti remoti potrebbe portare a invocazioni indesiderate e potrebbe anche portare a attacchi DoS.

Credi che mostrare questo modulo di prova agli utenti remoti possa portare a un attacco di servizio?

    
posta Michael Hidalgo 13.01.2012 - 05:37
fonte

2 risposte

2

Quando si rilascia un servizio web ASMX / WCF / SOAP in produzione, si consiglia di disabilitare l'accesso ai metadati e disattivare il modulo di immissione test. Sì, dovresti disabilitare il modulo di test per ASMX, e ancora meglio, dovresti aggiornare ASMX ad un endpoint di WCF.

La sua uscita porterà ad attacchi DoS? No, probabilmente no. Qualcuno cercherà di inserire i dati se li incontrano? Si. Dove si trova il problema, però, sono i metadati WSDL. Con WSDL è possibile utilizzare il servizio Web da un'altra applicazione e chiamare direttamente il servizio senza dover passare attraverso il modulo di test. Se disattivi i metadati, non puoi accedere al WSDL, quindi solo i client di cui ti fidi dovrebbero essere al corrente delle interfacce per il servizio.

    
risposta data 13.01.2012 - 08:49
fonte
1

Ci sono due approcci qui, in primo luogo e il modo più dilettantistico è quello di modificare la pagina in cui viene mostrata l'informazione: Pagina DefaultWsdlHelperGenerator.aspx situata in %SYSTEMROOT%\microsoft.net\framework\v1.1.4322\Config

Il modo più avanzato è quello di farlo in Web.config del tuo sito web:

<webServices>
<protocols>
              <remove name="Documentation"/>
</protocols>
</webServices>

Inoltre puoi implementare il tuo HttpModule e personalizzare il modo in cui utilizzi il tuo servizio web.

    
risposta data 13.01.2012 - 07:16
fonte

Leggi altre domande sui tag