Resultados da fase online do NeoQUEST-2020: sobreviveram da melhor maneira possível



O NeoQUEST-2020 chegou ao fim e agora é a hora de falar sobre essas duas semanas ricas: revelaremos a essência das tarefas (mas nem todas, algumas sairão como desvantagens), mostraremos as estatísticas de seu progresso e anunciaremos os vencedores!

Atenção! O artigo contém spoilers para aqueles que ainda não concluíram a tarefa, mas estão honestamente (e existe uma oportunidade - o site de estágio online continua funcionando!).

Não vamos definhar com uma longa introdução. Este ano eles se tornaram vencedores do aço:

  1. hellow0rld666 , 1221 pontos
  2. KARASIQUE , 1221 pontos
  3. ch1sh1rsk1 , 1085 pontos

Três vivas para esses caras! A luta pelo primeiro lugar começou a sério - o líder mudou quase todos os dias. Também é importante notar que hellow0rld666 e KARASIQUE se tornaram participantes que concluíram TODAS as nossas tarefas! Nós não acreditamos em nossos olhos, mas acontece.

Curiosidade: todas as tarefas que despertaram grande interesse no primeiro dia da competição foram desenvolvidas por meninas :)

Explique sobre as tarefas!


Ao longo de duas semanas, nossa caixa de correio support@neoquest.ru não parou de enviar sinais para receber mensagens! Mas estamos felizes apenas com isso - isso significa que nossas tarefas estão sendo realizadas e interessam aos participantes!

Então, o que tínhamos nas atribuições.

Tarefa nº 1 - “Não há admissão contra hackers” .Os

participantes receberam um link, após o qual chegaram à página com a única inscrição “Hello world!”. O que fazemos desde o início nesses casos? Obviamente, estamos rastreando o código-fonte da página:



para resolver este caso, use toda a força do GIT - como GIT é um nome conhecido. Mas por que outra carta é destacada? E se nós conectá-los? .. CGIT? .. Exatamente, eu ouvi algo assim!

CGIT - interface da web do repositório.

Então, nós descobrimos isso. Siga o link213.170.100.213/cgit , onde procuramos em todas as pastas, tentamos encontrar a chave, mas depois de um certo número de horas entendemos que o ponto é diferente.

E agora as pessoas são divididas em duas categorias: aqueles que ouviram falar da vulnerabilidade de alto perfil do cgit e aqueles que não ouviram.

De qualquer forma, você precisa pesquisar no Google e encontrar o CVE-2018-14912 . Apenas truque de mão e sem fraude:

213.170.100.213/cgit/cgit.cgi/my_repo.git/objects/?path=../../../../../../../etc/ passwd Obtemos
o arquivo com senhas e, a partir dele, obtemos a primeira parte da chave:
NQ2020Gka2rFseNPexB4JsnP9k9RKulFVQDCcXwYy1aPKI + veja mais ...

Resta encontrar a segunda parte. Aqui é fácil: o repositório não contém tantos arquivos; por enumeração, entendemos que não há nada neles. Mas estamos no repositório Git, o que significa que você pode ver todas as alterações nele! Lá, as informações serão obviamente mais completas ...

Vá para diff, pelo ponteiro “veja mais” ou encontre manualmente “veja mais = e9a3c19a544e6589825fd643f4e6d5c1c4e9”, concatene com a primeira parte e obtenha nossa chave!

Tarefa número 2 - "Desmonte o robô ou você tem l_apk_and?"

Os participantes recebem um aplicativo apk que é um cliente de arquivo. Ele se comunica com o servidor e recebe um arquivo criptografado com o nome especificado. Você precisa lidar com certificados e tokens de acesso para obter a chave.

Uma análise detalhada da tarefa será lançada como um artigo separado!

Tarefa 3 - “A Esquerda Mais Legal”

Na tarefa, é proposto o download de um archive que contém um arquivo binário de 1 GB com o nome falante memdump.bin, com base no qual podemos assumir que esse é um depósito de memória RAM ...

Você está intrigado? Em breve, publicaremos esse artigo como um artigo separado, porque nossos participantes se interessaram por essa tarefa no NeoQUEST!

Tarefa nº 4 - “Dificuldades por escrito”

“Destaque” do NeoQUEST-2020, uma tarefa que reuniu um número recorde de críticas entusiasmadas sobre o suporte! A conclusão é que o som do arquivo wav nada mais é do que o som da digitação nas teclas. É necessário amostrar esse som e realizar uma análise de frequência!
Uma explicação mais detalhada da tarefa será publicada em breve.

Alvo №5 - curvas «epilépticas"

Condições de trabalho:

