본문 바로가기
Wargame Write-Up/SuNiNaTaS

[SuNiNaTaS] (Web) 5번문제

by snwo 2020. 3. 3.

 

처음화면이다. 키값을 체크한다니, 소스를 봐야겠다.

 

eval함수로 난독화된 자바스크립트 함수와, hint가 있다. 먼저 자바스크립트함수를 복호화해보겠다.

 

https://www.strictly-software.com/unpack-javascript 에서 자바스크립트를 복호화해보았다.

 

n 을 입력받고, 32부터 4씩내려가면서 오른쪽으로 쉬프트한뒤, 0xF (15) 와 and연산을 하고, 16진수로 변환한다.

키를 입력받아 이러한 암호화연산을하는걸 알았는데 그다음은 모르겠다. 그래서 잠깐 힌트를  다시보면 숫자가있다.

아까 본 숫자를 PASS함수에 넣어 암호화 한 값을 넣으면 문제가 풀릴것같다.

 

개발자도구 (F12) 를 열어서 힌트에 나와있는 숫자를 함수의 인자로해서 이미 선언되어있는 PASS함수를 호출하면

다음과같이 나오게되는데, 이걸 key값으로 전달하면 Auth Key가 나온다.

사실 함수 소스 몰라도 선언되어있기때문에 몰라도된다.