level9의 힌트는 다음과 같다.다음은 /usr/bin/bof의 소스이다. #include #include #include main(){ char buf2[10]; char buf[10]; printf("It can be overflow : "); fgets(buf,40,stdin); if ( strncmp(buf2, "go", 2) == 0 ) { printf("Good Skill!\n"); setreuid( 3010, 3010 ); system("/bin/bash"); }} 이를 이용하여 level10의 권한을 얻어라. bof만 봐도 buffer over flow 문제라는 것을 알 수 있다. buf와 buf에 공간을 10씩 주지만 fgets에서는 40만큼 입력받아 buf에 저장한다.그 후에 buf2..
level9의 shadow 파일이 서버 어딘가에 숨어있다.그 파일에 대해 알려진 것은 용량이 "2700"이라는 것 뿐이다. 딱 보자마자 생각난게 리눅스상에서 파일 용량으로 파일을 찾는 것! 그래서 find 명령어의 size 옵션을 사용했다. b : 블록단위 512kb c : byte k : kbyte w : 2byte 워드 + : 입력 숫자 이상 - : 입력 숫자 이하아무것도 없으면 그 용량에 맞는 파일을 찾아준다. find / -size 2700c 2>/dev/null 뒤에 2>/dev/null은 꼭 적어주자 etc/rc.d 디렉토리에 있는 found.txt를 읽어보면 level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524 l..
힌트는 다음과 같다. [level7@ftz level7]$ cat hint /bin/level7 명령을 실행하면, 패스워드 입력을 요청한다. 1. 패스워드는 가까운곳에..2. 상상력을 총동원하라.3. 2진수를 10진수를 바꿀 수 있는가?4. 계산기 설정을 공학용으로 바꾸어라. bin 디렉토리에 들어가서 level7을 실행시키면 Insert The Password 가 뜨면서 pw를 입력하도록 되어있다.아무값이나 넣었을 때, cat: /bin/wrong.txt: No such file or directory 라고 뜨는걸 보니 wrong.txt가 없어 읽어오질 못하나보다. 원래 wrong.txt 파일이 있어야 하는데 찾아보니 없어졌다고 한다. 올바르지 않은 패스워드 입니다.패스워드는 가까운곳에...--_--_..
level6 는 id와 pw를 치고 들어가자마자 hint - 인포샵 bbs의 텔넷 접속 메뉴에서 많이 사용되던 해킹 방법이다. 라고 뜬다. 명령어 같은 다른 텍스트를 입력하면 다음과 같이 뜬다. 접속하고 싶은 bbs 숫자를 선택하면 Trying ~~~ 하면서 접속중인 듯 하다.텔넷 접속 메뉴에서 많이 사용되던 해킹 방법이라고 하니 이 과정중에서 뭔가 하면 될 것 같다. 텔넷 접속 서비스가 출력되었을 때 ctrl+c 를 했더니 Can't use ctrl+c가 뜨면서 작동하지 않는다. 그래서 다시 level6에 접속하여 힌트 텍스트가 출력될 때 ctrl+c 로 종료를 시켜봤더니 level6 의 쉘이 떴고, 파일 목록을 보니 hint 외에 password 라는 파일이 또 있었다.그래서 읽어봤더니 level7의..
/usr/bin/level5 프로그램은 /tmp 디렉토리에level5.tmp 라는 이름의 임시파일을 생성한다. 이를 이용하여 level6의 권한을 얻어라. 라고 한다. 그럼 우선 /usr/bin 디렉토리에 들어가서 level5 를 실행시켜보자. 분명 이 프로그램은 /tmp 디렉토리에 level5.tmp 라는 이름의 임시파일을 생성한다고 했으나,파일 목록을 보면 .tmp 파일은 없다. 그래서 /tmp 디렉토리에 level5.tmp 라는 파일을 임의로 생성해주고다시 /usr/bin 디렉토리에서 level5 를 실행시켰다. 그 후 /tmp 디렉토리에 있는 level5.tmp 파일을 읽었더니 이런식으로 next password 내용이 덮어씨워졌다. level6 password is what the hell
level4 의 hint를 보면 누군가 /etc/xinetd.d/에 백도어를 심어놓았다.! 라고 뜬다. 디렉토리 이동을 하고 파일 목록을 보면 backdoor가 보인다. backdoor 파일은 read 할 수 있고, 열어보면 [level4@ftz xinetd.d]$ cat backdoorservice finger{disable= noflags= REUSEsocket_type= streamwait= nouser= level5server= /home/level4/tmp/backdoorlog_on_failure+= USERID} 이렇게 뜬다. 다른 파일들을 열었을때는 이런식으로 service (읽은 파일명) { ... } 인데[level4@ftz xinetd.d]$ cat services# default: o..
cat 으로 hint 파일을 열면 [level3@ftz level3]$ cat hint 다음 코드는 autodig의 소스이다. #include #include #include int main(int argc, char **argv){ char cmd[100]; if( argc!=2 ){ printf( "Auto Digger Version 0.9\n" ); printf( "Usage : %s host\n", argv[0] ); exit(0); } strcpy( cmd, "dig @" ); strcat( cmd, argv[1] ); strcat( cmd, " version.bind chaos txt"); system( cmd ); } 이를 이용하여 level4의 권한을 얻어라. more hints.- 동시에..
id = level2 / pw = hacker or cracker level2 문제도 역시나 hint 파일이 있다.cat 명령어를 통해 실행시키면 텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다는데... 라고 뜬다. 우선 setuid가 있는 파일을 찾아보자. [level2@ftz level2]$ find / -perm -4000 -user level3 2> /dev/null/usr/bin/editor 이번엔 editor 라는 파일에 setuid가 걸려있다. 텍스트 파일 '편집' 중 이라고 했으니 이 파일이 맞는 것 같다. [level2@ftz bin]$ cd /usr/bin[level2@ftz bin]$ ./editor editor를 실행시키면 vim에 관한게 뜬다.이 때 :!/bin/bash 명령어..
id = level1 pw = level1 level1 문제의 파일들과 권한을 보면 hint 라는 파일이 있다.hint가 있을 것 같다. hint파일을 실행시켜 보면 level2 권한에 setuid가 걸린 파일을 찾는다. 라고 써있다. find 명령어를 통해 찾아보자 [level1@ftz level1]$ find / -perm -4000find: /lost+found: Permission deniedfind: /boot/lost+found: Permission deniedfind: /proc/1/fd: Permission deniedfind: /proc/2/fd: Permission deniedfind: /proc/3/fd: Permission deniedfind: /proc/4/fd: Permissio..
- Total
- Today
- Yesterday
- Python
- 웹해킹
- 워게임
- webhacking.kr
- 0xdeadbeef
- C
- ubuntu
- 설치
- ftz
- MySQL
- BOF
- c언어
- my-pass
- Lord of SQL Injection
- lord of sqlinjection
- 파이썬
- cobolt
- lob
- java
- wargame
- wargame.kr
- Los
- 우분투
- pwnable.kr
- 자바
- attackme
- 1번
- pwnable
- WebHacking
- 명령어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |