OIC e segurança: análise do concurso de inteligência competitiva em dias positivos de hackers

imagem

Algumas semanas antes do fórum Positive Hack Days , o tradicional concurso Competitive Intelligence foi realizado. Este ano, contamos com nossa auditoria de segurança e ameaças cibernéticas da OIC , durante a qual tivemos que analisar toda a infraestrutura externa, incluindo a equipe de organizadores, desenvolvedores e consultores, para reduzir riscos. Criamos nossa competição com base em projetos reais.

Todas as tarefas estavam centradas na pequena empresa fictícia Notsopositive, que é uma OIC típica com um pequeno número de funcionários. Durante o concurso, os participantes aprenderam muitas informações ocultas sobre os fundadores e funcionários da empresa, sobre parentes e amigos. Antes de tudo, os participantes precisavam ter um grande número de serviços online e redes sociais em seu arsenal, conhecer suas especificidades e poder usá-las. Além disso, era necessário operar com as informações disponíveis de forma a encontrar os dados necessários sobre as pessoas e usá-las para obter novas.

As tarefas foram distribuídas de forma a que veteranos e iniciantes não se cansassem e todos saíssem com pelo menos uma bandeira. Muitas tarefas formaram uma sequência peculiar e se desenvolveram em uma trama inteira. Também havia tarefas não lineares, portanto os participantes tinham que armazenar informações sobre cada passo dado.

Para resolver a primeira tarefa introdutória, onde o resto começou, você tinha que usar o Google:

imagem

imagem

Todas as tarefas foram construídas em torno de oito funcionários do projeto não positivo da equipe executiva e da equipe de desenvolvimento.

imagem

imagem

Com um estudo cuidadoso do site, os participantes encontraram vários "pontos de entrada" que levaram à solução. Vamos nos aprofundar em cada tarefa com mais detalhes.

Adam Wallace, CMO


Perguntas no segmento de Adam Wallace:

  • Nome de usuário de Adam Wallace?
  • O que o filho de Adam tem alergias?
  • Qual é o número da casa de Adam?
  • Onde o filho de Adão estuda?
  • Nome da barra favorita do CMO?

Portanto, ao se deparar com um site de whitepaper, você precisava fazer o upload de um PDF para qualquer serviço online para ler dados META (por exemplo, PDFCandy ) ou abri-lo no Word, onde era possível encontrar o apelido CMO, também conhecido como Adam Wallace, sumcoinz.

Os amantes de fazer tudo com as mãos poderiam abrir o PDF em seu editor HEX favorito e obter o apelido de Adam por conta própria.

imagem

Além disso, para continuar a cadeia, era necessário encontrar um servidor FTP usando o Knock Subdomain Scanner e, para esse fim, os utilitários dnsmap , sublist3r e sublazerwlst também poderiam ser usados.

imagem

Havia outra maneira: descobrir o endereço IP real do site notsopositive.online, escondido atrás do CloudFlare, e verificar toda a sub-rede em busca da 21ª porta. A abordagem para resolver esta tarefa é individual e depende da experiência e habilidades de cada participante.

Os endereços IP recebidos do servidor FTP e o login foram suficientes para atacar a adivinhação de senha. Para fazer isso, você teve que usar o utilitário lendário THC-Hydra . Parece simples, mas os participantes tiveram que usar todo o dicionário de apelidos encontrados dos organizadores da OIC. A propósito, nos logs do FTP, também vimos tentativas de atacar usuários root, admin, administrador.

Tendo aprendido o login de Adam (sumcoinz), era necessário classificar a senha de acordo com o dicionário mais famoso entre o CTF-schiki.

Durante o concurso, alguns participantes tiveram problemas para se conectar ao FTP devido ao número limitado de clientes, mas o erro de configuração foi corrigido posteriormente. Alteramos a senha do servidor FTP para uma mais simples, a fim de simplificar e acelerar a conclusão da tarefa pelos participantes.

