Challenge #2 Blog SegInfo – Gabarito e Demonstração do Desafio de Aplicação Web

Revelaremos agora a resposta do último desafio SegInfo, publicado em 16 de novembro aqui no blog. Segue o procedimento correto para chegar à solução:Ao descompactar o arquivo desafio-seginfo.zip devemos abrir a página index.html no navegador, que será exibida da seguinte forma:
Então, temos uma contagem regressiva que começa em 24 horas e nosso objetivo é conseguir acessar a página que será exibida após o término das 24 horas antes que a mesma termine. O primeiro passo é fazer uma análise do código-fonte e descobrir como o contador funciona, utilize o atalho CTRL + U para visualizar o código da página:

Com o código-fonte em mãos conseguimos visualizar os arquivos javascript que são responsáveis pelo funcionamento do contador, então clicamos no script jquery.countdown.js e nele encontraremos o trecho de código startTime: “01:12:32:55”, mas este não é o valor inicial do contador.

Então pulamos para outro javascript, jquery.countdown-in.js, que ao abrir, encontramos o trecho com o valor correto, startTime: ’00:24:00:00′, e uma função chamada timerEnd, que aparentemente é executada após o término do contador e na qual se encontram diversas strings codificadas.

Agora precisamos decodificar o conteúdo de timerEnd. Para tal devemos copiar o valor que está armazenado na função:

x30x2Ex31x3Dx22x32x2Ex33x22″,”x7C”,”x73x70x6Cx69x74″,”
x77x69x6Ex64x6Fx77x7Cx6Cx6Fx63x61x74x69x6Fx6Ex7Cx66
x35x30x63x62x31x39x33x30x62x61x37x33x33x62x34x36x65
x62x66x32x64x62x31x30x31x38x39x62x34x34x36x7Cx68x74
x6Dx6C”,”x72x65x70x6Cx61x63x65″,””,”x5Cx77x2B”,”x5Cx62″,”x67

A seguir removemos os caracteres “(aspas) ,(virgula) e também substituímos x(barra e x) por : (dois pontos) , assim teremos valores em hexadecimal, ficando da seguinte forma:

:30:2E:31:3D:22:32:2E:33:22:7C:73:70:6C:69:74:77:69:6E:64:6F:77:7C:6C:6F:63:61:74
:69:6F:6E:7C:66:35:30:63:62:31:39:33:30:62:61:37:33:33:62:34:36:65:62:66:32:64:62
:31:30:31:38:39:62:34:34:36:7C:68:74:6D:6C:72:65:70:6C:61:63:65:5C:77:2B:5C:62:67

Agora precisamos converter esses valores em hexadecimal para ascii e obtemos o seguinte valor:

0.1=”2.3″|splitwindow|location|f50cb1930ba733b46ebf2db10189b446|htmlreplacew+bg

Interpretando a saída de forma clara:

window.location.href = “f50cb1930ba733b46ebf2db10189b446.html”;

Agora, basta substituirmos index.html na URL do navegador por f50cb1930ba733b46ebf2db10189b446.html e teremos acesso a página antes do término das 24 horas.

É isso pessoal! Até o próximo desafio! (: