gmae rules? 를 들어가보면 CTF FLAG 형식을 알수 있으며 그곳에 FLAG가 있다. 그러나 그것은 Window UserAssist values와 같은 암호화 방식이 이루어져 있다고 설명되어져있다.
cybrics{Na5JRe_g0_G3u_Z1P_Pu3PX}
Window UserAssist values는 ROT-13으로 encryption 되dj있기에 ROT-13으로 decryption 해주면 된다.
cybrics{An5WEr_t0_T3h_M1C_Ch3CK}
http://109.233.57.94:54040/ 해당 URL로 들어가보면 굉장히 촐싹거리는 캡챠 들을 볼수 있다.
5개의 캡차들이 화면 전체를 쉬지 않고 돌아다닌다. 일정시간이 지난다면 캡챠가 만료되기도 한다.
그렇다면 시간안에 저 캡챠들을 어떻게 잡아야 될까? 직접 잡아야될까?
페이지 소스 보기를 하면 captcha 관련 코드를 확인 할수 있다.
let dividerA = (Math.random() * 250) + 250;
let dividerB = (Math.random() * 250) + 250;
let dividerC = (Math.random() * 25) + 25;
function loop() {
const height = window.innerHeight - captchaBox.offsetHeight;
captchaBox.style.top = Math.sin(Date.now()/dividerA) * (height/2) + (height/2);
const width = window.innerWidth - captchaBox.offsetWidth;
captchaBox.style.left = Math.sin(Date.now()/dividerB) * (width/2) + (width/2);
captchaBox.style.transform = `rotate(${Math.sin(Date.now()/dividerC) * 10}deg)`;
setTimeout(loop, 1);
}
loop();
이부분을 날리고 위에 부분만 살려두도록 하자
function addCaptcha() {
const captchaBox = document.createElement('div');
const widgetId = grecaptcha.render(captchaBox, {
'sitekey' : '6Ld0sCEUAAAAAKu8flcnUdVb67kCEI_HYKSwXGHN',
'theme' : 'light',
'callback': 'good',
});
captchaBox.className = 'captcha';
document.body.appendChild(captchaBox);
count ++;
updateStatus();
}
console 창에 addCaptcha함수를 계속해서 불러주면 문제를 해결할수 있다.
다른 매우 쉬운 방법이 있다. 그건 댓글남기시던가 하시면 알려 주겠다.
'Challenge > CTF' 카테고리의 다른 글
[2021 hspace] Baby_Crypto (0) | 2021.05.07 |
---|---|
[DiceCTF] web/Web Utils (2) (0) | 2021.03.09 |
[DiceCTF] web/Web Utils (1) (0) | 2021.02.23 |
[DiceCTF] web/Missing Flavortext (0) | 2021.02.16 |
[DiceCTF] web/Babier CSP (0) | 2021.02.09 |