imagem

Um ataque geralmente leva apenas alguns segundos. Em seguida, você precisava acessar o FTP de qualquer maneira conveniente e encontrar um lixo de arquivo típico de um servidor pessoal.

imagem

Além do software, havia fotografias interessantes que continham várias bandeiras ao mesmo tempo.

imagem

A caligrafia desajeitada de Adam mostra o nome do filho, local de estudo, endereço da escola e endereço residencial! Outra bandeira é o alérgeno do filho de Adão. No mesmo servidor, você pode encontrar um arquivo interessante chamado screenshot.jpg:

imagem

A captura de tela do WhatsApp é uma correspondência, presumivelmente de Adam e seu amigo. Em uma mensagem, o amigo de Adam descobre a localização do bar em que, no momento da comunicação, Adam passa um tempo. Utilizando qualquer serviço com mapas de Spokane, o participante poderia "percorrer" a rota descrita e encontrar a barra não positiva positiva de CMO, chamada "7th Rail".

imagem

No momento da conclusão da competição, apenas 20 participantes concluíram com êxito todas as tarefas da história de Adam Wallace e chegaram ao estágio descrito.

Ryan Evans, Diretor de tecnologia


Perguntas à filial de Ryan Evans:

  • Nome de usuário do Github?
  • Endereço de e-mail corporativo?
  • Endereço de e-mail da esposa de Ryan?
  • Nome de usuário da esposa de Ryan?
  • A esposa de Ryan resort?
  • O sobrenome do amigo da esposa de Ryan?
  • Local de trabalho da esposa de Ryan (nome da empresa)?

Ryan Evans - diretor técnico do projeto da OIC. Usando utilitários para pesquisar diretórios e arquivos, por exemplo, dirb ou o dicionário fuzz.txt , na raiz do site notsopositive.online, você pode encontrar o diretório .git, de onde você pode obter todas as fontes do repositório. Em seguida - foi necessário obter a fonte usando esse método, usar o GitRipper , indicando o endereço IP real do site como destino e extrair os arquivos de configuração do sistema de controle de versão do Git. Foi possível obter /.git/config usando um navegador comum.

imagem

imagem

No arquivo de configuração, havia um link para a conta do GitHub de Ryan ( github.com/ryanevans0082 ), onde você podia encontrar a conta do Jabber:

imagem

imagem

Não havia sentido em escrever lá, mas pesquisar no Google é uma boa ideia. A primeira bandeira foi aprovada e você precisou encontrar a conta do Speaker Deck e a única apresentação de oferta inicial de moeda carregada nos resultados de pesquisa do Google.

imagem

Os participantes, que estavam chorando de ver a apresentação, receberam uma recompensa - o e-mail corporativo de Ryan foi publicado no último slide.

imagem

Era inútil resolver a senha do email, mas era possível recuperá-la em um problema secreto:

imagem

Avó, sim :) A questão não é a mais confiável. Em projetos reais, geralmente nos encontramos com projetos semelhantes. A resposta a essas perguntas, via de regra, pode ser encontrada nas redes sociais - em Odnoklassniki, VKontakte e Twitter. O próximo passo é procurar contas:

imagem

Uma barba familiar apareceu no Twitter para Ryan Evans. A propósito, você também pode encontrar uma conta usando o Yandex.

imagem

No Twitter, houve uma menção ao aniversário da avó - 20 de abril.

imagem

A idade exata da avó pode ser calculada pelo número escrito pelo creme no bolo.

imagem

Um pouco de aritmética, e agora descobrimos a data exata de nascimento - 20 de abril de 1946. Uma pergunta razoável surge imediatamente - em que formato Ryan poderia escrever a data? Você pode descobrir rolando no Twitter: havia um post sobre um carro, Kia Carens cinza, comprado em 1 de outubro de 2014. A data está no formato dd.mm.aaaa. Talvez Ryan tenha escrito a resposta para a pergunta de segurança no mesmo formato.

