문제에 접근하면 Challenge Description이 나오는데 해석해본 결과 무슨 말인지 잘 이해가 안갔다..
그래서 일단 Link의 주소로 접근해보았다.
로그인하는 창이 뜨고 아래에 Hint가 있길래 눌러보았더니 Ableton보다 쉽다고 한다.
별 도움이 되지 않았고.. 또 다른 힌트가 있지 않을까 싶어 소스코드 보기를 하였다.
그랬더니 소스코드 내에 아래와 같은 스크립트가 존재하였다.
이런 문제를 풀 때는 크롬의 개발자도구를 이용하면 도움이 된다.
변수부분을 짤라 콘솔에 입력하여서 아래와 같은 결과를 보았다.
대충보면 user와 pass 값에 대한 것으로 추측되지만 정확히 하기 위해 나머지에 대해 분석해보았다.
function check(){ //원본
var _0xeb80x2=document[_0xae5b[2]](_0xae5b[1])[_0xae5b[0]];
var _0xeb80x3=document[_0xae5b[2]](_0xae5b[3])[_0xae5b[0]];
if(_0xeb80x2==_0xae5b[4]&&_0xeb80x3==_0xae5b[4]){alert(_0xae5b[5]);}
else {alert(_0xae5b[6]);}}
function check(){ //분석결과
var _0xeb80x2=document[getElementById](user)[value]
var _0xeb80x3=document[getElementById](pass)[value]
if(user=="Cyber-Talent"&&pass=="Cyber-Talent"){alert("Congratz..")}
else {alert("wrong Password")}
}
분석결과 user와 pass에 Cyber-Talent가 들어가면 문제가 풀리는 것으로 보아 입력한 결과 Flag가 출력되었다.
'Solve Problem' 카테고리의 다른 글
File Upload Filter Bypass Research (0) | 2019.05.17 |
---|---|
[Websec.fr] level1 Writeup (0) | 2019.03.24 |
[root-me] Command injection - Filter bypass (0) | 2019.02.01 |
[SuNiNaTas] 23번 문제 (0) | 2019.01.21 |
[PythonChallenge] 3번 문제 (0) | 2018.09.02 |