System/FTZ 29

FTZ. 10

level10 // interesting to hack! 대화방에서 대화를 하고있는데 그 대화방은 공유메모리를 이용! key_t -> 7530 , 도청하기 한번 여러모로 시도를 해보자. 사용자 정보와 , telnet등등 여러가지를 시도해봤는데 아닌 것 같다.. 진짜 그냥 삽질 공유메모리에 대해 검색해보니 보기쉽게 정리해놓은 자료가있었다. ( https://geundi.tistory.com/52 ) 이번 문제에서는 공유메모리와 관련있는 함수를 이용하여 소스를짜서 푸는 문제이다. shmget, shmat을 이용하여 이 문제에 해답을 찾을 수 있었다. 공유메모리의 저장되어 있는 내용을 보려면 shmget 함수를 이용해 대화방의 키값을 넣어 공유메모리 식별자를 반환받고 반환 받은 공유메모리 식별자를 이용해 sh..

System/FTZ 2019.09.06

FTZ. 9

level9 // apple bof (buffer overflow)문제이다. 저 조건에 충족하게 입력값을 쌓아주면 된다. 메모리 구조상 buf2, buf 순으로 변수가 쌓이게 된다. 하지만 입력은 buf만 받는다..? 일단 구조는 이렇다. 음 구조상 A*10 , go 해줘서 buf2에 씌워줬는데 안된닷 (별에별 시도를 했지만 안됨) gdb로 분석하려고 했는데.. ㅠㅠㅠ 슬프군 하지만 그렇다면 다른 방법을 ! 소스코드 복사해서 /tmp에 만들고 컴파일후 분석하기로했다. 난 인텔 문법이 좋으니까 설정한후 까보았다. 핵심은 뭐다? 필요한것만 빠르게 후후훅 보는거다. 보니 sub esp, 0x28을 통해 40바이트 만큼 확보를 해준다. 그뒤로 쭉쭉 보니 buf2와 buf를 할당해 주는게 보이는데 lea eax,..

System/FTZ 2019.09.06

FTZ. 8

level8 // break the world 그렇다면 파일크기를 이용한 검색을 해보자! (참고 : https://hack-cracker.tistory.com/70) 4개의 파일이 나왔어여>< txt를 먼저 읽어볼까요 요런식으로 되어있다. (shadow 파일의 구조 : http://blog.naver.com/PostView.nhn?blogId=koromoon&logNo=220611830118) 참고를 통해 salt등 암호화 되어있는 password 값을 John the ripper 를 윈도우환경에서 설치해 돌려보았습니다. 첨에 뭔가 많아서 실패 한건가 그랫는데 영롱하게 보이는 저 "apple" (level9) 이게 정답이네요 ㅎㅎ

System/FTZ 2019.09.05

FTZ. 7

level 7 // come together 힌트는 다음과 같다. 1번을 보자마자 떠오르는 등잔밑이 어둡다. 일단 해보자 응 틀렸어~ 일단 상상력을 동원하기 위해선 삽질을 겁나해야하는 판국이다. 인덱스를 봐보니 요런 정보도 있고 잘 생각만 하면 정말 쉽나보다 의심스러웠던 cat: /bin/wrong.txt: No such file or directory... 역시나 뭔가 나사가 빠진거였어 이게 필요했다. (만들어줬음) 아까 힌트를 이용해 이것을 해석해보면 ( - : 1, _ : 0 ) 이렇게 해석해 볼 수 있었다. 1101101 1100001 1110100 1100101 109 / 97 / 116 / 101 이렇게 10진수가 나왔다. 필이오는 아스키코드 m / a / t / e 음 .. wrong.txt..

System/FTZ 2019.09.05

FTZ. 6

level6 // what the hell 접속하자 마자 이런 창이 뜬다. 다른 명령어를 입력하면 로그아웃되는 그런..(xshell로 접속해서 그런가) 결국엔 enter! 1,2,3 모두 입력해도 시도중이고 안된다. 할 수 있는 방법중 시도중 중단을 해 보았다.(Ctrl+C) 역시나 안됨. bbs를 선택할때 Ctrl+C를 입력하니 무슨 문구가 나온다 음 이걸 이용하는 건가? 여기서도 뭐가 없는것 같은데 차근차근 초심으로 초반에 Ctrl+C를 하니 드디어 level6 에 정상적으로 로그인이 되었다. (초반부터 삽질잼) 하지만 초반이 아니라 결말이였다는 식스센스급 반전 정답은 come together!

