ICO y seguridad: análisis del concurso de inteligencia competitiva en los días de pirateo positivo

imagen

Unas semanas antes del foro Positive Hack Days , se llevó a cabo el tradicional concurso de Inteligencia Competitiva. Este año, confiamos en nuestra auditoría de seguridad y ciberamenazas ICO , durante las cuales tuvimos que analizar toda la infraestructura externa, incluido el equipo de organizadores, desarrolladores y consultores, para reducir los riesgos. Creamos nuestra competencia basada en proyectos reales.

Todas las tareas se centraron en la pequeña y ficticia compañía de ventas multitudinarias Notsopositive, que es una ICO típica con un pequeño número de empleados. Durante el concurso, los participantes aprendieron mucha información oculta sobre los fundadores y empleados de la empresa, sobre sus familiares y amigos. En primer lugar, los participantes debían tener una gran cantidad de servicios en línea y redes sociales en su arsenal, conocer sus datos específicos y poder usarlos. Además, era necesario operar con la información disponible de tal manera que encontrara los datos necesarios sobre las personas y los utilizara para obtener nuevos.

Las tareas se distribuyeron de tal manera que tanto los veteranos como los principiantes no se aburrieron y todos se fueron con al menos una bandera. Muchas tareas formaron una secuencia peculiar y se desarrollaron en una trama completa. También hubo tareas que no fueron lineales, por lo que los participantes tuvieron que almacenar información sobre cada paso dado.

Para resolver la primera tarea introductoria, donde comenzó el resto, tenía que usar Google:

imagen

imagen

Todas las tareas se construyeron alrededor de ocho empleados del proyecto Notsopositive del Equipo Ejecutivo y el Equipo de Desarrollo.

imagen

imagen

Con un estudio cuidadoso del sitio, los participantes se toparon con varios "puntos de entrada" que condujeron a la solución. Detengámonos en cada tarea con más detalle.

Adam Wallace, director de marketing


Preguntas en el hilo de Adam Wallace:

  • Adam Wallace nombre de usuario?
  • ¿A qué tiene alergias el hijo de Adam?
  • ¿Cuál es el número de la casa de Adam?
  • ¿Dónde estudia el hijo de Adam?
  • ¿El nombre de barra favorito de CMO?

Entonces, después de tropezar con un sitio web de whitepaper, tuvo que cargar un PDF a cualquier servicio en línea para leer datos META (por ejemplo, PDFCandy ) o abrirlo en Word, donde podría encontrar el apodo CMO, también conocido como Adam Wallace, sumcoinz.

Los amantes de hacer todo con sus manos podrían abrir el PDF en su editor HEX favorito y obtener el apodo de Adam por su cuenta.

imagen

Además, para continuar la cadena, era necesario encontrar un servidor FTP utilizando el Escáner de subdominio de Knock , y para este propósito, podría usar las utilidades dnsmap , sublist3r , sublazerwlst .

imagen

Había otra forma: averiguar la dirección IP real del sitio web notsopositive.online, oculto detrás de CloudFlare, y escanear toda la subred en busca del puerto 21. El enfoque para resolver esta tarea es individual y depende de la experiencia y las habilidades de cada participante.

Las direcciones IP recibidas del servidor FTP y el inicio de sesión fueron suficientes para atacar la adivinación de contraseñas. Para hacer esto, tenía que usar la legendaria utilidad THC-Hydra . Suena simple, pero los participantes tuvieron que usar todo el diccionario de apodos encontrados de los organizadores de ICO. Por cierto, en los registros de FTP también vimos intentos de atacar a usuarios root, administradores y administradores.

Habiendo aprendido el inicio de sesión de Adam (sumcoinz), fue necesario ordenar la contraseña de acuerdo con el diccionario más famoso entre CTF-schiki.

Durante el concurso, algunos participantes tuvieron problemas para conectarse a FTP debido al número limitado de clientes, pero el error de configuración se solucionó más tarde. Cambiamos la contraseña del servidor FTP a una más simple para simplificar y acelerar la finalización de la tarea por parte de los participantes.

imagen

