{"id":21222,"date":"2020-04-09T09:26:43","date_gmt":"2020-04-09T07:26:43","guid":{"rendered":"https:\/\/www.kaspersky.it\/blog\/?p=21222"},"modified":"2020-04-08T17:28:01","modified_gmt":"2020-04-08T15:28:01","slug":"username-enumeration-attack","status":"publish","type":"post","link":"https:\/\/www.kaspersky.it\/blog\/username-enumeration-attack\/21222\/","title":{"rendered":"I pericoli degli attacchi di enumerazione"},"content":{"rendered":"<p>Di recente, durante il test di una piattaforma <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/kyc-blockchain\/17472\/\" target=\"_blank\" rel=\"noopener\">blockchain<\/a>\u00a0<\/strong>per le <strong>vulnerabilit\u00e0<\/strong>, i nostri esperti di sicurezza di <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/crypto-hacks\/19523\/\" target=\"_blank\" rel=\"noopener\">Kaspersky Blockchain Security<\/a><\/strong>\u00a0hanno scoperto che il processo di recupero della password della piattaforma era vulnerabile a un <strong>attacco<\/strong> attraverso l\u2019<strong>enumerazione<\/strong> dei nomi utente. Gli sviluppatori web devono essere consapevoli di questo tipo di attacco e dei suoi pericoli. Cos\u2019\u00e8 un attacco di enumerazione?<\/p>\n<p>Le applicazioni web con<strong> <a href=\"https:\/\/www.kaspersky.it\/blog\/strong-password-day\/16871\/\" target=\"_blank\" rel=\"noopener\">password<\/a><\/strong>\u00a0e autenticazione di accesso includono diversi componenti che interagiscono con il <strong>database<\/strong> degli utenti: la finestra di login (per ovvie ragioni), il modulo di registrazione (per evitare la duplicazione dei nomi utente) e la pagina di <strong>reimpostazione della password<\/strong> (per assicurarsi che l\u2019account corrispondente esista). Se gli sviluppatori web non implementano queste funzioni in modo sufficientemente sicuro, gli <strong>hacker<\/strong> potrebbero essere in grado di utilizzarle per determinare se un particolare username esiste nel database e cos\u00ec<strong> <a href=\"https:\/\/www.kaspersky.it\/blog\/data-leak-compensation-scam\/19646\/\" target=\"_blank\" rel=\"noopener\">rubare i suoi dati<\/a>\u00a0<\/strong>o l\u2019<strong><a href=\"https:\/\/www.kaspersky.it\/blog\/email-account-stealing\/17885\/\" target=\"_blank\" rel=\"noopener\">account<\/a>.<\/strong><\/p>\n<p>In passato, gli <strong>sviluppatori<\/strong> erano soliti introdurre tutte queste caratteristiche senza alcuna protezione; gli <strong>hacker<\/strong>, quindi, potevano utilizzare una lista di username e un programma in cui li inserivano uno ad uno. Nel corso del tempo, per tenere alla larga potenziali hacker, gli sviluppatori hanno iniziato a implementare <strong>accorgimenti protettivi<\/strong> come <strong>captcha<\/strong>, limitazioni sul numero di tentativi di login, l\u2019uso di asterischi o altri mezzi per nascondere alcuni dettagli di risposta.<\/p>\n<p>Nelle moderne <strong>applicazioni web<\/strong>, la finestra di login ha di solito questo tipo di <strong>protezione<\/strong>. Tuttavia, i moduli di registrazione e le pagine di <strong>reset delle password<\/strong> a volte non li possiedono. Inoltre, igli sviluppatori web non sempre prendono con la dovuta considerazione il fatto che la presenza o l\u2019assenza di un utente nel database possa essere determinata dai tempi di risposta del server. Ad esempio, se il nome dell\u2019utente appare nel database, la risposta del server richiede 2 millisecondi. In caso contrario, la risposta richiede il doppio, 4 millisecondi. Per una persona, la differenza non \u00e8 rilevabile, ma per gli <strong>strumenti di enumerazione automatizzata<\/strong> \u00e8 facile da individuare.<\/p>\n<h2>I pericoli di un attacco di enumerazione del nome utente<\/h2>\n<p>Un attacco di enumerazione consente a un hacker di verificare se un nome esiste nel database. Ci\u00f2 non gli permette di effettuare immediatamente il login, ma gli fornisce la met\u00e0 delle informazioni necessarie. Ad esempio, per impostare un <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/terminator-1-2-cybersecurity\/18177\/\" target=\"_blank\" rel=\"noopener\">attacco di forza bruta<\/a><\/strong>, invece di cercare fra gli abbinamenti di login e password, ci\u00f2 di cui hanno bisogno \u00e8 una password corrispondente a un nome utente verificato, risparmiando cos\u00ec tempo e fatica.<\/p>\n<p>Ricordate anche che quasi tutti i <strong>servizi<\/strong> utilizzano gli <strong>indirizzi e-mail<\/strong> come nomi utente. Pertanto, l\u2019utente medio ha un solo login per molti siti web, e non tutti i siti prendono la sicurezza con la stessa seriet\u00e0; le notizie di <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/british-airways-fined\/17604\/\" target=\"_blank\" rel=\"noopener\">fughe di dati<\/a>\u00a0<\/strong>di login e password sono molto comuni. Raccolte consolidate di dati ottenute da fughe di dati sono disponibili per molti hacker. Inoltre, gli utenti tendono a <a href=\"https:\/\/www.kaspersky.it\/blog\/never-reuse-passwords-story\/16666\/\" target=\"_blank\" rel=\"noopener\"><strong>utilizzare le stesse password<\/strong><\/a>\u00a0su diversi siti web, quindi dopo essersi assicurati che l\u2019username esiste sul vostro sito web, un hacker pu\u00f2 accedere ad una raccolta per vedere se le password dello stesso utente possano andar bene anche su altri siti.<\/p>\n<p>Inoltre, chi si occupa di <a href=\"https:\/\/www.kaspersky.it\/blog\/phishing-psychology\/16822\/\" target=\"_blank\" rel=\"noopener\">spear-phishing <\/a>spesso impiega <strong>attacchi di enumerazione<\/strong> durante la fase di ricognizione. Dopo essersi accertati che l\u2019obiettivo ha un account sul vostro sito, i cybercriminali possono inviare un\u2019e-mail che sembra provenire da voi, chiedendo all\u2019utente di cambiare la sua password e, per fare ci\u00f2, si collegher\u00e0 a una <strong>pagina di phishing<\/strong> che assomiglia alla vostra pagina web. Quando l\u2019ignaro cliente inserir\u00e0 una nuova password, dovr\u00e0 anche confermare quella vecchia, fornendo cos\u00ec ai <strong>cybercriminali<\/strong> tutto ci\u00f2 di cui hanno bisogno.<\/p>\n<h2>Come difendersi da un attacco di enumerazione<\/h2>\n<p>Avete mai notato come i siti web moderni rispondono all\u2019invio di un modulo di reimpostazione della password? Non dicono \u201c\u00c8 stato inviato un link per <strong>reimpostare<\/strong> <strong>la<\/strong> <strong>password<\/strong>\u201d o \u201cL\u2019e-mail specificata non \u00e8 presente nel nostro database\u201d, come invece accadeva per i siti web. Scrivono invece: \u201cSe questa e-mail esiste nel nostro database, invieremo un messaggio con un link\u201d. In altre parole, i siti web non confermano o negano esplicitamente l\u2019esistenza del nome utente. Hanno apportato la modifica proprio per proteggersi dagli attacchi di enumerazione.<\/p>\n<p>Allo stesso modo, non \u00e8 necessario spiegare in dettaglio nella finestra di login che l\u2019utente ha inserito una <strong>password errata<\/strong> o che non esiste quel nome utente nel sistema. Basta dire che la combinazione login\/password non \u00e8 stata trovata. Non \u00e8 l\u2019ideale da un punto di vista UX (esperienza utente), io, per esempio, mi esaspero quando dimentico quale e-mail ho usato per la registrazione ma sono abbastanza sicuro della password, o viceversa, ma il sito non mi d\u00e0 alcun indizio su quale campo ho sbagliato. Tuttavia, la <strong>sicurezza<\/strong> praticamente sempre implica un prezzo da pagare a livello di comodit\u00e0, e nel caso dei <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/fairy-tales-seven-young-goats-featured\/18043\/\" target=\"_blank\" rel=\"noopener\">servizi di autenticazione<\/a><\/strong>, si tratta di un piccolo inconveniente giustificato.<\/p>\n<p>Naturalmente, l\u2019uso di un captcha e le limitazioni sui tentativi di login sono anch\u2019essi requisiti fondamentali. Inoltre, per garantire la sicurezza della vostra applicazione web, vi consigliamo di sottoporvi a un audit esterno. E se siete interessati alla tecnologia blockchain, i nostri colleghi di <strong><a href=\"https:\/\/www.kaspersky.it\/enterprise-security\/blockchain-security\" target=\"_blank\" rel=\"noopener\">Kaspersky Blockchain Security<\/a> <\/strong>possono aiutarvi con l\u2019analisi della sicurezza delle applicazioni Web.<\/p>\n<p>Inoltre, non dimenticate di munirvi di una <strong><a href=\"https:\/\/www.kaspersky.it\/blog\/kaspersky-2020-security-solutions\/17904\/\" target=\"_blank\" rel=\"noopener\">soluzione di sicurezza<\/a> <\/strong>affidabile.<\/p>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Durante la verifica delle applicazioni web, i nostri esperti hanno riscontrato una vulnerabilit\u00e0 verso gli attacchi di enumerazione. Ecco una descrizione del problema e come combatterlo.<\/p>\n","protected":false},"author":700,"featured_media":21235,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[12],"tags":[17,1418,3321],"class_list":{"0":"post-21222","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-news","8":"tag-applicazioni-web","9":"tag-blockchain","10":"tag-sviluppo-web"},"hreflang":[{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/username-enumeration-attack\/21222\/"},{"hreflang":"en-in","url":"https:\/\/www.kaspersky.co.in\/blog\/username-enumeration-attack\/20300\/"},{"hreflang":"en-ae","url":"https:\/\/me-en.kaspersky.com\/blog\/username-enumeration-attack\/16279\/"},{"hreflang":"ar","url":"https:\/\/me.kaspersky.com\/blog\/username-enumeration-attack\/8152\/"},{"hreflang":"en-us","url":"https:\/\/usa.kaspersky.com\/blog\/username-enumeration-attack\/21337\/"},{"hreflang":"en-gb","url":"https:\/\/www.kaspersky.co.uk\/blog\/username-enumeration-attack\/19579\/"},{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/username-enumeration-attack\/18335\/"},{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/username-enumeration-attack\/22322\/"},{"hreflang":"ru","url":"https:\/\/www.kaspersky.ru\/blog\/username-enumeration-attack\/28049\/"},{"hreflang":"tr","url":"https:\/\/www.kaspersky.com.tr\/blog\/username-enumeration-attack\/8044\/"},{"hreflang":"x-default","url":"https:\/\/www.kaspersky.com\/blog\/username-enumeration-attack\/34618\/"},{"hreflang":"fr","url":"https:\/\/www.kaspersky.fr\/blog\/username-enumeration-attack\/14598\/"},{"hreflang":"pt-br","url":"https:\/\/www.kaspersky.com.br\/blog\/username-enumeration-attack\/14668\/"},{"hreflang":"pl","url":"https:\/\/plblog.kaspersky.com\/username-enumeration-attack\/13269\/"},{"hreflang":"de","url":"https:\/\/www.kaspersky.de\/blog\/username-enumeration-attack\/23670\/"},{"hreflang":"zh","url":"https:\/\/www.kaspersky.com.cn\/blog\/username-enumeration-attack\/11317\/"},{"hreflang":"nl","url":"https:\/\/www.kaspersky.nl\/blog\/username-enumeration-attack\/25243\/"},{"hreflang":"ru-kz","url":"https:\/\/blog.kaspersky.kz\/username-enumeration-attack\/22009\/"},{"hreflang":"en-au","url":"https:\/\/www.kaspersky.com.au\/blog\/username-enumeration-attack\/27193\/"},{"hreflang":"en-za","url":"https:\/\/www.kaspersky.co.za\/blog\/username-enumeration-attack\/27031\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.it\/blog\/tag\/blockchain\/","name":"BlockChain"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/21222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/users\/700"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/comments?post=21222"}],"version-history":[{"count":7,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/21222\/revisions"}],"predecessor-version":[{"id":21269,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/posts\/21222\/revisions\/21269"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media\/21235"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/media?parent=21222"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/categories?post=21222"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.it\/blog\/wp-json\/wp\/v2\/tags?post=21222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}