imagem

Nem todos os amantes do OSINT se mostraram entusiastas do carro ao mesmo tempo, portanto alguns participantes tiveram problemas para determinar a marca e o modelo do carro de Adam. Nesses casos, quando a pesquisa de fotos no Google ou a experiência de dirigir não ajuda, o Yandex pode ajudar. Ele identificou a marca e o modelo da Kia Carens.

imagem

A bandeira do modelo de carro do CTO foi aprovada. Em seguida, foi necessário substituir a data de nascimento da avó no formato correto (20/04/1946) como resposta à pergunta secreta “Yandex.Mail”.

Depois disso, foi possível definir qualquer nova senha (o próximo participante a alterou de qualquer maneira) e agora entramos na caixa de correio de Ryan. Nas mensagens enviadas, havia uma carta para a esposa, na qual o participante podia encontrar o email evansmegan02282@yahoo.com .

imagem

A partir do endereço, não foi difícil calcular o nome - Megan, e uma pesquisa nas redes sociais retornou uma página VK:

imagem

Você também pode encontrar Megan no VK através do formulário de recuperação de senha. Para fazer isso, é necessário solicitar uma recuperação de senha, especificar o email e o sobrenome Evans:

imagem

A página possui muitas informações:

  • cidade natal
  • Universidade
  • local de trabalho (em assinaturas),
  • local de férias (etiquetas GPS nas fotos EXIF),
  • algumas fotos para determinar a aparência,
  • interesses aproximados.
  • Várias bandeiras sobre Megan foram entregues de uma só vez.

Tendo em mente tudo o que há de novo em Megan, o participante provavelmente pensou: "Por que Megan não respondeu à foto com o gato na correspondência por e-mail?". De fato, algo é impuro aqui.

Poucas pessoas descobriram uma maneira de continuar a solução, mas quem a adivinhou - entrou entre os 10 principais participantes.

Portanto, instale o Tinder e emule a localização geográfica usando aplicativos como GPS falso - ou coloque o Tinder no Bluestacks, onde uma função semelhante está presente imediatamente.

imagem

O local de descanso Megan (Miami, Flórida) foi encontrado com base nas geometrias de suas fotografias na página VK. Usando o GPS falso, você teve que “voar” para Miami, Flórida, definir o público-alvo com os parâmetros de Megan (você já sabe a idade e a localização exata do perfil VK) e deslizar as meninas. Depois de 5 a 10 mulheres bonitas, “a única” Megan Evans foi descoberta. Mas seu nome e sobrenome em Tinder eram diferentes, mas as fotos de VKontakte ajudaram a garantir que fosse ela.

imagem

Para garantir que isso não seja um erro, mas precisamos da Megan, foi necessário verificar o local de estudo e a cidade natal importados automaticamente do Facebook ao conectar a conta. A bandeira do local de trabalho da esposa do CTO foi aprovada.

Além disso, a busca continuou na segunda identidade "sombra" de Megan. Recurso Tinder - o local de trabalho é automaticamente substituído no perfil do Facebook. Portanto, você pode acessar imediatamente o Facebook para encontrar a página Scamsopositive.

imagem

Usando o método de inteligência "estudante ciumento", também conhecido como "rompendo gostos", você pode encontrar a página de Joanne Brandt e passar como última bandeira o nome do único amigo nesta página - Rossi.

imagem

As tarefas restantes eram de menor nível de dificuldade e foram combinadas em pequenas missões com bandeiras relativamente baratas. Para a solução, pode ser necessário um conhecimento especial sobre a operação de alguns serviços. Por exemplo, a tarefa de definir o modelo de telefone celular do desenvolvedor front-end Alexei Naborshchikov sugeriu que o participante estava ciente da oportunidade de especificar o modelo de seu gadget favorito em seu perfil no fórum w3bsit3-dns.com.

