1 puntos por GN⁺ 2024-02-25 | 1 comentarios | Compartir por WhatsApp
  • Tom McKay de IT Brew dejó Gizmodo en 2022 y evitó que eliminaran su cuenta de Slack durante meses al disfrazarla como Slackbot
  • Slack ya bloqueaba el nombre “Slackbot”, pero McKay burló la restricción del nombre visible usando caracteres Unicode que se veían casi iguales
  • También cambió la foto de perfil por una versión enojada parecida al ícono real de Slackbot, así que los administradores no notaron el Slackbot duplicado ni la diferencia en las cejas
  • Mientras la cuenta siguió activa, McKay pudo enviar a sus excompañeros mensajes con apariencia de bot como “Slackbot fact of the day”
  • Según la empresa, puede haber medidas de seguridad para evitar este tipo de bromas, por lo que es importante depurar las cuentas de exempleados y validar los nombres visibles

Una cuenta de Slack que siguió activa tras su salida

  • Tom McKay de IT Brew disfrazó su cuenta de Slack como Slackbot después de dejar Gizmodo
  • McKay compartió capturas de pantalla de ese momento en X y también confirmó a The Verge que la broma fue real
  • La cuenta disfrazada no fue detectada ni eliminada por la administración de Gizmodo durante varios meses

Cómo hizo que pareciera Slackbot

  • Slackbot es el bot familiar de Slack que ayuda con notificaciones, consultar la contraseña del Wi‑Fi de la oficina y avisos de menciones en canales a los que no te has unido
  • Cuando salió de la empresa, McKay cambió su foto de perfil por una imagen enojada parecida al ícono real de Slackbot
  • También intentó cambiar el nombre visible a “Slackbot”, pero Slack no permitió el cambio normal porque ese nombre ya estaba en uso
  • En su lugar, burló la restricción usando caracteres Unicode parecidos a las letras originales
    • Ejemplo: reemplazar la “o” por el carácter Unicode “о”, que se ve casi igual

Lo que pudo hacer durante meses

  • Gracias a ese cambio, la cuenta activa de Slack de McKay evitó ser eliminada durante meses
  • Mientras la cuenta seguía ahí, pudo enviar a sus excompañeros mensajes que parecían venir de un bot
    • Ejemplo: “Slackbot fact of the day: Hi, I’m Slackbot! That’s a fact. Have a Slack-ly day!”
  • Victoria Song, que trabajó antes en Gizmodo, reaccionó diciendo que la situación no le sorprendía

Posibles defensas según la empresa

  • No todas las empresas caerían de la misma manera, y algunas ya tienen medidas de seguridad para evitar este tipo de situaciones
  • Es posible que la administración de Gizmodo creyera que la cuenta de McKay ya había sido eliminada
  • O quizá no revisó con suficiente detalle como para detectar un Slackbot duplicado con cejas sospechosas

