
HackerSchool FTZ Level10 WriteUp
2022. 7. 7. 17:58
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 10 WriteUp 두 명의 사용자가 대화방을 이용하여 비밀스러운 대화를 나누고 있다. 그 대화방은 공유 메모리를 이용하여 만들어졌으며, key_t의 값은 7530이다. 이를 이용해 두 사람의 대화를 도청하여 level11의 권한을 얻어라. - 레벨을 완료하셨다면 소스는 지우고 나가주세요. IPC 자원 목록(공유 메모리, 세마포어, 메시지 큐)을 조회하는 icps 명령어를 사용해보자. 0x00001d6a(16) = 7530(10) key가 7530인 공유 메모리가 있는 것을 확인할 수 있다. 이제 /tmp 디렉토리에서 정보를 이용해 코드를 작성하고 컴파일해보자. #include #include #include main() { int i; char *j; i = s..

HackerSchool FTZ Level9 WriteUp
2022. 7. 7. 17:58
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 9 WriteUp 다음은 /usr/bin/bof의 소스이다. 이를 이용하여 level10의 권한을 얻어라. 코드를 보니 bof 파일은 BOF(버퍼오버플로우) 취약점이 존재한다. buf 크기보다 크게 입력을 받을 수 있기 때문에 BoF를 통해 if문을 실행시키면 권한을 얻는 코드인 것 같다. AAAAAAAAAAgo를 입력해보자. 실패했다. buf와 buf2에 메모리 주소 거리를 알기위해서 코드를 컴파일 후 gdb를 사용해보자. fget 인자인 buf[ebp-40]와 strncmp 인자인 buf2[ebp-24]를 보면 메모리 거리가 16byte 만큼 차이가 난다. 그렇기 때문에 아까 위에서 AAAAAAAAAAgo를 했을 때도 성공하지 않았던것이다. AAAAAAAAAA..

HackerSchool FTZ Level8 WriteUp
2022. 7. 7. 17:57
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 8 WriteUp level9의 shadow 파일이 서버 어딘가에 숨어있다. 그 파일에 대해 알려진 것은 용량이 "2700"이라는 것뿐이다. find 명령어로 용량이 2700바이트인 파일을 찾아보자. found.txt 파일을 열어보자. 이게 힌트에서 말한 쉐도우 파일인가 보다. [vi /etc/shadow 구조] level9:$1$vkY6sSlG$6RyUXtNMEVGsfY7Xf0wps.:11040:0:99999:7:-1:-1:134549524 |-–1–|———————————–2——––––––––––-|—3—|4|—5–|-6-|-7-|-8-|–––9––| 1. Login Name : 사용자 계정각 항목별 구분은 :(콜론)으로 구분되어있으며 콜론과 콜론 사이 각 필드..

HackerSchool FTZ Level7 WriteUp
2022. 7. 7. 17:57
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 7 WriteUp /bin/level7 명령을 실행하면, 패스워드 입력을 요청한다. 1. 패스워드는 가까운곳에.. 2. 상상력을 총동원하라. 3. 2진수를 10진수를 바꿀 수 있는가? 4. 계산기 설정을 공학용으로 바꾸어라. level7 파일을 실행해보자. wrong.txt 파일이 없다고 뜬다. 이 오류는 개인이 FTZ 서버를 열어서 하는 경우 생긴다고 한다. root 계정으로 접속해서 wrong.txt를 만들어줘야 한다고 한다. root 계정으로 접속 후 wrong.txt를 만들자. 그리고 root 계정에서 나와서 level7 파일을 다시 실행해보자. 제대로 출력되는 것을 확인할 수 있다. 2진수를 10진수로 바꿀 수 있는가라는 힌트를 보니깐 wrong.txt는..

HackerSchool FTZ Level6 WriteUp
2022. 7. 7. 17:56
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 6 WriteUp hint - 인포샵 bbs의 텔넷 접속 메뉴에서 많이 사용되던 해킹 방법이다. 로그인하자마자 힌트가 나와서 엔터를 눌러보았다. ##################################### ## ## ## 텔넷 접속 서비스 ## ## ## ## ## ## 1. 하이텔 2. 나우누리 ## ## 3. 천리안 ## ## ## ##################################### 접속하고 싶은 bbs를 선택하세요 : 모든 번호를 입력해봤지만 똑같이 접속이 끊긴다. 그래서 번호가 아닌 종료 시그널을 보냈지만 접속이 끊겼다. 메뉴가 나오기 전 힌트가 출력될 때 종료 시그널을 보내보자. 접속이 끊기지않았다. ls 명령어를 입력해보자. 여러..

HackerSchool FTZ Level5 WriteUp
2022. 7. 7. 17:13
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 5 WriteUp /usr/bin/level5 프로그램은 /tmp 디렉토리에 level 5.tmp라는 이름의 임시파일을 생성한다. 이를 이용하여 level6의 권한을 얻어라. ls 명령어로 level5 파일을 확인한 결과는 level5 파일을 실행하는 중에는 level6에 권한을 가진다. 힌트를 보고 level5 파일을 실행 후 /tmp 디렉토리를 확인해봤지만 임시파일이 없다. 아마도 바로 삭제된 것 같다. 심볼릭 링크를 이용해서 삭제되기 전 내용을 다른 파일에 저장해보자. 다시 level5 파일을 실행해보자. 그리고 다시 /tmp 디렉토리를 확인해봤지만 임시파일은 없다. 심볼릭 링크를 걸어둔 pw 파일을 열어보자. 비밀번호를 알아냈으니 로그인해보자. level6..

HackerSchool FTZ Level3 WriteUp
2022. 7. 7. 17:13
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 3 WriteUp 다음 코드는 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 ); /* # dig @168.126.63.1 version.bind chaos txt */ } 이를 이용하여 ..

HackerSchool FTZ Level2 WriteUp
2022. 7. 7. 17:13
𝙋𝙬𝙣𝙖𝙗𝙡𝙚 💻/HackerSchool FTZ WriteUp
HackerSchool FTZ Level 2 WriteUp 텍스트 파일 편집 중 쉘의 명령을 실행시킬 수 있다는데... find 명령어로 level3로 setuid 걸린 파일을 찾아보자. 실행해보자. vi 에디터가 실행되었다. 종료하지 않고(!) 쉘 명령어를 입력해보자. level3 권한으로 쉘에 들어왔다. my-pass 명령어로 비밀번호를 알아내자. 비밀번호를 알아냈으니 로그인해보자. level3에 로그인되었다.