Un ataque generalmente toma solo unos segundos. Luego, tenía que ir a FTP de cualquier manera conveniente y encontrar una papelera de archivos típica de un servidor personal.

imagen

Además del software, había fotografías interesantes que contenían varias banderas a la vez.

imagen

¡La letra torpe de Adam muestra el nombre, lugar de estudio, dirección de la escuela y domicilio de su hijo! Otra bandera es el alergeno del hijo de Adán. En el mismo servidor, puede encontrar un archivo interesante llamado screenshot.jpg:

imagen

La captura de pantalla de WhatsApp es una correspondencia, presumiblemente por Adam y su amigo. En un mensaje, el amigo de Adam descubre la ubicación de la barra en la que, en el momento de su comunicación, Adam pasa el tiempo. Usando cualquier servicio con mapas de Spokane, el participante podría "seguir" la ruta descrita y tropezar con la barra Notsopositive de CMO favorita llamada "7th Rail".

imagen

En el momento de la finalización de la competencia, solo 20 participantes completaron con éxito todas las tareas de la historia de Adam Wallace y llegaron a la etapa descrita.

Ryan Evans, CTO


Preguntas a la sucursal de Ryan Evans:

  • Nombre de usuario Github?
  • Dirección de correo electrónico corporativo?
  • ¿La dirección de correo electrónico de la esposa de Ryan?
  • Nombre de usuario de la esposa de Ryan?
  • Resort de la esposa de Ryan?
  • ¿El apellido de la esposa de Ryan, amigo?
  • Lugar de trabajo de la esposa de Ryan (nombre de la empresa)?

Ryan Evans - Director técnico del proyecto ICO. Usando utilidades para buscar directorios y archivos, por ejemplo dirb o el diccionario fuzz.txt , en la raíz del sitio web notsopositive.online puede encontrar el directorio .git, desde donde puede obtener todas las fuentes del repositorio. A continuación, era necesario obtener la fuente usando este método, usar GitRipper , que indica la dirección IP real del sitio como destino, y extraer los archivos de configuración del sistema de control de versiones Git. Fue posible obtener /.git/config usando un navegador normal.

imagen

imagen

En el archivo de configuración, había un enlace a la cuenta GitHub de Ryan ( github.com/ryanevans0082 ), donde podía tropezar con su cuenta Jabber:

imagen

imagen

No tenía sentido escribir allí, pero buscar con Google es una buena idea. Se pasó la primera bandera, luego tuvo que encontrar la cuenta de la cubierta de altavoces y la única presentación de oferta inicial de monedas cargada en los resultados de búsqueda de Google.

imagen

Los participantes, que lloraron de lágrimas de sangre al ver la presentación, recibieron una recompensa: el correo electrónico corporativo de Ryan se publicó en la última diapositiva.

imagen

Fue inútil ordenar la contraseña del correo electrónico, pero fue posible recuperarla por un problema secreto:

imagen

Abuela, sí :) La pregunta no es la más confiable. En proyectos reales, a menudo nos encontramos con proyectos similares. La respuesta a estas preguntas, por regla general, se puede encontrar en las redes sociales, en Odnoklassniki, VKontakte y Twitter. El siguiente paso es buscar cuentas:

imagen

Una barba familiar apareció en Twitter para Ryan Evans. Por cierto, también puedes encontrar una cuenta usando Yandex.

imagen

En Twitter, se mencionó el cumpleaños de su abuela, el 20 de abril.

imagen

La edad exacta de la abuela podría calcularse por el número escrito por la crema en el pastel.

imagen

Un poco de aritmética, y ahora descubrimos la fecha exacta de nacimiento: 20 de abril de 1946. Una pregunta razonable surge de inmediato: ¿en qué formato podría Ryan escribir la fecha? Puede averiguarlo desplazándose en Twitter: había una publicación sobre un automóvil, Kia Carens gris, comprado el 1 de octubre de 2014. La fecha tiene el formato dd.mm.aaaa. Quizás Ryan escribió la respuesta a la pregunta de seguridad en el mismo formato.

imagen

No todos los amantes de OSINT resultaron ser entusiastas del automóvil al mismo tiempo, por lo que algunos participantes tuvieron problemas para determinar la marca y el modelo del automóvil de Adam. En aquellos casos en que la búsqueda de imágenes en Google o la experiencia de manejo no ayuda, Yandex puede acudir al rescate. Identificó la marca y el modelo de Kia Carens.

imagen

La bandera del modelo de automóvil de CTO pasó. Luego, fue necesario sustituir la fecha de nacimiento de la abuela en el formato correcto (20/04/1946) como respuesta a la pregunta secreta "Yandex.Mail".

Después de eso, fue posible establecer una nueva contraseña (el siguiente participante la cambió de todos modos) y ahora entramos en el buzón de Ryan. En los mensajes enviados había una carta a su esposa en la que el participante podía encontrar su correo electrónico evansmegan02282@yahoo.com .

imagen

Desde la dirección no fue difícil calcular el nombre: Megan, y una búsqueda en las redes sociales arrojó una página VK:

imagen

También puede encontrar a Megan en VK a través del formulario de recuperación de contraseña. Para hacer esto, debe solicitar una recuperación de contraseña, especificar el correo electrónico y el apellido Evans:

imagen

La página tiene una gran cantidad de información:

  • ciudad natal
  • Universidad
  • lugar de trabajo (en suscripciones),
  • lugar de vacaciones (etiquetas GPS en fotos EXIF),
  • algunas fotos para determinar la apariencia,
  • Intereses aproximados.
  • Varias banderas sobre Megan fueron entregadas a la vez.

Teniendo en cuenta todo lo nuevo sobre Megan, el participante probablemente pensó: "¿Por qué Megan no respondió a la foto con el gato en la correspondencia por correo electrónico?". De hecho, algo es inmundo aquí.

Pocas personas descubrieron una forma de continuar con la solución, pero quienes lo adivinaron ingresaron a los 10 principales participantes.

Por lo tanto, instale Tinder y emule la geolocalización utilizando aplicaciones como Fake GPS , o coloque Tinder en Bluestacks, donde hay una función similar lista para usar.

imagen

El lugar de descanso Megan (Miami, Florida) fue encontrado en base a las geometrías en sus fotografías de la página VK. Utilizando GPS falso, tenía que "volar" a Miami, Florida, establecer el público objetivo a los parámetros de Megan (ya conoce la edad y la ubicación exacta del perfil VK) y deslizar a las chicas. Después de 5 a 10 bellas damas, se descubrió a "la única" Megan Evans. Pero su nombre y apellido en Tinder resultaron ser diferentes, pero las fotos de VKontakte ayudaron a asegurarse de que fuera ella.

imagen

Para asegurarnos de que esto no sea un error, sino el Megan que necesitamos, fue necesario verificar el lugar de estudio y la ciudad natal automáticamente importados de Facebook al conectar la cuenta. La bandera del lugar de trabajo de la esposa de CTO pasó.

Además, la búsqueda continuó en la segunda identidad "sombra" de Megan. Característica de yesca: el lugar de trabajo se sustituye automáticamente del perfil de Facebook. Por lo tanto, puede ir de inmediato a Facebook para encontrar la página Scamsopositive.

imagen

Usando el método de inteligencia "estudiante celoso", también conocido como "rompiendo me gusta", puede encontrar la página de Joanne Brandt y pasar como la última bandera el nombre del único amigo en esta página: Rossi.

imagen

Las tareas restantes eran de menor nivel de dificultad y se combinaron en pequeñas misiones con banderas relativamente baratas. Para la solución, es posible que se requiera un conocimiento especial sobre el funcionamiento de algunos servicios. Por ejemplo, la tarea de definir el modelo de teléfono móvil del desarrollador front-end Alexei Naborshchikov sugirió que el participante era consciente de la oportunidad de especificar el modelo de su dispositivo favorito en su perfil en el foro w3bsit3-dns.com.

Entonces, para empezar, era necesario encontrar el front-end de Alexey en las redes sociales.

imagen

Una solicitud a Facebook emitió varias a la vez, pero solo hay un especialista en TI. La delgada línea de conexión entre la descripción en el sitio web de la empresa y la cuenta de Facebook fue el avatar temático que emitió la orientación profesional de nuestra víctima.