1 comentarios

 
GN⁺ 2024-02-25
Comentarios de Hacker News
  • Un excompañero que conocí alguna vez creó un perfil de aprovisionamiento dial-up/ISDN llamado Ringing en un módulo controlador de rack de módems. Evitó crearlo en el servidor Radius porque habría sido demasiado obvio
    Si mirabas la página de estado del rack de módems, aparecía un estado Ringing junto a los usuarios conectados, como si fuera una llamada que todavía no habían contestado, y usó un servicio ISDN de 128 Kbit por más de un año sin que lo descubrieran del todo
    Obviamente no recomiendo hacer algo así. Sobre todo ahora que a veces la CFAA se interpreta como si incluyera desde cambiar parámetros en una URL hasta lanzar mocos al tapete

    • Me pregunto si hay fundamento para lo de la CFAA. Más bien parecía que cambiar parámetros en una URL probablemente no sería un problema
      Según la ley de Nueva Jersey, para que te declaren culpable por “acceso no autorizado o acceso que excede la autorización”, el gobierno tenía que demostrar que se eludió una barrera basada en código o contraseña, y en ese caso la idea era que solo accedieron a una parte de una pantalla de login pública y rasparon información que AT&T dejó expuesta sin querer
      https://law.justia.com/cases/federal/appellate-courts/ca3/13...
    • Esto me recuerda un poco a cuando dos hermanos estaban jugando una partida LAN de Warcraft II contra la computadora, cambié mi nombre a Computer y me metí a escondidas
    • En mi trabajo anterior me quedé esperando en silencio durante meses a que me quitaran la cuenta de Slack. Casi un año después, todavía tenía acceso total a bastantes canales internos, lo cual fue realmente raro
      La gente cercana a mí acertó, pero no fue que me lo dejaran por buena onda, sino que la administración de cuentas de Slack y la integración con Google Office eran un desastre
    • No tengo idea de qué historia hay detrás de lo de la CFAA y los mocos. Aunque busco, no encuentro ninguna referencia
  • Me hizo recordar un glorioso día, por allá en 2016, en una consultora, cuando descubrimos que podíamos cambiarnos los nombres en Slack entre nosotros. Por un tiempo, el nombre de todos era simplemente dad

    • Suena muy parecido a cuando los niños se dieron cuenta de que cualquiera podía cambiar el nombre y la foto de los perfiles de Netflix/Disney+
    • Está bien, pero yo insistiría en grandad. O si no, soltaré a mis nietas, y ellas no tienen piedad
    • ¿Esto todavía se puede hacer?
      El equipo universitario de frisbee usa Slack
  • Mucha gente recomienda impedir los cambios de nombre, pero eso no resuelve por completo el problema. En algún lugar también podría haber una persona cuyo nombre real sea Jira
    En una empresa anterior donde trabajé, ponían los paneles de clientes en un wildcard basado en https://*.$company.com. Por ejemplo, algo como https://foo.$company.com
    Pero si alguien elegía un slug de panel que chocaba con un registro real, como www o blog, ese panel quedaba completamente inaccesible. La configuración para cambiar el prefijo también estaba en https://$dashboard.$company.com, así que el cliente no podía corregirlo por su cuenta y necesitaba al equipo de soporte. Naturalmente, la herramienta de soporte tampoco exponía una función para cambiar directamente el prefijo $dashboard
    Tampoco es trivial cómo armar una lista de bloqueo. Hace falta contemplar entradas DNS existentes, prefijos $dashboard ya creados, groserías, símbolos Unicode, el prefijo xn-- de Punycode, redirecciones de prefijos anteriores y reservas para evitar futuras apropiaciones
    No sorprende que Slack tenga un hueco así. En esencia, es un problema difícil

    • Zendesk pone los paneles de clientes en subdominios directos de su dominio principal. También permite dominios propios, y para usarlos hay que crear un CNAME que apunte al subdominio que Zendesk te dio
      https://support.zendesk.com/hc/en-us/articles/4408838571930-...
      Me parece mejor, como hacen GitHub o Shopify, poner los subdominios para páginas de clientes al menos en un dominio separado. GitHub usa GitHub.com como su propio dominio y GitHub.io como dominio para páginas de usuarios, y Shopify también separa Shopify.com y myshopify.com
      La ventaja de un dominio separado para clientes es que choca menos con subdominios existentes o futuros que la empresa quiera usar directamente, y además ese dominio puede incluirse en la Public Suffix List para evitar problemas potenciales. Aun así, hay que filtrar palabras insultantes o que puedan inducir a confusión
      https://publicsuffix.org/
    • En el trabajo de mi cónyuge realmente hay un empleado que se llama Admin. IT está batallando para ver cómo manejarlo
    • ¿De verdad aquí están tratando de defender a Slack? o y о están casi entre los casos más fáciles posibles de ataques de caracteres homógrafos
      https://en.wikipedia.org/wiki/IDN_homograph_attack
      Lo que cuenta es que, al irse de la empresa, McKay cambió su foto de perfil por una que parecía un ícono de Slackbot más enojado y cambió su nombre a Slackbot, pero Slack bloqueaba ese nombre porque ya estaba en uso; sin embargo, funcionaba si cambiaba la o por el carácter Unicode о
      Este par de caracteres inglés/cirílico ya se había usado en uno de los primeros ataques públicos con glifos homógrafos, publicado en 2001
      https://web.archive.org/web/20200102175251/http://www.cs.tec...
      En 2022, Slack valía aproximadamente 20 mil millones de dólares y llevaba casi 10 años operando. Además, es software basado en nombres de usuario dirigido a organizaciones y empresas que necesitan seguridad
    • Basta con restringir los caracteres permitidos y, antes de autorizar el cambio, verificar literalmente si esa página ya se resuelve. Así los clientes no quedan bloqueados y también se vuelve más difícil suplantar a otros usando caracteres parecidos
      Si quieres permitir algunos símbolos, puedes usar una lista permitida o comprobar si el nombre de usuario tiene suficiente distancia de Levenshtein respecto de nombres clave como slackbot, para prohibirlo o marcarlo para revisión humana
      En esencia es difícil bloquearlo todo, pero no es difícil bloquear los problemas más grandes
    • En este caso, “asegúrate de que no choquen espacios de nombres fundamentalmente distintos” no es un problema tan difícil
  • El mejor lugar para esconderse es parecer una cuenta de servicio que da miedo tocar porque nadie sabe qué se va a romper si la desactivan. Bien jugado

    • En cambio, en nuestro trabajo, un encargado de IT demasiado entusiasta borró una vez la cuenta de automatización de Jira. No sabía por qué existía y el nombre $CompanySecretary le parecía sospechoso
      Días después, hubo que pasar un muy mal rato buscando y arreglando todos los flujos de trabajo y tickets que referenciaban a ese usuario, antes de que se rompiera algo realmente importante
    • Me hace pensar en malware famoso y en los nombres de sus procesos
  • “Claro, no todas las empresas caerían en esta broma”, pero la empresa podría ser la que se ría al final: https://en.wikipedia.org/wiki/Computer_Fraud_and_Abuse_Act

    • Por eso el punto es que esperó 2 años para contarlo. Justo coincide con el plazo de prescripción de la CFAA
    • Eso fue lo primero que pensé al ver la frase “broma ligera”
    • La que podría reírse al final es Slack. Después de todo, termina teniendo en sus manos muchos “datos empresariales sensibles”
  • Reemplazar caracteres ASCII por caracteres Unicode de apariencia similar es una táctica vieja. Hay bastantes de esos caracteres, y se pueden meter en el código para trolear a otros desarrolladores. Además, ya se acerca el 1 de abril
    Incluso hice un plugin de Vim que resalta estos caracteres “peligrosos”: https://github.com/vim-utils/vim-troll-stopper
    Nunca me han hecho una broma con caracteres Unicode, pero una vez un consultor japonés metió sin querer un carácter de “espacio japonés” en un archivo de traducción y eso rompió la app. Como siempre tenía activado el plugin de Vim, encontré la causa muy rápido

    • Muchas apps, en su afán de ayudar, empezaron a convertir dos guiones en un guion largo Unicode más bonito, y por eso se rompían las herramientas de línea de comandos
    • Me acuerdo de esto: https://news.ycombinator.com/item?id=10438363
    • Incluso un carácter basura accidental puede llegar lejos. Me acordé de una vez en que alguien usó una O en superíndice como si fuera el símbolo de grados en un informe médico
      Después eso terminó convirtiéndose en un carácter que ya no era superíndice, y el significado cambió bastante. Más absurdo aún: después de ese intento de símbolo también habían escrito la palabra degrees
  • Si Slack no permite bloquear el cambio de nombre, eso suena a un tremendo hueco de seguridad para una empresa grande
    Si alguien se cambia el nombre al del CEO y además pone una foto de perfil parecida, las probabilidades de notar la diferencia antes de que sea demasiado tarde son bajísimas. Cambiarse a Slackbot parece poca cosa

    • Sí se puede bloquear el cambio de nombre. Estoy en una organización con Enterprise Grid y el nombre visible y el nombre de usuario están sincronizados con el perfil del empleado
      Además, el SSO es obligatorio cada vez que se abre la app de escritorio, así que si te vas de la empresa ya no puedes volver a entrar jamás. También desactivan las cuentas muy rápido, así que probablemente en móvil tampoco hay mucho de qué preocuparse
      En la práctica, lo único que puedes cambiar sin meter un ticket es la foto y unos pocos campos libres poco importantes
    • Se puede desde la configuración de la organización. Lo mismo con lo de SAML/SSO de abajo. Si todavía puedes cambiarte el nombre, es más porque no hay administrador de IT o porque es flojo
    • Las empresas grandes usan SAML u otra autenticación federada para impedir que inicies sesión sin la autenticación corporativa
    • Al mismo tiempo, la función de cambiar el nombre también es una bendición enorme
      Nosotros la abusamos poniendo ahí mismo la disponibilidad. Por ejemplo, algo como mike-2/12~16vac. para que quien te escriba pueda calcular cuándo responderás, o si faltan unos días para unas vacaciones programadas, saber si todavía conviene encargarte trabajo
      Parece que nadie mira el atributo de estado real, y eso es mejor que ir al calendario a revisar
    • Creo que esa es probablemente una de las razones por las que nuestra empresa quitó hace poco la función de que la gente cambie su nombre en el sistema de videoconferencias
  • Viendo las capturas donde la gente le responde, está claro que sabían que no era Slackbot, e incluso le decían Tom. Así que choca un poco con el título. Claramente no estaba “sin que nadie se diera cuenta”
    En nuestro Slack también siguen ahí varios exempleados. A veces se pasan a saludar y da gusto verlos. Si uno de ellos un día empezara a imitar a Slackbot en tono sarcástico, seguro también nos reiríamos

    • Lo que quieren decir aquí es que la gerencia no se dio cuenta. Eso también sale claro en el artículo. Sus amigos sabían que estaba ahí y se estaban riendo con él
    • A nosotros nos pasó algo parecido. Slack no era nuestro canal principal de comunicación, pero sí lo usábamos para consultores externos, y había gente que se había ido de la empresa y seguía ahí, sin que la sacaran, organizando almuerzos
  • Donde trabajaba antes tardaban en desactivar las cuentas de Slack. Así que cuando me fui creé un canal privado llamado #daves_cave e invité a mis amigos
    De vez en cuando dejaba alguna anécdota corta o una frase ingeniosa, y estuvo divertido hasta que la gerencia se dio cuenta y desactivó mi cuenta

    • Tengo un equipo personal de Slack de pago, creo que costaba como 10 dólares al mes. Puedes invitar a gente de otros equipos de Slack de pago a una sala y conversar
      Lo bueno de hacerlo así es que es “funcionalidad prevista por diseño”, así que es menos probable que lo cierren, y también menos probable que te metas en problemas por leyes de uso indebido de computadoras
  • Imagino que en la empresa pensaron que la respuesta a este problema era el inicio de sesión único
    Ya no administro IT hoy en día, pero cuando lo hacía, en Azure Active Directory marcábamos como inactiva a la gente que se iba. Entonces ya no podían iniciar sesión en Office 365, Outlook, Teams ni en ningún servicio, ni tampoco en servicios de terceros que usaran el SSO de Microsoft. ¿No tendría sentido conectar Slack a eso?

    • Cualquier departamento de IT competente o con suficiente personal obviamente hace eso. Aunque también es posible que otro departamento haya configurado Slack sin consultar con IT