Desafios

Somos de opinião que mais interessante que palestras e workshops, são desafios e concursos! Por essa razão, e já como vem sendo tradição, decidimos criar várias competições amigáveis. Destaca-te numa destas áreas mas, mais importante ainda, diverte-te!
Maior Número de Badges
Durante a semana temos várias badges que podes obter participando nas atividades, falando com as empresas, vencendo desafios e concursos mas também com algumas surpresas! Diverte-te à procura das badges, os verdadeiros colecionadores irão obter prémios muito tentadores para adicionar à coleção!
Melhor Fotografia
Gostas de tirar fotografias? Então este desafio é para ti! Publica a melhor foto no facebook da SEI ou no instagram para vencer este desafio! Para isso, no facebook usa a hashtag '#SEI17' em publicações públicas e no instagram identifica o @cesiuminho e certifica-te que tens o perfil público.
Sorteio de Xbox One
Lembras-te das badges que colecionaste? Tens mais do que 10? Ainda não? Garante um mínimo de 10 badges para te habilitares a ganhares uma Xbox One! Já sabes, quantas mais Badges colecionares, mais hipóteses tens de ganhar! Não te esqueças de registar as Badges!
1.º Prémio
2º Sorteio de Xbox One
Passaste pelo CP2 e viste a empresa Accenture? Eles querem o teu Currículo! Envia-o para sei+cv@cesium.di.uminho.pt e habilita-te a ganhar uma Xbox One!
1.º Prémio
Eurotux Desafio de Segurança
Este desafio, composto por vários passos, promete destacar os melhores hackers! Para participares, junta-te numa equipa de dois a três elementos e envia um e-mail para securitychallenge@cesium.di.uminho.pt com o nome da equipa, nome e emails dos membros. Existe um servidor instalado no IP 193.136.19.39. Abre o enunciado para saber o que fazer! Cada demonstração que a equipa consiga fazer deverá ser enviada por e-mail. O Desafio encontra-se aberto até à próxima quarta-feira!

  • Atenção! A não ser que haja indicação em contrário as flags são todas no formato "CTF{string}". O prefixo "CTF{" e o sufixo "}" devem ser incluídos ao reportar que conseguiram encontrar a flag.
  • Ponto de partida
    • Desafio 1
      • http://193.136.19.39/challenge1
    • Desafio 2
      • http://193.136.19.39/challenge2
  • Dicas
    • Desafio 1
      • Tenta perguntar alguma coisa.
    • Desafio 2
      • Não há nada escondido no site.
      • ^G2C^HHH^9E>=^492==6?86a^E9:D0D9@F=5?E0360=2J:?802C@F?5
    • Desafio 3
      • ATENÇÂO :a flag não está no formato "CTF{string}"
      • Se resolveste o desafio 2 não estás muito longe de resolver este.
      • Procura mesmo bem, já que às vezes as coisas estão escondidas à nossa vista.
    • Desafio 4
      • Depois de perceberes como funciona o desafio 2 só tens de escalar a solução.
      • Conheces o ditado "There's no place like 127.0.0.1"?
    • Desafio 5
      • http://193.136.19.39/challenge2/?p=5
      • As coisas podem não ser bem o que parecem ou trazer mensagens ocultas.
      • A resposta está na eurotux.
    • Desafio 6
      • ATENÇÃO :a flag não está no formato "CTF{String}"
      • Revê as pistas do desafio 4 e procura bem
      • Há criptógrafos que não dão nomes às cifras que inventam

    Pontuação
    • Demonstração que conseguiram aceder ao conteúdo privado do servidor
    • Demonstração que conseguiram obter shell no servidor
    • Demonstração que conseguiram chegar à root
    • Demonstração que chegaram ao segredo
    • Primeira flag
    • Segunda flag
    • Terceira flag
    • Quarta flag
    • Quinta flag
    • Sexta flag
    Regulamento

    Apenas pessoas ligadas à universidade poderão concorrer (alunos, bolseiros, etc). Não é permitido qualquer tipo de ataque de negação de serviço, vulgo DoS. Não é permitido o acesso físico ao servidor (onde quer que esteja). Não é permitido, após aceder ao servidor, efetuar ataques a outros servidores. Não é permitido desligar o servidor ou impedir que outras equipas lá acedam.

  • DPUM

    E como não podia deixar de ser, temos não 1, não mais 2, mas sim 5!

    5 desafios algorítmicos para ti durante esta semana. Usa a linguagem em que te sentes mais confortável e resolve os problemas.

    Obtém o máximo de pontuação nos cinco problemas e obtém o teclado que tu precisas para aquelas noites duras de programação.

    Podes já começar a trabalhar nas tuas soluções! As plataformas de submissão estão prestes a arrancar!!

    Relembramos ainda que o primeiro desafio é o que contém o maior peso avaliativo!

    Desafio nº1

    Este é o desafio que te vai dar mais trabalho, podes até ter de suar um pouco, mas vai valer a pena! Este desafio pode te até valer 30 pontos!

    Método de classificação - tempo de cpu, desempate por rapidez de submissão

    O teu amigo do curso de electrónica está a montar um circuito e precisa da tua ajuda. O circuito que ele está a montar é constituido por fios e portas lógicas.

    Cada fio tem um identificador (string de letras minúsculas) e recebe sinais representados por um inteiro sem sinal de 16 bits (número de 0 a 65535).

    O sinal que chega a cada fio pode ser o output de uma porta lógica, o sinal de outro fio ou um valor inteiro passado directamente.

    As portas lógicas apenas produzem output caso todos os seus inputs tenham um sinal.

    O teu amigo deu-te as instruções de montagem do circuito e precisa da tua ajuda para descobrir qual o sinal que chega ao fio identificado pela string a.

    Acede a pagina de submissões para mais informações.

    Desafio nº2

    Este desafio é um pouco mais simples e temos a certeza que qualquer um o poderá resolver, agora a melhor resposta....isso já é diferente, tenta a tua sorte! Este desafio pode te valer 10 pontos!

    Método de avaliação - menor código possível (Code Golf), desempate por rapidez de submissão.

    O C9-Beta é um robot em desenvolvimento.

    Embora os seus criadores tenham muitas funcionalidades planeadas, a única coisa que este robot sabe fazer actualmente é mover-se para cima, para baixo, para a esquerda e para a direita.

    Para testar a inteligência artificial do robot, foram feitos testes em que o robot era comandado a ir de um ponto A para um ponto B, sendo a inteligência artifical do robot responsável pelo conjunto de movimentos necessários para que isso aconteça.

    Os testes foram um sucesso, o C9-Beta foi capaz de realizar os movimentos necessários para chegar de A a B em todas as experiências realizadas.

    No entanto, a equipa responsável pelo robot notou que muitas das vezes o C9-Beta não escolhia o caminho óptimo para a sua rota.

    Por exemplo, se imaginarmos que o robot se move numa matriz de pontos e que começa no ponto (0,0) e pretende chegar ao ponto imediatamente acima dele (0,1) o robot muitas vezes ia para a direita primeiro ficando no ponto (1,0), depois para cima (1,1), e depois para a esquerda onde chegava ao destino (0,1). Neste exemplo o robot gastou 3 movimentos, quando na verdade apenas precisava de ter gasto 1 (ir para cima directamente!).

    Acede a pagina de submissões para mais informações.

    1.º Prémio
    Desafio nº3

    Este desafio pode te dar 10 pontos!

    Método de avaliação - menor código possivel (Code Golf), desempate por rapidez de submissão.

    Na remota vila de Pelican é organizada anualmente uma corrida de resistência na qual todos os habitantes da vila podem participar.

    Ao contrário de uma corrida habitual, não existe uma meta. Em vez disso, a corrida tem a duração de 30 minutos e o vencedor é aquele que nesse tempo tiver percorrido a maior distância.

    Além disso, os habitantes da vila cansam-se rapidamente e por isso não podem passar os 30 minutos seguidos a correr!

    Por exemplo, Abigail, a vencedora do ano passado é uma excelente corredora que consegue correr a uns impressionantes 3 m/s durante 40 segundos, mas ao fim desse tempo tem que parar completamente para descansar por 20 segundos. Ao fim desses 20 segundos pode voltar a corrar durante mais 40 segundos até ter que parar novamente.

    Acede a pagina de submissões para mais informações.

    1.º Prémio
    Desafio nº4

    Este desafio pode te dar 10 pontos!

    Método de avaliação - menor código possível (Code Golf), desempate por rapidez de submissão.

    Apesar de terem uma definição matemática formal, as sequências Look-and-say são interessantes pela forma informal como os seus números podem ser gerados.

    Neste tipo de sequência, dado um número, o número seguinte na sequência é obtido pela forma como se diz o número actual da sequência.

    Por exemplo, se considerarmos o número 112, facilmente se percebe que neste número há 2 ocorrências do número 1 e 1 ocorrência do número 2.

    Ou seja podemos dizer que "há 2 uns e 1 dois" e portanto o número seguinte a 112 na sequência fica 2112 ("2 uns e 1 dois").

    Para obter o número seguinte da sequência aplica-se o mesmo processo agora ao número 2112. Um aspecto a notar desta sequência é que o tamanho dos elementos(número de digitos) tende a crescer.

    Por exemplo, se partindo do número 112 repetirmos o processo de look-and-say 40 vezes o número resultante tem 100.230 dígitos!

    Acede a pagina de submissões para mais informações.

    1.º Prémio
    Desafio nº5

    Este desafio pode te dar 10 pontos!

    Método de avaliação - menor código possível (Code Golf), desempate por rapidez de submissão.

    O algoritmo MD5 é geralmente usado como função de hash que pega num determinado conjunto de dados e devolve um digest de 32 caracteres.

    Este algoritmo é usado geralmente para verificar a integridade de ficheiros. No entanto, muitas vezes é usado por alguns sites para armazenar passwords, embora tal prática seja altamente desaconselhada.

    Estes sites em geral pegam na password que o utilizador indica no registo e em vez de guardarem a password directamente na base de dados guardam o digest MD5 da password.

    Por exemplo, se um utilizador tiver como password a string 'password123', na base de dados é guardada a string '482c811da5d5b4bc6d497ffa98491e38', que corresponde ao digest MD5 da password do utilizador que neste caso é a string 'password123'.

    Acede a pagina de submissões para mais informações.

    Um amigo teu administra um site que guarda as passwords usando MD5. Ele deu-te uma lista de passwords que muitas pessoas usam e que por isso são consideradas inseguras. Deu-te ainda acesso aos digest MD5 das passwords dos utilizadores do site. O que ele pretende saber é quantos utilizadores do site dele usam passwords consideradas inseguras.

    1.º Prémio