imagen

La dirección de página única (m0arc0de) nos dio un apodo de uso frecuente. Esto fue seguido por una búsqueda en w3bsit3-dns.com o xda-developers. Por apodo, puede encontrar el desarrollador front-end de Notsopositive. En el campo "Acerca de mí", Alexey escribió sobre sí mismo toda la información que necesitamos, lo que nos permite determinar sin ambigüedades que es exactamente lo que necesitamos. Se entrega la bandera con el modelo de teléfono.

imagen

En la tarea de encontrar un pirata informático desconocido (nombre de usuario del chico malvado en el servicio independiente anónimo), se asumió que el participante conocería un nuevo portal para la colocación anónima de varios servicios y ofertas comerciales llamado Yukon. Después de hojear un poco la sección "Trabajo", se puede encontrar un anuncio curioso con referencia directa al sitio en estudio. En los contactos para recibir comentarios, también se indicaba la dirección de correo, en la que se encontraba el apodo del tipo "malvado".

imagen

¿Qué pasa con aquellos que no han oído hablar de Yukon? Aquí los dorks más simples de Google vienen al rescate, y la respuesta a menudo está oculta en la pregunta misma.

imagen

El primer resultado en la emisión es el sitio que necesitamos. Una búsqueda por apodo mostró que d34dl0ck es un apodo muy común, por lo que hay muchas personas asociadas con este apodo. Fue posible identificar el d34dl0ck que necesitábamos mediante el método de exclusión, comprobando cada uno.

imagen

Después de reducir el círculo de búsqueda a la dirección de correo, obtuvimos un resultado excepcionalmente adecuado.

imagen

En un mensaje en el foro, encontramos que nuestro cliente de servicios en la sombra tiene las habilidades para desarrollar malware.

imagen

imagen

¿Qué tipo de malware escribió? El archivo con el código fuente prometido resultó ser un archivo ejecutable. El framework .NET 3.5 de destino apunta al lenguaje de desarrollo más probable, C #. Una búsqueda en la red de "lágrima oculta" también indicó C #. Pero, ¿qué ha cambiado exactamente en el código? El descompilador .NET Reflector ayudará aquí. Al observar todas las precauciones cuando se trabaja con código malicioso, debe cargar el archivo ejecutable en el descompilador. NET Reflector hace un excelente trabajo descompilando la aplicación. GenEthAddress se encontró en la lista de funciones utilizadas en un formulario; su nombre coincide más con la pregunta en la tarea de número de billetera del tipo Malvado.

imagen

Una rápida mirada al código descompilado permitió comprender el algoritmo para "construir" una dirección de billetera de cuatro líneas. Las líneas de igual longitud se concatenan en una grande y luego se convierten en una matriz de caracteres. La matriz resultante se voltea. La función GenEthAddress se llama desde la función messageCreator y se crea la versión final del número de billetera. Antes del comienzo de la matriz, '0x' se sustituye.

imagen

Una solución más fácil con el sufrimiento asociado de una máquina virtual es ejecutar el virus ejecutable. El mensaje de cifrado de archivo muestra la dirección de la billetera ETH.

imagen

También puede encontrar la dirección IP del servidor web notsopositive.online oculto detrás de CloudFlare de varias maneras. Cada tarea se resolvió de acuerdo con el camino planificado por los organizadores, sin embargo, los participantes a menudo encontraron caminos alternativos.

En la parte superior del sitio web de ICO, puede encontrar un enlace a la página de suscripción para recibir noticias de la compañía, y una forma de averiguar la dirección IP de CloudFlare es enviar un correo electrónico desde el servidor a su correo y ver los encabezados. Sin embargo, hay otros .

imagen

Vamos al formulario, indicamos en él cualquier nombre y su dirección de correo electrónico.

imagen

En la carta que llegó, tenía que abrir los encabezados de servicio y obtener lo siguiente:

imagen

y pasar 178.170.172.110 como bandera.