Então, para começar, era necessário encontrar o front-end de Alexey nas redes sociais.

imagem

Uma solicitação ao Facebook foi emitida várias de uma vez, mas há apenas um especialista em TI. A fina linha de conexão entre a descrição no site da empresa e a conta do Facebook foi o avatar temático que emitiu a orientação profissional de nossa vítima.

imagem

O endereço da página exclusivo (m0arc0de) nos deu um apelido usado com frequência. Isso foi seguido por uma pesquisa em w3bsit3-dns.com ou xda-developers. Por apelido, você pode encontrar o desenvolvedor front-end do Notsopositive. No campo "Sobre mim", Alexey escreveu sobre si mesmo todas as informações que precisamos, o que nos permite determinar inequivocamente que é exatamente disso que precisamos. A bandeira com o modelo do telefone é entregue.

imagem

Na tarefa de encontrar um hacker desconhecido (nome de usuário do cara malvado no serviço freelancer Anonymous), supunha-se que o participante estivesse ciente de um novo portal para posicionamento anônimo de vários serviços e ofertas comerciais chamado Yukon. Depois de folhear um pouco a seção "Trabalho", era possível encontrar um anúncio curioso com referência direta ao site em estudo. Nos contatos para feedback, também foi indicado o endereço para correspondência, no qual estava o apelido do "malvado".

imagem

E aqueles que não ouviram falar de Yukon? Aqui os idiotas mais simples do Google vêm em socorro, e a resposta geralmente está oculta na própria pergunta.

imagem

O primeiro resultado na emissão é o site que precisamos. Uma pesquisa por apelido mostrou que d34dl0ck é um apelido muito comum; portanto, há muitas pessoas associadas a esse apelido. Foi possível identificar o d34dl0ck que precisávamos pelo método de exclusão, verificando cada um.

imagem

Depois de restringir o círculo de busca ao endereço de e-mail, obtivemos um resultado exclusivamente adequado.

imagem

Em uma mensagem no fórum, descobrimos que nosso cliente de serviços sombra possui as habilidades para desenvolver malware.

imagem

imagem

Que tipo de malware ele escreveu? O arquivo com o código-fonte prometido acabou sendo um arquivo executável. A estrutura de destino do .NET 3.5 aponta para a linguagem de desenvolvimento mais provável, C #. Uma pesquisa na rede por “Rasgo oculto” também indicou C #. Mas o que exatamente mudou no código? O descompilador do .NET Reflector ajudará aqui. Observando todas as precauções ao trabalhar com código malicioso, você precisa carregar o arquivo executável no descompilador. O NET Reflector faz um excelente trabalho de descompilar o aplicativo. GenEthAddress foi encontrado na lista de funções usadas em um formulário; seu nome corresponde mais à pergunta na tarefa de número da carteira do cara mau.

imagem

Uma rápida olhada no código descompilado tornou possível entender o algoritmo para "construir" um endereço de carteira de quatro linhas. Linhas de comprimento igual são concatenadas em uma grande e, em seguida, são convertidas em uma matriz de caracteres. A matriz resultante é invertida. A função GenEthAddress é chamada a partir da função messageCreator e a versão final do número da carteira é criada nela. Antes do início da matriz, '0x' é substituído.

imagem

Uma solução mais fácil com o sofrimento associado a uma máquina virtual é executar o vírus executável. A mensagem de criptografia de arquivos exibe o endereço da carteira ETH.

imagem

Você também pode descobrir o endereço IP do servidor da web notsopositive.online oculto por trás do CloudFlare de várias maneiras. Cada tarefa foi resolvida de acordo com o caminho planejado pelos organizadores; no entanto, os participantes frequentemente encontravam caminhos alternativos.

No topo do site da OIC, você pode encontrar um link para a página de inscrição para obter notícias da empresa, e uma maneira de descobrir o endereço IP do CloudFlare é enviar um email do servidor para seu e-mail e ver os cabeçalhos. No entanto, existem outros .

