반응형

Security&Hacking/시스템 해킹 35

해커스쿨 ftz level15 (macOS)

해커스쿨 ftz Level15 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level15 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level15@서버ip 라고 입력합니다. Id: level15, pw: guess what 으로 로그인하여 파일을 확인하였다. hint를 확인하니 이번엔 check가 주소값을 입력받도록 되어있다. gdb로 가서 0xdeadbeef가 존재하는 곳을 찾아보았다. 값들 사이에 beef와 dead가 나뉘어 숨어있는 것을 볼 수 있다. 0x80484b2 주소에 0xdeadbeef 값이 들어 있는 것을 알 수 있다. (python -..

해커스쿨 ftz level14 (macOS)

해커스쿨 ftz Level14 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level14 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level14@서버ip 라고 입력합니다. Id: level14, pw: what that nigga want? 로 로그인을 하고 파일을 확인하였다. hint 를 확인하니 이번엔 check 값이 0xdeadbeef가 되어야 함을 알 수 있었다. gdb를 통해 보면 buf 20바이트, dummy 20바이트 후에 check값 4바이트가 나오는 것을 확인하였다. (python -c 'print "A"*40+"\xef\xbe\xad..

해커스쿨 ftz level13 (macOS)

해커스쿨 ftz Level13 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level13 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level13@서버ip 라고 입력합니다. Id: level13, pw: have no clue 로 로그인하여 파일을 확인하였다. hint를 확인하니 소스코드가 나왔고 코드를 살펴보니 i의 값이 0x1234567로 잘 덮어주면 될 것 같다. gdb를 통해 attackme 프로그램을 보기로 했다. main함수의 구조를 확인하였다. buf 배열과 dummy부분을 아무값이나 채우고 i는 01234567로 채우고 다시 dummy값고..

해커스쿨 ftz level12 (macOS)

해커스쿨 ftz Level13 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level13 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level13@서버ip 라고 입력합니다. Id: level12, pw: it is like this 로 로그인을 한 후 파일을 살펴보았다. Hint의 내용을 살펴보았다. gets 함수를 통해 입력을 받는데 ret 값에 쉘코드의 주소를 입력시키면 될 것 같다. 우선 쉘코드를 작성하였다. tmp 디렉토리에서 $export EGG=`python -c 'print "\x90"*15+"\x31\xc0\x50\x68\x2f\x2f\x..

해커스쿨 ftz level11 (macOS)

해커스쿨 ftz Level11 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level11 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level11@서버ip 라고 입력합니다. Id: level11, pw: what!@#$? 로 로그인하였다. ls -al 명령어를 통해 파일들을 확인해보니 이전과 다르게 attackme라는 파일이 보이는 것을 알 수 있다. hint를 확인하니 소스코드가 나왔다. attackme의 소스코드인 것 같다. 버퍼오버플로우를 이용한 문제로 보인다. gdb를 통해 디버깅을 해보기로 했다. Main함수를 살펴보면 main+41 부분에서 ..

해커스쿨 ftz level10 (macOS)

해커스쿨 ftz Level10 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level10 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level10@서버ip 라고 입력합니다. Id: level10, pw: interesting to hack! 으로 로그인하고 파일을 확인하였다. cat hint 명령어를 통해 hint 를 확인하니 공유 메모리를 이용하는 것 같다. tmp 디렉토리로 이동하여 소스를 작성하였다. shmget 함수를 통해 공유메모리를 생성하고 shmat 함수를 통해 공유 메모리에 연결하였다. 마지막엔 변수를 출력하도록 하였다. 해당 소스파일을 ..

해커스쿨 ftz level9 (macOS)

해커스쿨 ftz Level9 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level9 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level9@서버ip 라고 입력합니다. Id: level9, pw: apple 을 입력하여 로그인 하고 파일들을 확인하였다. Hint를 확인해보니 if문의 조건을 만족시키면 /bin/bash가 실행되어 쉘을 얻을 수 있을 것 같다. bof 프로그램을 실행시켰더니 사용자의 입력을 받는다. buf2 와 buf가 이어서 선언되었고 buf의 값은 상관없이 buf2가 go로 덮이면 되기 때문에 ‘go’를 연달아 써서 입력하였다. 그랬더..

해커스쿨 ftz level8 (macOS)

해커스쿨 ftz Level8 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level8 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level8@서버ip 라고 입력합니다. Id: level8, pw: break the world 로 로그인하고 파일을 확인하였다. Hint를 확인하니 shadow파일이 숨어있다고 한다. 용량이 2700임을 가지고 찾아야겠다. Find 명령어의 옵션을 확인하였다. 그중 용량이 2700임을 이용해야 하기 때문에 -size라는 옵션이 눈에 띈다. find / -size 2700c 명령어를 입력하여 출력된 결과를 살펴보았다. 그중 /..

해커스쿨 ftz level7 (macOS)

해커스쿨 ftz Level7 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level7 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level7@서버ip 라고 입력합니다. Id: level7, pw: come together 로 로그인하여 파일들을 확인하였다. Hint의 내용을 확인해보니 level7 프로그램을 실행하여 알맞은 패스워드를 입력하면 되는 것 같다. level7 프로그램을 실행하여 아무 값이나 넣어보았다. 그런데 오류가 나는 것을 볼 수 있다. 당황스러워 찾다보니 개인이 ftz서버를 열어서 하는 경우 파일이 만들어져있지 않아 생기는 문제라고 한..

해커스쿨 ftz level6 (macOS)

해커스쿨 ftz Level6 MacOS에서 푸는 해커스쿨 ftz 해커스쿨 ftz level6 단계이다. 먼저 ftz서버를 실행한다. 서버 실행을 모르면 ftz trainer1 단계에 소개되어 있다. Mac의 터미널을 열어 서버에 접속합니다. 명령어는 ssh -c aes128-cbc level6@서버ip 라고 입력합니다. Id: level6, pw: what the hell 로 로그인 하였다. 로그인했더니 바로 hint가 출력되며 텔넷 접속 서비스가 나왔다. 1번, 2번, 3번 모두 시도해 보았지만 반응이 없다. Hint 만 나온 상황에서 엔터를 눌러 넘어가지 않고 ctrl+c 를 누르니 바로 쉘이 나온다. ls- al 명령어를 이용해 파일들을 보니 password라는 파일이 눈에 띈다. Cat 명령어를 ..

반응형