A = 119008536160574978629781290147818127606791827844670246888266509216288777541932
B = 125173392763487646441684374997817715298134647755542804722568603162177610612799
char_field = 137503105969312982065490544697816890680820287577287920391172791053955276754533
P = (24588378651043317545653993517686345205594551142728198236546389666483449174897, 64035697994960793657311999090254655816706285115803662919872675661618460099464)
Q = (70440277554855197417972068200756767916691677649413431083023577625869629031919, 72025841911476301630338043296901014469577623652063349003687337089744015808109)

sugere francamente a necessidade de resolver o problema do logaritmo discreto em uma curva elíptica. Tendo analisado os parâmetros da curva elíptica e estudado suas características, supomos que essa curva é anômala: a ordem do grupo de pontos de uma curva coincide com a característica do campo sobre o qual ela é fornecida. E para essa classe de curvas, há um ataque inteligente que permite calcular o logaritmo discreto desejado com a rapidez suficiente.

Além disso, é uma questão de tecnologia: escrevemos o código de ataque, substituímos os dados da tarefa, encontramos o logaritmo discreto e nos alegramos com a chave obtida!

Tarefa número 6 - "Telegramas ocultos"

Outra de nossas pérolas, porque ouvimos um pouco sobre conversas geográficas em um telegrama. Uma análise detalhada da tarefa também será divulgada como parte de um artigo separado - há muitas nuances interessantes aqui.

Tarefa número 7 - “Alinhe-me se puder”

Dada uma imagem: O



truque da tarefa é que esta equação diofantina com três variáveis ​​não possui soluções inteiras positivas, o que significa que a essência da tarefa não está em uma solução simples da equação e você precisa cavar Mais profundo!

Imagens de metadados

char_field = 2733425503484079885916437054066624513727898092580736050087
base_point = (2003799601518383430823233516441563713038362096795740845531,2732921640345227083457754907818649009295467132857674744044)
open_key = (1259834880846103046383661778550941435260068858903099332507,1686622613601304663126341188899964094370838010363453830341)
segredo <4351098091135498422 ---> y ^ 2 = x ^ 3 + Ax ^ 2 + bx

novamente indique as curvas elípticas, mas como elas estão relacionadas a esta equação? Acontece que há uma conexão! Tendo encontrado os coeficientes A e B da curva, nos deparamos com uma nova dificuldade: os pontos dos metadados da imagem não pertencem a essa curva. O que fazer? Na esperança de encontrar uma pista, relemos a lenda e vemos a menção de "Twisted Sister". Eureka! E se os pontos pertencerem a uma curva torcida ? Agora cabe a você encontrar uma curva contendo pontos dos metadados. Depois de passar para a curva torcida correta, aplicamos o ataque Polyg-Hellman e desfrutamos de nossa visão!

Tarefa número 8 - "Posso ter seu autógrafo?"

De acordo com as estatísticas do NeoQUEST-2020, essa tarefa é a mais difícil, por isso decidimos dedicar um artigo separado a ela. Em resumo, você precisa descobrir como fazer upload de um documento PDF não assinado para o site . Para fazer isso, os participantes precisarão explorar uma vulnerabilidade interessante :)

Tarefa número 9 - "Dedique-se à programação"

"Não confie nos seus olhos" - esse é o lema que damos a essa tarefa. Ao baixar um arquivo com código-fonte em C, parece que só existe um código que criptografa / descriptografa usando o algoritmo AES, mas "não estava lá" - é o que dizemos. Você deve prestar atenção à presença de erros no código, além de espaços e recuos suspeitos. Prometemos esoterismo? Receba e assine!

O fato é que, nesse arquivo, além do código C, também há código nas linguagens de programação esotéricas - Whitespace e Spoon! O código na linguagem Whitespace nos dará a chave, o código na linguagem Spoon nos fornecerá o texto cifrado. Agora vamos corrigir os erros no código, executá-lo com os dados recebidos e pegar a chave!

A tarefa número 10 - “Ser humano”

OSINT deste ano está tentando não se afastar das tendências modernas! Criamos a imagem de um robô que quer se tornar uma pessoa e, portanto, estuda os hábitos humanos, e permitimos participantes em todas as redes sociais nas quais esse robô apareceu.

Assim, os participantes recebem o seguinte texto:

cHVibGljMTAxMTAxMTAwMTAxMDExMDAxMDAwMDAxMDAwMeKArA ==. Dois sinais "=" literalmente gritam: "sim, sim, eu sou base64, decodifique-me completamente!". Ouvimos esta chamada e obtemos public101101100101011001000000010001. Em seguida, transforme o binário em decimal, obteremos public191194129. Muito reminiscente de alguma coisa, certo?

