Iniciando o CTF rodei o Encontrei o diretório Outro diretório interessante foi o flag{37d42478c922df57bdebc1479b8760ff} Analisando o arquivo, foi possível identificar o formato e uma dica comentada. Tratando-se de uma imagem, podemos imaginar que tenha algo relacionado a Ao executar a tool não tive sucesso. Pois, embora sendo uma imagem, não estava com a extensão jpg, jpeg ou algum outro formato que a tool identificasse ser uma imagem. Criei uma cópia do arquivo com uma extensão válida para executar no Visualizando o arquivo, foi possível pegar uma dica para acessar um diretório, o que trouxe à flag e um arquivo para download. flag{e5f8f939ee3273255464223f6b31a612} Após capturar a flag, o próximo passo foi descompactar o Ao executar o file Como não foi possível visualizar o PDF, tentei o mesmo procedimento feito na flag anterior. Criei uma cópia do Mesmo assim não foi possível visualizar. Entre algumas tentativas de tools no Kali sem sucesso, recorri a um conhecido site que faz diversos processos em arquivos, entre eles "repair" reparar, principalmente PDFs.
Fiz upload do "file.pdf" para o site, com a opção de "repair" recuperar o arquivo. Após a conclusão do processo, realizei o download e foi possível visualizar a string oculta no arquivo indicando o caminho da flag. Outra opção, aprendida posteriormente seria da seguinte forma.
Utizando a hash do PDF foi possível chegar ao objetivo.
Seguindo uma linha de raciocínio após a dica fornecida: A=65
B=66
C=67
Veni, vidi, vici Se temos A=65, após algumas pesquisas, foi possível identificar que se tratava da tabela ASCII a qual o 65 equivale a letra A. Porém, temos mais uma dica Veni, vidi, vici, uma famosa frase em latim supostamente dita por Júlio César. O que me fez ligar alguns pontos levando a “Cifras”. A princípio pensei em buscar por “Cifras de César”, mas mantendo as duas dicas, busquei por identificar a cifra, ao invés de focar em um tipo.
O resultado fortaleceu a primeira dica dada anteriormente. Sendo assim, busquei quebrar a cifra com algum ASCII decoder. Recaptulando temos: 6465687a67616c6f6f6b627420323436313531333434373332
dehzgalookbt 246151344732 Após horas tentando decifrar o resultado, algo sempre esteve muito intrigante, “quantidade de letras = quantidade de números”.
Chegando a conclusão de fazer a seguinte tentativa, o que levou a flag e download de um arquivo. d + 2 = f
e + 4 = i
h + 6 = n
z + 1 = a
g + 5 = l
a + 1 = b
l + 3 = o
o + 4 = s
o + 4 = s
k + 7 = r
b + 3 = e
t + 2 = v
finalbossrev O arquivo aparentemente seria executável no Windows, porém, ao analisar um pouco melhor com Após analisar o arquivo executando o comando Após o decompress do file.exe, executei ```strings`` novamente, o que trouxe algumas strings aparentemente sendo hashes, e sim, algumas “flags” falsas hehe. A partir desse ponto fiquei sem recursos...sendo esse o último desafio, essa "última flag" veio após a resolução em live com o desenvolvedor do CTF. Analisando as hashes é possível perceber que apenas uma difere das demais. “Foi difícil perceber esse detalhe em meio a tantas hashes, após horas fazendo o CTF 😅 ”. Algumas hashes até traziam strings dizendo...“aqui não tem nada” haha...anyway. Pegando a hash selecionada, identificamos estar em Base64. Resultado: A próxima etapa foi decifrar a hash em “Cifras de César” com shift 6. Executando alguns comandos em Python, obtivemos o resultado. python3
msg = "<your_cipher_here>"
for i in range(len(msg)):
print(chr(ord(msg[i]) - 6), end='') Retornamos ao Realizei 4 dos 5 desafios, chegando a metade do último, o qual tivemos a resolução posteriormente, mas fico feliz de ter conseguido chegar até esse ponto.
|