Walkthrough CTF-BR FirstBlood

Nuts About Sec
NutsAboutSec
Published in
5 min readFeb 21, 2019

Esse ano, a equipe GS2W CTF Team, junto com o pessoal do CTF-BR e Coca-Cola administrou o CTF da CPBR12. Segue o walkthrough detalhado aqui para o pessoal que não teve a chance de matar todos os challs.

Don't stop believing ;)

Logo sensacional do CTF FirstBlood feito pelo TheZakMan! http://thezakman.tumblr.com/

First things first para quem prefere ver os writeups na forma de vídeo, segue o link do Rapt00r que fez o favorzão de gravar as challs que ele resolveu.

(*・‿・)ノ⌒*:・゚✧ vídeos

Disclaimer: Alguns write-ups ainda estão saindo do forno, então você não vai conseguir encontrá-los aqui :(*Crash on Purpose
*J1
*Portas
*Onde estou?
*Crypt0_1
*1ngr3d13nt3 s3cr3t0
*Capture sua coca
*Colorpass
Be patient
Reversing

Como todo bom e velho desafio de reversing, começamos por entender com o que estamos lidando.

  • Que tipo de arquivo é esse?
  • O que ele tem para nos apresentar?

Através dos comandos type e strings podemos notar que se trata de um ELF 64-bit e que uma palavra meio esquisita “easycrackH” se destaca, mas ainda não faz muito sentido…

Bom, continuamos…

Usando nosso lindo e maravilhoso Radare 2 resolvemos o mistério. Como estamos rodando em um sistema 64 bits, acabamos com a seguinte lógica:

1 char = 1 byte = 8 bits

easycrack = 8 chars = 8 bytes

8 bytes = 8 x 8 bits = 64 bits

Ou seja, nossos endereços de memória possuem 8 bytes e, portanto, a última letra “k” deve ser levada para o próximo registrador, fugindo do nosso queridíssimo strings :(

Flag: GS2W{easycrack}

Para esse chall, deixo o vídeo do Rapt00r, novo membro do time que já chegou estourando!

Flag: GS2W{3,14}

Essa chall é bem clássica de reversing… O código possui uma função que não é chamada na main (função principal na linguagem C) e a flag está dentro dela. Classic.

Abrindo o arquivo no gdb (https://www.gnu.org/software/gdb/) e usando o comando “info functions” vemos todas as funções presentes no código:

Ok, tem uma função secret entre as funções, hmmm, estranho… Vamos ver o que ela retorna.

Primeiro setamos o ponteiro para nossa função main e dizemos para iniciar o programa (“r” = run)

break main

r

Apontamos para nossa função secreta e dizemos para continuar (“c” = continue)

jump secret

ou

set $rip=secret

c

Flag: GS2W{3sc0nd1d0_3h_M41s_G0st0S0}

CTF Físico

Esse chall foi mais para fazer uma brincadeira com a galera que estava presente na Campus.

A ideia foi deixar um NodeMCU com vários SSID’s inundando a rede.

Badge H2HC 2016
SSID’s

Dentre dos vários SSID’s, quatro formavam a flag:

  1. GS2W{3553_4n0_t3m
  2. _w1f1_n4_c4mpu5_m4s_
  3. 53r4_qu3_v41_func10n4r_
  4. _m3sm0?34rrrff!!!}

Flag: GS2W{553_4n0_t3m_w1f1_n4_c4mpu5_m4s_53r4_qu3_v41_func10n4r_m3sm0?34rrrff!!!}

Misc

Esse foi um desafio bem simples! Basicamente:

  1. tar xvf cat.me.tar.gz
  2. fcrackzip -v -D -u -p /usr/share/wordlists/rockyou.txt cat.me.zip
  3. unzip cat.me.zip com a senha encontrada
  4. decode o texto com Cifra de César
  5. Quebrar o MD5
Decode da Cifra de César com o CyberChef

Se você não identificar logo de cara que é um MD5, existem várias ferramentas para ajudar, como o comando hash-identifier e hashid no linux. O site crackstation.net identifica para você e já quebra a hash. Não poderia ser mais cômodo viver no século 21.

Cracked Hash

Flag: GS2W{GS2W}

Chall bem tranquilo, só para aquecer no brute force. Um pdf está protegido por senha e o seu trabalho é conseguir abri-lo. Sem mais delongas:

pdfcrack -w /usr/share/wordlists/rockyou.txt secreto.pdf

Password cracked
Flag dentro do pdf

Flag: GS2W{4716b435ce8ddd6ede25a2926d0c8d42}

Forensics

A ideia desse chall era encontrar analisar os commits e checar se alguma informação sensível foi passada sem perceber, como a senha do desenvolvedor por exemplo.

Mais uma vez, deixo o Rapt00r fazer as honras:

Flag: GS2W{4ch0u_mizeravi!}

Pwn

A ideia principal desse chall era entender que se tratava de um timimg attack.

O Pedro explica melhor sobre isso no write-up que ele fez:

https://gist.github.com/pedro823/7b86ef4bd7c7b8b7ea62da238eeb5b21

Flag: GS2W_{P4ssw0RD_T1MinG_4TT4Ck!}

Se quiser saber mais sobre o time: http://gs2w.org/

Escrito por Alexandra Percário ✧゚・:*⌒\(・‿・*)

--

--