본문 바로가기

[+] Hacking/[-] Challenge Report

Codegate 2012 Misc 4 300 풀이

이번 문제는 원래 4단계 문제이지만 점수가 300점입니다.

아무래도 난이도가 그리 높지 않다보니 점수가 다른 분야 동일 단계에 비해 낮게 책정 된 것 같습니다.

이번 문제는 따로 지문이 있지 않고 zip 압축 파일 하나만 제공해 줍니다.

파일은 codegate의 html 페이지들 인데 처음에는 썸네일 파일이 있어 이미지 추출 문제인가 하고 viewer로 긁어 봤으나 별 다른 것이 없어 낙담 하던 중 codegate.js 라는 파일을 발견하였습니다.

해당 파일은 그리 길지 않은 javascript 소스의 파일로 소스 자체도 어렵지 않은 파일이었습니다. 그런데 그 파일 마지막에 이런 javascript가 존재하고 있었습니다.

[그림 1 - 문제로 추정되는 javascript]

난독화가 되어 있는 것으로 보이는데 이 난독화를 그렇게 어렵지 않은 난독화 이므로 수동으로 풀어줘도 되고 아래와 같이 도구를 이용해도 됩니다.

[그림 2 - 난독화 풀어준 모습]

이런! 난독화를 풀어줬는데도 또 한번의 난독화가 되어있네요. 하지만 이번 난독화는 변수만 조금 보기 힘들게 해놓은 거군요.

소스를 보다보면 마지막에 eval() 함수로 무언가를 실행시켜주고 있습니다. 소스를 분석 할 필요 없이 이 부분만 보면 될 것 같네요.

이 부분에 eval() 함수를 alert() 함수로 바꿔주면 실행하려던 어떠한 코드를 알림창으로 띄어 줄 것입니다.

[그림 3 - 실행하려던 코드]

참 분석하기 애매하게 코딩 해 놨습니다. 이번 소스도 맨 마지막에 authkey 라는 변수에 unescape() 한 어떤 문자를 넣어주고 있는 걸 볼 수 있습니다. 이걸 또 한번 알림창으로 띄어봅시다.

[그림 4 - 인증 키값]

키값처럼 생기지 않았지만 이게 바로 키 입니다. ㅎㅎ

ahhamrs kang forever 대충 이런 글자인 것 같네요... 앞에 저건 뭐지 ㅡㅡ;;

 

 

 

'[+] Hacking > [-] Challenge Report' 카테고리의 다른 글

SANS Forensic Contest Puzzle #7  (0) 2012.03.11
Codegate 2012 Misc 500 풀이  (0) 2012.03.05
Codegate 2012 Misc 100 풀이  (2) 2012.03.01
Codegate 2012 Network 300 풀이  (2) 2012.02.29