Un miembro con el apodo @ AlexPavlov60 encontró una forma alternativa de averiguar la dirección IP oculta utilizando Shodan. Si durante el pasaje el participante ya conocía la dirección IP del servidor FTP, era aconsejable verificar en toda la subred la presencia de otros servidores no positivos pertenecientes a la empresa.

A petición: neto: 178.170.172.0/24 producto: "Apache httpd " Shodan devuelve varios servidores a la vez, incluido uno con un DNS familiar.

imagen

@Rdafhaisufyhiwufiwhfiuhsaifhsaif sugirió otro motor de búsqueda sospechoso que podría ayudarnos, Censys.

A petición: https://censys.io/ipv4?q=80.http.get.title%3ANotSoPositive también devuelve la dirección deseada.

imagen

Por supuesto, también hay soluciones listas para recuperar la dirección IP oculta detrás de CloudFlare. El miembro de Blablablashenka utilizó la utilidad Hatcloud , que encontró una dirección vecina de la subred. Todo lo que quedaba era buscar servidores web allí.

Encontrar otro dominio señalado por esta dirección IP resultó ser muy fácil: resultó que todos los servicios mostraban el registro PTR en el que puede obtener información sobre IP, por lo que el costo del trabajo estaba un poco fuera de línea con la complejidad. La respuesta es scamsopositive.com.

James Taylor, CEO


Preguntas en este hilo:

  • Modelo de coche del CEO
  • 'Encuentra el apodo del CEO (sabemos que el nombre de su amigo es James Cottone)
  • Veamos cómo puedes usar Facebook: encuentra al hijo del CEO
  • Descubra su billetera electrónica y con quién está conectado el hijo del CEO

En la página de ICO había una mención de Telegram, pero el enlace no llevaba a ninguna parte. Fue una pequeña pista para buscar un canal o chat NOTSOPOSITIVE:

imagen

Allí podría encontrar la cuenta del CEO, con un avatar y su automóvil.

imagen

Utilizando la búsqueda en imágenes en Google fue fácil encontrar el auto de James en la foto: este es Toyota Land Cruiser.

imagen

Luego, fue necesario encontrar el apodo del CEO, que no estaba en Telegram. Sin embargo, se sabía que uno de sus amigos era James Cottone. Una de las opciones de solución que establecimos es utilizar el servicio de recuperación de contraseña de Facebook, donde puede especificar el nombre de un amigo para buscar una cuenta:

imagen

De hecho, muchos servicios permiten averiguar si ciertos correos electrónicos o números de teléfono están vinculados al servicio. Después de ingresar el nombre y el apellido de un amigo, llegó una notificación de que el código de acceso se enviará al correo:

imagen

Es fácil adivinar que el correo es taylor@notsopositive.online. Además, una de las opciones propuestas por el participante es utilizar el servicio anymailfinder.com, que muestra inmediatamente las direcciones de correo electrónico de algunos de los empleados:

imagen

Además, conociendo el correo, fue posible volver a realizar el proceso de recuperación y ver cómo se ve su avatar:

imagen

Y luego encuentra su página y apodo:

imagen

Para buscar un hijo, era necesario usar la función de Facebook: tiene la capacidad de ver qué publicaciones le gustan al usuario. Todo esto se puede ver en este servicio . Según los gustos establecidos por James, se revelaron los perfiles de su esposa e hijo.

imagen

imagen

En la página del hijo está su inicio de sesión de Twitch (br4yl0r), sin embargo, esto no nos dio nada. Los motores de búsqueda tampoco tienen casi nada. En tales casos, si las páginas de perfil no están indexadas, es útil utilizar utilidades como namechk.com, que mostrará el uso de apodos y nombres de dominio en diferentes servicios web. Por lo tanto, fue posible encontrar un perfil en Steam, y desde allí en GitHub - STKLRZSQUAD. Una vez más, era necesario conocer los detalles del servicio y ver lo que Bradley expuso en términos generales. A continuación, encuentre este código de bytes:

 0x606060405234801561001057600080fd5b5061013d806100206000396000f30060806040526004 3610610041576000357c010000000000000000000000000000000000000000000000000000000090046 3ffffffff16806338cc48311461009e575b737527f9ac752aaddbb54432d288f9a89191f7954f73fffff fffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888 f1935050505015801561009b573d6000803e3d6000fd5b50005b3480156100aa57600080fd5b506100b36 100f5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673fffffffffffffffffffff fffffffffffffffffff16815260200191505060405180910390f35b6000737527f9ac752aaddbb54432d28 8f9a89191f7954f9050905600a165627a7a72305820a369acc2650e24d84edd29c97cee2db1f5caada8315 81fa2482a002b87404aba0029 

