r500 – need a slave

Home / Wiki / r500 – need a slave

r500 – need a slave

Revision for “r500 – need a slave” created on 27 de dezembro de 2014 às 05:40:49

Título
r500 - need a slave
Conteúdo
<blockquote> <p id="pergunta" style="text-align: justify">Reverse me</p> </blockquote> &nbsp; <h2>Solução</h2> <p style="text-align: justify">Baixe o arquivo.</p> Verifique que tipo de arquivo se trata. <pre class="lang:default decode:true">$ file cbae01eebf5ec7384dcf92507b640182</pre> <pre class="lang:default decode:true ">$ cbae01eebf5ec7384dcf92507b640182: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0x2809a0eb366d3859f4e2fcc74a8bb49e00b2ddbf, not stripped2</pre> Dê permissão de execução no arquivo. <pre class="lang:default decode:true ">$ chmod +x cbae01eebf5ec7384dcf92507b640182</pre> Executando o arquivo obtemos a seguinte saída como na imagem abaixo. <a href="http://ctf-br.org/wp-content/uploads/2014/12/r500.jpg"><img class="alignnone size-full wp-image-452" src="http://ctf-br.org/wp-content/uploads/2014/12/r500.jpg" alt="r500" width="739" height="578" /></a> Instale o hte. <pre class="lang:default decode:true ">$ apt-get install ht -y</pre> Depois carregue o binário no hte. <pre class="lang:default decode:true ">$ hte cbae01eebf5ec7384dcf92507b640182</pre> Depois de carregado pressione “espaço”  e selecione o modo “elf/image” <a href="http://ctf-br.org/wp-content/uploads/2014/12/r500_1.jpg"><img class="alignnone size-full wp-image-453" src="http://ctf-br.org/wp-content/uploads/2014/12/r500_1.jpg" alt="r500_1" width="739" height="578" /></a> Próximo passo é achar a função palindrome .  Pressione F5 para abrir o goto e pesquise pelo “palindrome″. <a href="http://ctf-br.org/wp-content/uploads/2014/12/r500_2.jpg"><img class="alignnone size-full wp-image-454" src="http://ctf-br.org/wp-content/uploads/2014/12/r500_2.jpg" alt="r500_2" width="739" height="578" /></a> <span class="fg-7 bg-4">Selecione "xref c</span><span class="fg-15 bg-4 bright">8048c6a"</span> dentro da "palindrome" e pressione enter. <a href="http://ctf-br.org/wp-content/uploads/2014/12/r500_3.jpg"><img class="alignnone size-full wp-image-456" src="http://ctf-br.org/wp-content/uploads/2014/12/r500_3.jpg" alt="r500_3" width="739" height="578" /></a> Podemos observar uma chamada "fibonacci".  CTRL + C para sair do hte. <a href="http://ctf-br.org/wp-content/uploads/2014/12/r500_4.jpg"><img class="alignnone size-full wp-image-455" src="http://ctf-br.org/wp-content/uploads/2014/12/r500_4.jpg" alt="r500_4" width="739" height="578" /></a> Carregue o binário no gdb. <pre class="lang:default decode:true ">$ gdb cbae01eebf5ec7384dcf92507b640182</pre> Realize um break point. <pre class="lang:default decode:true ">(gdb) break * 0x8048c8d</pre> Execute o binário dentro do gdb. <pre class="lang:default decode:true ">(gdb) run</pre> Realize um dump da memória. <pre class="lang:default decode:true ">(gdb)x/98xc &amp;hidden</pre> Imprima o resultado. <pre class="lang:default decode:true ">(gdb)print(char*)(0x804a2c0+39)</pre> <h3>Flag</h3> <code>IfIW!nY0uB3com3MySl@ve</code> <h3>Criado por</h3> XShellCTF <h3>Extra</h3> <a href="https://asciinema.org/a/14329" target="_blank">https://asciinema.org/a/14329</a>
Resumo


OldNewDate CreatedAuthorActions
27 de dezembro de 2014 às 05:40:49 RTFM
27 de dezembro de 2014 às 05:40:30 RTFM
27 de dezembro de 2014 às 05:39:38 [Salvamento automático] RTFM
10 de dezembro de 2014 às 18:50:19 RTFM
10 de dezembro de 2014 às 18:48:04 RTFM
10 de dezembro de 2014 às 18:46:12 RTFM
10 de dezembro de 2014 às 18:40:15 RTFM
10 de dezembro de 2014 às 18:38:12 RTFM
10 de dezembro de 2014 às 18:22:00 RTFM
Recent Posts