System/FTZ 2019.09.05

FTZ. 5

level 5 // what is your name? (Race Condition) Race Condition 한정된 자원을 동시에 이용하려는 여러 프로세스가 자원의 이용을 위해 경쟁을 벌이는 현상 Race Condition의 공격의 기본 취약 프로그램이 생성하는 임시 파일의 이름을 파악 생성될 임시 파일과 같은 이름의 파일을 생성 이에 대한 심볼릭 링크를 생성 원본 파일을 지운 채 위약 프로그램이 심볼릭 링크를 건 파일과 같은 파일을 생성할 때를 기다린다. 생성되었을 때, 심볼릭 링크를 이용해 파일 내용을 변경 시스템은 변경된 파일을 자신이 생성한 임시 파일로 생성하고 프로세스를 진행시킬 것이고, 공격자는 관리자 권한으로 실행되는 프로그램에 끼어들어 무언가를 할 수 있는 여지를 만든다. 심볼릭 링크 /..

System/FTZ 2019.09.05

FTZ. 4

level4 // suck my brain 흐음 힌트를 읽어봤는데 backdoor가 심어져있다고함. SetUID가 걸려있는 파일을 찾아봤는데도 아무런 정보가 나오지 않는 것을 보니 이 것만을 가지고 푸는 것 같다. 디렉토리에 들어가 보니 backdoor라는 파일이 존재한다. backdoor 파일을 읽기는 가능해서 읽어보니 // backdoor service finger //서비스 이름, /etc/services 파일에 등록된 이름과 같아야 함 { disable = no //xinetd의 제어를 받을 것인가를 경정 Yes-제어 안받어!! No-제어 해줘 flags = REUSE socket_type = stream //사용하는 TCP/IP소켓 stream(TCP), dgram(TCP) wait =no //..

System/FTZ 2019.09.05

FTZ. 3

level3 // can you fly? 시작에 앞서 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 ); } ※ dig라는 명령어가 나오는데 처음본다. 검색해본 결과 nslookup을 생각해보라고 한다. 그렇가..

System/FTZ 2019.09.05

FTZ. 2

level2 // hacker or cracker 한번 level2를 풀어볼까~ hint 를 보니 편집 중 쉘의 명령을 실행시킬 수 있다던데...? 이건 뭔소리지 일단 level3 SetUID를 가지는 파일을 찾아보자~ 힌트와 부합되는 파일이군~ 확실히 오류를 제거해주니 편합니다. level3의 SetUID를 가지는 파일이네 gid가 level2면 실행할수있고 그럼 해보자. 흠 헬프치고 이것저것 해보고 insert 해서 $bash, $my-pass 별에 별짓해도 감이안온다... 삽질만 겁나하다가 .. 구글형님한테 물어보는게 좋겠다고 생각이 들었다 ( 출처 : https://www.joinc.co.kr/w/Site/Vim/Documents/Tip/ExternalCommand ) 오호.. 이런 기능이 있다니..

System/FTZ 2019.09.05

FTZ. 1

level1 // level1 SetUID level2를 찾아서 떠난다. find / -user level2 -perm -4000 2> /dev/null /bin/ExecuteMe 라는 것을 찾아냄! 실행하니 크흠.. my-pass는 안된대 뭐하지.. 하다가 리눅스 명령어 잘 모르니까 help도 쳐보다가 무언가 도움이 될만한게 안떠올라! 그러는 도중 아 내가 있는 디렉토리안이 bin 이 였다는걸 깨달음! 여기에는 기본적인 실행파일이 있었지?~? 예전에 LOB를 푼적이있는데 bash가 눈에 들어오는군..ㅎ (출처 : https://www.fun-coding.org/linux_basic2.html) 아하! 그렇다면 명령어를 입력할수 있게 bash를 실행해보자 >

System/FTZ 2019.09.05