imagem

Vamos ao formulário, indicamos nele qualquer nome e seu endereço de e-mail.

imagem

Na carta que chegou, você tinha que abrir os cabeçalhos de serviço e obter o seguinte:

imagem

e passe 178.170.172.110 como uma bandeira.

Um membro com o apelido @ AlexPavlov60 encontrou uma maneira alternativa de descobrir o endereço IP oculto usando Shodan. Se durante a passagem o participante já conhecia o endereço IP do servidor FTP, era aconselhável verificar a sub-rede inteira quanto à presença de outros servidores não positivos pertencentes à empresa.

A pedido: net: 178.170.172.0/24 product: "Apache httpd " Shodan retorna vários servidores ao mesmo tempo, incluindo um com um DNS familiar.

imagem

Outro mecanismo de pesquisa obscuro que poderia nos ajudar, o Censys, foi sugerido por @rdafhaisufyhiwufiwhfiuhsaifhsaif.

A pedido: https://censys.io/ipv4?q=80.http.get.title%3ANotSoPositive , também retorna o endereço desejado.

imagem

Obviamente, também existem soluções prontas para recuperar o endereço IP oculto por trás do CloudFlare. O membro Blablablashenka usou o utilitário Hatcloud , que encontrou um endereço vizinho da sub-rede. Tudo o que restava era procurar servidores web lá.

Encontrar outro domínio apontado por esse endereço IP acabou sendo bastante fácil: o registro PTR foi mostrado por todos os serviços nos quais você pode obter informações sobre IP; portanto, o custo da tarefa ficou um pouco desalinhado com a complexidade. A resposta é scamsopositive.com.

James Taylor, CEO


Perguntas neste tópico:

  • Modelo de carro do CEO
  • 'Encontre o apelido do CEO (sabemos que o nome do amigo dele é James Cottone)
  • Vamos ver como você pode usar o Facebook: encontre o filho do CEO
  • Descubra sua carteira eletrônica e com quem o filho do CEO está conectado

Na página da OIC, havia uma menção ao Telegram, mas o link não levava a lugar algum. Foi uma pequena dica para procurar um canal ou chat NOTSOPOSITIVE:

imagem

Lá você pode encontrar a conta do CEO, com um avatar e seu carro.

imagem

Usando a pesquisa de imagens no Google, foi fácil encontrar o carro de James na foto - este é o Toyota Land Cruiser.

imagem

Em seguida, foi necessário encontrar o apelido do CEO, que não estava no Telegram. No entanto, sabia-se que um de seus amigos era James Cottone. Uma das opções de solução que estabelecemos é usar o serviço de recuperação de senha do Facebook, onde você pode especificar o nome de um amigo para procurar uma conta:

imagem

De fato, muitos serviços permitem descobrir se determinados números de email ou telefone estão vinculados ao serviço. Depois de inserir o nome e o sobrenome de um amigo, chegou uma notificação de que o código de acesso será enviado ao correio:

imagem

É fácil adivinhar que o e-mail é taylor@notsopositive.online. Além disso, uma das opções propostas pelo participante é usar o serviço anymailfinder.com, que exibe imediatamente os endereços de email de alguns dos funcionários:

imagem

Além disso, conhecendo o correio, foi possível passar pelo processo de recuperação novamente e ver como é o avatar dele:

imagem

E então encontre sua página e apelido:

imagem

Para procurar um filho, foi necessário usar o recurso do Facebook: ele tem a capacidade de visualizar quais publicações o usuário gosta. Tudo isso pode ser visto neste serviço . De acordo com os gostos estabelecidos por James, perfis de esposa e filho foram revelados.

imagem

imagem