y buscando los encabezados, nos dimos cuenta de que este es el código de bytes del contrato inteligente:

imagen

Luego solo tuvimos que usar la utilidad para convertirlo en código de operación, por ejemplo aquí . En el interior, encuentre la billetera ya conocida de otra tarea:

imagen

¿El hijo del CEO ordenó un ataque contra el ICO de su padre?

Rajesh Bishop, administrador del sistema


Preguntas en este hilo:

  • Averigüe el nombre de dominio del sitio web personal del administrador del sistema
  • Intenta encontrar el correo electrónico personal de sysadmin
  • ¿Cuál es la marca de cerveza favorita de sysadmin?
  • El nombre del restaurante, donde sysadmin bebió cerveza recientemente.

Como de costumbre, fue necesario comenzar con un reconocimiento típico para descubrir el dominio mail.notsopositive.online, donde usar nmap para encontrar un certificado autofirmado que también funcionó para otro dominio:

imagen

Luego, al hacer CUALQUIER consulta en DNS bishopshomepage.win, puede encontrar su dirección de correo electrónico:

imagen

Luego, responda la pregunta sobre la cerveza favorita de Rajesh. Muchos amantes de la cerveza están familiarizados con una red social como Untappd (que se puede encontrar solicitando "red social de cerveza"). Una opción era, como siempre, utilizar otros motores de búsqueda:

imagen

Además, es más fácil: encuentra el perfil del administrador del sistema, tiene la única foto con un hashtag.

imagen

Sin embargo, no hay hashtags en esta red social, lo que debería haber provocado la idea de lo que necesita para buscar a otros: VKontakte, Facebook, Twitter e Instagram. En el último, se puede encontrar una foto con geoetiquetado:

imagen

Sede central NO SOCIOSOTIVA


La búsqueda de la sede nuevamente exigió que los postores hagan un esfuerzo y busquen en todas las redes sociales. La respuesta estaba en LinkedIn:

imagen

Mark Fox CSO


Para entender dónde comienza el concurso con CSO, tuvo que usar fuzz.txt nuevamente y buscar el archivo .DS_Store que macOS reserva en su directorio web raíz. Después de descifrarlo utilizando la utilidad en línea https://labs.internetwache.org/ds_store/ o mirando el archivo binario, puede encontrar las siguientes líneas:

imagen

En la dirección y la verdad fue una foto de alguna persona. Además, una de las características de Faceboock: anteriormente, al guardar un archivo, el segundo valor numérico era la identificación con foto. Entonces fue posible encontrar un perfil:

imagen

En perfil y dirección corporativa de la marca: mmmmmmmmfox@notsopositive.online

Resumen


Este año, participaron más de 500 personas, y al menos una tarea completó casi 300. El ganador nuevamente fue Noyer_1k , cuyos esfuerzos fueron recompensados ​​con relojes inteligentes Apple Watch, invitaciones al foro y recuerdos de los organizadores. El segundo lugar, Power Bank , una invitación al foro y recuerdos mereció Kaimi0 . Tercer lugar, el libro Técnicas de inteligencia de código abierto: recursos para buscar y analizar información en línea, una invitación y recuerdos tomaron empty_jack . Tabla final de resultados:

# #ApodoPuntos
1Noyer_1k816
2Kaimi0816
3vacia_jack816
4 4Antxak786
5 5V88005553535661
6 6jerh17611
7 7shsilvs556
8otro nombre de usuario526
9 9trace_rt491
10caballero de la sombra481

¡Felicitaciones a los ganadores!

Análisis de competiciones anteriores:


Source: https://habr.com/ru/post/es413203/


All Articles