{"id":18335,"date":"2020-04-08T11:07:04","date_gmt":"2020-04-08T17:07:04","guid":{"rendered":"https:\/\/latam.kaspersky.com\/blog\/?p=18335"},"modified":"2020-04-08T11:07:04","modified_gmt":"2020-04-08T17:07:04","slug":"username-enumeration-attack","status":"publish","type":"post","link":"https:\/\/latam.kaspersky.com\/blog\/username-enumeration-attack\/18335\/","title":{"rendered":"Ataque de enumeraci\u00f3n: vulnerabilidades en los sistemas de autenticaci\u00f3n"},"content":{"rendered":"<p>Hace poco, mientras probaban una plataforma de <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/kyc-blockchain\/14763\/\" target=\"_blank\" rel=\"noopener\">cadena de bloques<\/a><\/strong> en busca de <strong>vulnerabilidades<\/strong>, nuestros expertos de <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/crypto-hacks\/16774\/\" target=\"_blank\" rel=\"noopener\">Kaspersky Blockchain Security<\/a><\/strong>\u00a0 descubrieron que el proceso de recuperaci\u00f3n de la contrase\u00f1a de la plataforma era vulnerable a un <strong>ataque de enumeraci\u00f3n<\/strong> de nombres de usuario. Los desarrolladores de la web necesitaban conocer este tipo de ataque y sus peligros.<\/p>\n<h2>\u00bfQu\u00e9 es un ataque de enumeraci\u00f3n?<\/h2>\n<p>Las <strong>aplicaciones web<\/strong> con un sistema de autentificaci\u00f3n mediante usuario y <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/strong-password-day\/14015\/\" target=\"_blank\" rel=\"noopener\">contrase\u00f1a<\/a><\/strong>\u00a0 suelen incluir varios componentes que interact\u00faan con la <strong>base de datos<\/strong> del usuario: la ventana de inicio de sesi\u00f3n (por razones obvias), el formulario de registro (para evitar que se dupliquen los nombres de usuario) y la p\u00e1gina para <strong>restablecer contrase\u00f1a<\/strong> (para asegurarse de que la cuenta correspondiente existe). Si los desarrolladores no implementan estas funciones de forma segura, los <strong>cibercriminales<\/strong> pueden usarlas para determinar si cierto usuario existe en la base de datos y as\u00ed <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/data-leak-compensation-scam\/16875\/\" target=\"_blank\" rel=\"noopener\">robar sus datos<\/a><\/strong> o <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/email-account-stealing\/15247\/\" target=\"_blank\" rel=\"noopener\">secuestrar su cuenta<\/a><\/strong>.<\/p>\n<p>Antes era habitual que los <strong>desarrolladores<\/strong> implementaran todas estas funciones sin ning\u00fan tipo de protecci\u00f3n, por lo que los <strong>cibercriminales<\/strong> podr\u00edan utilizar una lista de nombres de usuario y un programa que los introduc\u00eda uno a uno. Con el tiempo, para deshacerse de los cibercriminales, los desarrolladores comenzaron a aplicar <strong>estrategias de protecci\u00f3n<\/strong> como los <strong><em>captchas<\/em><\/strong>, un l\u00edmite en los intentos de inicio de sesi\u00f3n y el uso de asteriscos u otros medios para ocultar ciertos detalles de la respuesta.<\/p>\n<p>En las <strong>aplicaciones web <\/strong>modernas, la ventana de inicio de sesi\u00f3n generalmente cuenta con este tipo de <strong>protecci\u00f3n contra ataques de enumeraci\u00f3n<\/strong>. Sin embargo, a veces faltan los formularios de registro \u00a0y las p\u00e1ginas para <strong>restablecer la contrase\u00f1a<\/strong>. Adem\u00e1s, los desarrolladores web no siempre consideran que la presencia o ausencia de un usuario en la base de datos se pueda determinar seg\u00fan lo que tarde en responder el servidor. Por ejemplo, si el nombre de usuario aparece en la base de datos, la respuesta del servidor tarda 2 milisegundos. Si no, la respuesta tarda el doble: 4 milisegundos. Para un ser humano, la diferencia es indetectable, pero para las <strong>herramientas de enumeraci\u00f3n<\/strong> <strong>automatizadas<\/strong>, es f\u00e1cil de detectar.<\/p>\n<h2>Los peligros de un ataque de enumeraci\u00f3n de nombres de usuario<\/h2>\n<p>Un <strong>ataque de enumeraci\u00f3n<\/strong> permite a un <strong>cibercriminal<\/strong> comprobar si existe un nombre en concreto en la base de datos. Esto no permitir\u00e1 que el cibercriminal acceda de forma inmediata, pero s\u00ed le concede la mitad de la informaci\u00f3n necesaria. Por ejemplo, para configurar un <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/terminator-1-2-cybersecurity\/15626\/\" target=\"_blank\" rel=\"noopener\">ataque de fuerza bruta<\/a><\/strong>, no tendr\u00e1 que buscar por parejas de nombres de usuario y contrase\u00f1as, solo tendr\u00e1n que encontrar la contrase\u00f1a de un nombre de usuario verificado, lo que le ahorrar\u00e1 tiempo y esfuerzos.<\/p>\n<p>Recuerda tambi\u00e9n que casi todos los <strong>servicios web<\/strong> utilizan las <strong>direcciones de correo electr\u00f3nico<\/strong> como nombres de usuario. Por tanto, el usuario promedio utiliza el mismo nombre de inicio de sesi\u00f3n en muchos sitios web y no todos se toman la seguridad contra ataques de enumeraci\u00f3n tan en serio; de hecho, las noticias sobre <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/british-airways-fined\/14927\/\" target=\"_blank\" rel=\"noopener\">filtraciones de datos<\/a><\/strong> como nombres de inicio de sesi\u00f3n y contrase\u00f1as son muy comunes. Las recopilaciones consolidadas de los datos de estas filtraciones est\u00e1n disponibles en los foros de los cibercriminales. Adem\u00e1s, los usuarios suelen usar <strong>contrase\u00f1as d\u00e9biles<\/strong> o <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/never-reuse-passwords-story\/13833\/\" target=\"_blank\" rel=\"noopener\">reutilizan contrase\u00f1as<\/a><\/strong> en diferentes sitios web, por lo que, despu\u00e9s de asegurarse de que existe un nombre de usuario en tu sitio web, un atacante puede introducir una recopilaci\u00f3n como esa para comprobar si las contrase\u00f1as del usuario existen en otros sitios web y luego intentan acceder con esas contrase\u00f1as<\/p>\n<p>Adem\u00e1s, los operadores del <strong><em><a href=\"https:\/\/latam.kaspersky.com\/blog\/phishing-psychology\/13978\/\" target=\"_blank\" rel=\"noopener\">spear phishing<\/a><\/em><\/strong> a menudo emplean <strong>ataques de enumeraci\u00f3n<\/strong> durante la fase de reconocimiento. Despu\u00e9s de comprobar que su objetivo tiene una cuenta en tu servicio, pueden enviar un correo electr\u00f3nico supuestamente de tu parte, pidi\u00e9ndole al usuario que cambie su contrase\u00f1a y que se vincule a una <strong>p\u00e1gina de <em>phishing<\/em><\/strong> que se parece a tu sitio web. Cuando el cliente desprevenido introduce una nueva contrase\u00f1a, tambi\u00e9n tiene que confirmar la antigua, y de esta forma proporcionan a los <strong>cibercriminales<\/strong> todo lo que necesitan para robar o secuestrar tu cuenta a trav\u00e9s de un ataque de enumeraci\u00f3n.<\/p>\n<h2>C\u00f3mo protegerte de un ataque de enumeraci\u00f3n<\/h2>\n<p>\u00bfAlguna vez te has dado cuenta de c\u00f3mo responden los sitios web modernos al env\u00edo de un formulario para <strong>restablecer la <a href=\"https:\/\/latam.kaspersky.com\/blog\/kaspersky-lab-el-54-de-los-usuarios-en-america-latina-no-protegen-sus-telefonos-con-una-contrasena\/13111\/\" target=\"_blank\" rel=\"noopener\">contrase\u00f1a<\/a><\/strong>? No dicen \u201cTe hemos enviado un enlace para restablecer tu contrase\u00f1a\u201d o \u201cEl correo electr\u00f3nico especificado no est\u00e1 en nuestra base de datos\u201d, como sol\u00edan hacerlo los sitios web. En su lugar, escriben: \u201cSi este correo electr\u00f3nico existe en nuestra base de datos, te enviaremos un mensaje con un enlace\u201d. En otras palabras, los sitios web no confirman ni desmienten expl\u00edcitamente la existencia del nombre de usuario. Hicieron este cambio precisamente para protegerse contra los ataques de enumeraci\u00f3n.<\/p>\n<p>Asimismo, no es necesario que expliques con detalle en la ventana de inicio de sesi\u00f3n que el usuario ha introducido una <strong>contrase\u00f1a incorrecta<\/strong> o que ese nombre de usuario no existe en el sistema. Simplemente di que no se ha encontrado esa combinaci\u00f3n de nombre de usuario y contrase\u00f1a. No es lo ideal desde el punto de la experiencia del usuario: por ejemplo, a m\u00ed me desespera cuando olvido qu\u00e9 correo electr\u00f3nico utilic\u00e9 para el registro, pero estoy bastante seguro de la contrase\u00f1a, o viceversa, pero el sitio web no me indica en qu\u00e9 campo estoy equivocado. Sin embargo, con la <strong>ciberseguridad<\/strong> la comodidad casi siempre se ve sacrificada, y en el caso de los <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/fairy-tales-seven-young-goats\/15454\/\" target=\"_blank\" rel=\"noopener\">servicios de autenticaci\u00f3n<\/a><\/strong>, se justifica un leve sesgo de seguridad.<\/p>\n<p>Por supuesto, el uso de un <strong><em>captcha<\/em><\/strong> y la limitaci\u00f3n en los <strong>intentos de inicio de sesi\u00f3n<\/strong> tambi\u00e9n son imprescindibles para protegerse contra ataques de enumeraci\u00f3n. Adem\u00e1s de eso, para garantizar la seguridad de tu aplicaci\u00f3n web, recomendamos que te sometas a una auditor\u00eda de terceros. Y, si operas con la tecnolog\u00eda de la <strong>cadena de bloques<\/strong>, nuestros colegas de <strong><a href=\"https:\/\/latam.kaspersky.com\/enterprise-security\/blockchain-security\" target=\"_blank\" rel=\"noopener\">Kaspersky Blockchain Security<\/a><\/strong>\u00a0pueden ayudarte con el an\u00e1lisis de<strong> seguridad<\/strong> <strong>de<\/strong> <strong>aplicaciones web<\/strong>. Tampoco olvides equiparte con una <strong><a href=\"https:\/\/latam.kaspersky.com\/blog\/kaspersky-2020-security-solutions\/15167\/\" target=\"_blank\" rel=\"noopener\">soluci\u00f3n de seguridad<\/a><\/strong> confiable.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Al auditar algunas aplicaciones web, nuestros expertos encontraron una vulnerabilidad a los ataques de enumeraci\u00f3n. Te describimos el problema y te explicamos c\u00f3mo combatirlo.<\/p>\n","protected":false},"author":700,"featured_media":18336,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2795,3539,3540],"tags":[3934,1785,3933,3935],"class_list":{"0":"post-18335","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-business","8":"category-enterprise","9":"category-smb","10":"tag-aplicaciones-web","11":"tag-blockchain","12":"tag-cadenas-de-bloques","13":"tag-desarrollo-web"},"hreflang":[{"hreflang":"es-mx","url":"https:\/\/latam.kaspersky.com\/blog\/username-enumeration-attack\/18335\/"},{"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","url":"https:\/\/www.kaspersky.es\/blog\/username-enumeration-attack\/22322\/"},{"hreflang":"it","url":"https:\/\/www.kaspersky.it\/blog\/username-enumeration-attack\/21222\/"},{"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:\/\/latam.kaspersky.com\/blog\/tag\/blockchain\/","name":"BlockChain"},"_links":{"self":[{"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/18335","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/users\/700"}],"replies":[{"embeddable":true,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/comments?post=18335"}],"version-history":[{"count":3,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/18335\/revisions"}],"predecessor-version":[{"id":18339,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/posts\/18335\/revisions\/18339"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/media\/18336"}],"wp:attachment":[{"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/media?parent=18335"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/categories?post=18335"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/latam.kaspersky.com\/blog\/wp-json\/wp\/v2\/tags?post=18335"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}