Na página do filho, está o login do Twitch (br4yl0r), mas isso não nos deu nada. Os mecanismos de pesquisa também não têm quase nada. Nesses casos, se as páginas de perfil não forem indexadas, é útil usar utilitários como namechk.com, que mostrarão o uso de apelidos e nomes de domínio em diferentes serviços da Web. Assim, foi possível encontrar um perfil no Steam e no GitHub - STKLRZSQUAD. Aqui, novamente, era necessário conhecer as especificidades do serviço e ver o que Bradley dispunha. Em seguida, localizando este bytecode:

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

e procurando os cabeçalhos, percebemos que este é o bytecode do contrato inteligente:

imagem

Depois tivemos que usar o utilitário para convertê-lo em opcode, por exemplo aqui . Dentro, encontre a carteira já conhecida de outra tarefa:

imagem

O filho do CEO ordenou um ataque à OIC de seu pai?

Rajesh Bishop, Administrador do sistema


Perguntas neste tópico:

  • Descubra o nome de domínio do site pessoal do administrador do sistema
  • Tente encontrar o email pessoal de sysadmin
  • Qual é a marca de cerveja favorita da sysadmin?
  • O nome do restaurante, onde sysadmin bebeu cerveja recentemente

Como sempre, foi necessário começar com um reconhecimento típico para descobrir o domínio mail.notsopositive.online, em que o nmap foi usado para encontrar um certificado autoassinado que também funcionava para outro domínio:

imagem

Então, fazendo QUALQUER consulta no DNS bishopshomepage.win, você pode encontrar o endereço de e-mail dele:

imagem

Então - responda à pergunta sobre a cerveja favorita de Rajesh. Muitos amantes de cerveja estão familiarizados com uma rede social como o Untappd (que pode ser encontrada solicitando "rede social de cerveja"). Uma opção era, como sempre, usar outros mecanismos de pesquisa:

imagem

Além disso, é mais fácil: encontre o perfil do administrador do sistema, ele tem a única foto com uma hashtag.

imagem

No entanto, não há hashtags nesta rede social, o que deveria ter motivado a idéia do que você precisa procurar por outras pessoas: VKontakte, Facebook, Twitter e Instagram. No último, pode-se encontrar uma foto com marcação geográfica:

imagem

Sede NOTSOPOSITIVE


A busca pela sede novamente exigiu que os licitantes se esforçassem e vasculhassem todas as redes sociais. A resposta estava no LinkedIn:

imagem

Mark Fox CSO


Para entender onde o concurso começa com o CSO, você precisa usar o fuzz.txt novamente e encontrar o arquivo .DS_Store que o macOS reserva no diretório raiz da web. Tendo descriptografado usando o utilitário online https://labs.internetwache.org/ds_store/ ou olhando o arquivo binário, você pode encontrar as seguintes linhas:

imagem

No endereço e a verdade estava uma foto de alguma pessoa. Além disso, um dos recursos do Faceboock: anteriormente, ao salvar um arquivo, o segundo valor numérico era a identificação com foto. Portanto, foi possível encontrar um perfil:

imagem

No perfil e no endereço corporativo da marca: mmmmmmmmfox@notsopositive.online

Sumário


Este ano, mais de 500 pessoas participaram e pelo menos uma tarefa completou quase 300. O vencedor novamente foi Noyer_1k , cujos esforços foram recompensados ​​com relógios inteligentes da Apple Watch, convites para o fórum e lembranças dos organizadores. O segundo lugar, Power Bank , um convite para o fórum e lembranças mereceu Kaimi0 . Terceiro lugar, o livro Open Source Intelligence Techniques: Recursos para pesquisar e analisar informações on-line, um convite e lembranças levaram empty_jack . Tabela final de resultados:

#ApelidoPontos
1Noyer_1k816
2Kaimi0816
3empty_jack816
4Antxak786
5V88005553535661
6jerh17611
7shsilvs556
8someotherusername526
9trace_rt491
10cavaleiro das trevas481

Parabéns aos vencedores!

Análise de competições anteriores:


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


All Articles