Rischi di chiamate AJAX verso ASMX

4

Attualmente lavoro su una chiamata Ajax a un servizio Web ASP (.asmx).

In una situazione in cui I POST di url / .asmx / WebMethod, sto esponendo informazioni di qualsiasi tipo?

Nel "WebMethod" eseguo un PostJsonAsync che chiama un'API e passa lungo una stringa json.

Mentre sto ancora imparando, mi è stato detto che chiamare qualsiasi pubblico [WebMethod] espone il codice, ma non sono sicuro di come sia possibile.

È possibile che un utente acceda al codice sul lato server WebMethod che ho e faccia capolino nelle chiamate API che sono disponibili?

Ho provato alcuni metodi di sicurezza minori. Stiamo lavorando con Sitefinity CMS. Quello che ho fatto è stato chiamare un WebMethod che riceve CurrentUserIdentity e restituisce un GUID. Se l'utente corrente ha effettuato il login, restituisce un GU valido, se non restituisce un Guid pieno di zeri.

Quindi chiamo il WebMethod che contiene la mia chiamata API e posta un oggetto json insieme al GUID valido o non valido. Il codice WebMethod sul lato server verificherà quindi se il GUID è valido e continua se è possibile generare un profilo utente.

Per me, questo sembra essere sicuro, ma mi è stato detto che questo lascia il WebMethod esposto oltre all'API. Tuttavia, non sto capendo solo ciò che è esposto e ciò che può essere usato.

Se qualcuno mi può indirizzare a qualsiasi risorsa che abbia più informazioni su questo, o se qualcuno mi può consigliare sulla sicurezza di WebService, lo apprezzerei.

Grazie in anticipo.

    
posta terbubbs 22.06.2015 - 16:53
fonte

1 risposta

4

no, non vi è alcuna differenza tra la chiamata di un servizio Web ASMX e qualsiasi altro tipo di servizio web. Il codice sul server non è esposto perché i file .cs sono per default non serviti da Asp.Net, o il codice per ASMX è compilato in un assembly nella cartella bin, a seconda del tipo di progetto (Sito Web e Web Progetto) schierato. Potrebbe essere possibile scoprire quali altre chiamate sono disponibili sul tuo servizio web a seconda di come sono configurate le cose, ma questo da solo non è una minaccia per la sicurezza in quanto sarebbe banale scoprirlo comunque (dal momento che il traffico HTTP può essere intercettato). Devi essere sicuro che stai utilizzando HTTPS per chiamare il servizio per proteggere i dati mentre è in transito.

    
risposta data 22.06.2015 - 19:20
fonte

Leggi altre domande sui tag