Encontramos um grupo VKontakte no qual o robô coleta estatísticas e respostas das pessoas. Perguntas sobre a parede bastante divertido, mas estamos interessados em um link para ASK.FM . Também há respostas bastante divertidas para as perguntas, mas estamos interessados ​​em um link para o canal do YouTube . Aqui descobrimos que nosso robô está tentando se tornar não apenas uma pessoa, mas também um blogueiro! Resta apenas um pouco: siga as instruções no vídeo.

Analisamos o tipo de senha no diário:



A cidade dos sonhos é clara no protetor de tela da área de trabalho - Paris. O nome do animal também não passa despercebido - Rose. Vemos sua música favorita em uma das guias do navegador e o identificador está escrito em uma xícara de café.

A resposta é Paris.Rose.Starlight.S3574mT

Mini-tarefa número 1

Nesta tarefa, você só precisa olhar o código-fonte da página onde a frase "As pessoas estão fazendo piadas sobre o apocalipse, como se não houvesse amanhã". Quem disse isso? ". A resposta para esta pergunta é encontrada no Google - "Ellie".

Mini-tarefa número 2

Faça o download do arquivo com as entradas de texto faladas pelo bot. Sim, apenas o bot não apenas lê o livro de Stephen King, Badlands, mas lê com erros. Depois de escrever as cartas que faltam, obtemos a frase "livro sobre a disseminação do vírus". No entanto, esta não é a resposta! Precisamos encontrar algum livro sobre a propagação do vírus. Mas a tarefa já tem uma pista de que o autor ainda é o mesmo conhecido Sr. S. King! A resposta correta é The Stand.

Mini-tarefa número 3

Um arquivo executável é fornecido. É necessário obter pelo menos algo dele, de preferência, é claro, a chave. Se você executá-lo, nada será exibido em resposta. Existem muitas opções para o desenvolvimento de eventos, mas a correta é extrair linhas de um determinado arquivo que será dobrado em texto legível. A resposta para essa tarefa é o nome do livro do qual o fragmento foi extraído - o guia do caroneiro para a galáxia.

Mini-tarefa №4

Esta tarefa é uma interpretação moderna por hackers da tarefa lógica de Einstein . Não há nada complicado em sua solução, é mais fácil criar uma tabela e ver como as condições são atendidas. A resposta correta é RREKPA. # AC + P.EDWKU.LKPGM.MASLHAC - codificada de acordo com a condição.

Mini-tarefa número 5

O trabalho de Schrödinger é simples e complexo. A simplicidade aqui é obter a resposta - tudo o que você precisa fazer é enviar uma solicitação POST com o parâmetro flag para o servidor, que fornecerá a resposta correta. A dificuldade está no fato de que você precisa pensar nisso :) Mas muitos de nossos participantes têm lidado com isso com bravura!

Minuto de estatísticas


As estatísticas para este ano são as seguintes:

  • O número de participantes registrados é de 1266 pessoas.
  • O número de tarefas concluídas - 10/10
  • O número de participantes que concluíram pelo menos uma tarefa na íntegra é de 110 pessoas.

Distribuição dos participantes que encontraram pelo menos uma chave:



E este é um gráfico da atividade de nossos participantes até os dias da competição:



terminamos a seção de estatísticas com nosso GIF tradicional:



Fale sobre os próximos dias


No momento, planejamos realizar um “Confronto” NeoQUEST-2020 no final de junho em São Petersburgo, mas castelos são possíveis na situação atual do país. A principal coisa - não se preocupe, nós definitivamente nos encontraremos este ano!

Vamos deixar o mais legal e favorito: relatórios, workshops e demonstrações de ataques, e adicionar um novo! Como no ano passado, o NeoQUEST será realizado em conjunto com a conferência científica e técnica "Métodos e meios técnicos para garantir a segurança da informação" ! Os convidados do NeoQUEST 2020 aprenderão muito sobre a relação entre ciência e prática de segurança cibernética, a importância da pesquisa científica para um especialista em segurança da informação e como funcionam os mecanismos de proteção da informação cientificamente modernos!

Os interessados ​​podem participar não apenas do NeoQUEST, mas também das seções científicas da conferência! Para saber mais sobre como participar de um relatório ou workshop sobre o NeoQUEST, escreva para support@neoquest.ru e para obter mais informações sobre a conferência “Métodos e meios técnicos para garantir a segurança da informação” , consulte o site da United , para todas as perguntas, entre em contato com mitsobi@neobit.ru.

Adiante - revisões de várias tarefas e preparação ativa para o “Face a face”! A propósito, participantes que concluíram pelo menos uma tarefa - verifique seu e-mail, em breve começaremos a enviar!

All Articles